@charset "utf-8";
/* CSS Document */

/*-- Fonts --*/
@import url("https://p.typekit.net/p.css?s=1&k=nsk3oym&ht=tk&f=53549.53556.53557.53560.53564&a=32259024&app=typekit&e=css");

@font-face {
    font-family: "tt-commons-pro";
    src: url("https://use.typekit.net/af/0ea6ed/00000000000000007756f630/31/l?primer=7fa3915bdafdf03041871920a205bef951d72bf64dd4c4460fb992e3ecc3a862&fvd=n6&v=3") format("woff2"), url("https://use.typekit.net/af/0ea6ed/00000000000000007756f630/31/d?primer=7fa3915bdafdf03041871920a205bef951d72bf64dd4c4460fb992e3ecc3a862&fvd=n6&v=3") format("woff"), url("https://use.typekit.net/af/0ea6ed/00000000000000007756f630/31/a?primer=7fa3915bdafdf03041871920a205bef951d72bf64dd4c4460fb992e3ecc3a862&fvd=n6&v=3") format("opentype");
    font-display: auto;
    font-style: normal;
    font-weight: 600;
    font-stretch: normal;
}

@font-face {
    font-family: "tt-commons-pro";
    src: url("https://use.typekit.net/af/4cddf5/00000000000000007756f626/31/l?primer=7fa3915bdafdf03041871920a205bef951d72bf64dd4c4460fb992e3ecc3a862&fvd=n7&v=3") format("woff2"), url("https://use.typekit.net/af/4cddf5/00000000000000007756f626/31/d?primer=7fa3915bdafdf03041871920a205bef951d72bf64dd4c4460fb992e3ecc3a862&fvd=n7&v=3") format("woff"), url("https://use.typekit.net/af/4cddf5/00000000000000007756f626/31/a?primer=7fa3915bdafdf03041871920a205bef951d72bf64dd4c4460fb992e3ecc3a862&fvd=n7&v=3") format("opentype");
    font-display: auto;
    font-style: normal;
    font-weight: 700;
    font-stretch: normal;
}

@font-face {
    font-family: "tt-commons-pro";
    src: url("https://use.typekit.net/af/3e8806/00000000000000007756f61b/31/l?primer=7fa3915bdafdf03041871920a205bef951d72bf64dd4c4460fb992e3ecc3a862&fvd=n3&v=3") format("woff2"), url("https://use.typekit.net/af/3e8806/00000000000000007756f61b/31/d?primer=7fa3915bdafdf03041871920a205bef951d72bf64dd4c4460fb992e3ecc3a862&fvd=n3&v=3") format("woff"), url("https://use.typekit.net/af/3e8806/00000000000000007756f61b/31/a?primer=7fa3915bdafdf03041871920a205bef951d72bf64dd4c4460fb992e3ecc3a862&fvd=n3&v=3") format("opentype");
    font-display: auto;
    font-style: normal;
    font-weight: 300;
    font-stretch: normal;
}

@font-face {
    font-family: "tt-commons-pro";
    src: url("https://use.typekit.net/af/9b2db7/00000000000000007756f631/31/l?primer=7fa3915bdafdf03041871920a205bef951d72bf64dd4c4460fb992e3ecc3a862&fvd=n4&v=3") format("woff2"), url("https://use.typekit.net/af/9b2db7/00000000000000007756f631/31/d?primer=7fa3915bdafdf03041871920a205bef951d72bf64dd4c4460fb992e3ecc3a862&fvd=n4&v=3") format("woff"), url("https://use.typekit.net/af/9b2db7/00000000000000007756f631/31/a?primer=7fa3915bdafdf03041871920a205bef951d72bf64dd4c4460fb992e3ecc3a862&fvd=n4&v=3") format("opentype");
    font-display: auto;
    font-style: normal;
    font-weight: 400;
    font-stretch: normal;
}

@font-face {
    font-family: "tt-commons-pro";
    src: url("https://use.typekit.net/af/55331a/00000000000000007756f62a/31/l?primer=7fa3915bdafdf03041871920a205bef951d72bf64dd4c4460fb992e3ecc3a862&fvd=n2&v=3") format("woff2"), url("https://use.typekit.net/af/55331a/00000000000000007756f62a/31/d?primer=7fa3915bdafdf03041871920a205bef951d72bf64dd4c4460fb992e3ecc3a862&fvd=n2&v=3") format("woff"), url("https://use.typekit.net/af/55331a/00000000000000007756f62a/31/a?primer=7fa3915bdafdf03041871920a205bef951d72bf64dd4c4460fb992e3ecc3a862&fvd=n2&v=3") format("opentype");
    font-display: auto;
    font-style: normal;
    font-weight: 200;
    font-stretch: normal;
}

/*=== Variables ===*/
:root {
    /*-- Colors --*/
    --blue: #1500ff;
    --pink: #ff3856;
}


/*=== General ===*/
html {
    overflow-x: hidden !important;
}

body {
    background-color: #e3e7e4;
    font-size: 16px;
    line-height: 26px;
    font-weight: 300;
    line-height: 20px;
    font-family: "tt-commons-pro";
    transition: opacity .3s ease;
}

p {
    margin-bottom: 0;
}

strong {
    font-weight: 600;
}

a {
    text-decoration: none;
    transition: all .3s ease;
}

a:hover {
    color: inherit;
}

:focus {
    outline: none;
    border: none;
}

img {
    max-width: 100%;
    height: auto;
}

img.aligncenter {
    margin: 0 auto;
    display: block;
}

img.alignleft,
figure.alignleft {
    margin: 0 30px 30px 0;
    float: left;
}

img.alignright,
figure.alignright {
    margin: 0 0 30px 30px;
    float: right;
}

img.position-absolute {
    max-width: none;
}

ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 700;
}

h1 {
    font-size: 50px;
    line-height: 60px;
}

h2 {
    font-size: 36px;
    line-height: 46px;
}

h3 {
    font-size: 22px;
    line-height: 32px;
}

h4 {
    font-size: 20px;
    line-height: 30px;
}

.modal-body,
.modal-header {
    padding: 20px 40px !important;
}

.modal {
    --bs-modal-width: 800px;
    padding: 0 !important;
}

/* --- Navbar Personalizada --- */
.fixed-top .navbar-brand img {
    width: 182px;
}

.navbar {
    /* Fundo escuro e semi-transparente com um leve desfoque */
    background-color: rgba(10, 10, 10, 0.4) !important;
    backdrop-filter: blur(3px);
}

.fixed-top nav {
    padding: 40px 0px 20px;
}

.fixed-top nav .navbar-nav {
    gap: 50px;
}

.navbar-brand {
    letter-spacing: 0.5px;
}

.fixed-top .nav .nav-link,
.navbar-expand-lg .navbar-nav .nav-link {
    font-weight: 200;
    padding: 0 !important;
    color: #fff;
}

.nav-link.active,
.nav-link:hover {
    border-bottom: 1px solid #fff;
}

.hero-section .container {
    position: relative;
}

.hero-section img {
    width: 100%;
}

.hero-section .text {
    position: absolute;
    bottom: 70px;
    left: 100px;
}

.hero-section .text h1.home br {
    display: none;
}

.hero-section .text h1 {
    color: #ffffff;
    font-size: 50px;
    line-height: 60px;
    font-weight: 700;
}

/* --- Seção Flip Cards --- */
.flip-section {
    color: white;
}

.flip-card {
    background-color: transparent;
    width: 100%;
    height: 65vh;
    min-height: 450px;
    perspective: 1500px;
    /* Efeito 3D */
    cursor: pointer;
    /* Mostra que é interativo */
}

.flip-color {
    position: relative;
    background-color: #00cfc3;
    width: 100%;
    height: 500px;
}

.flip-card-inner {
    position: relative;
    width: 100%;
    height: 80%;
    transition: transform 0.7s ease-in-out;
    transform-style: preserve-3d;
    background-color: #00cfc3;
}

/* Remove o :hover antigo e aplica via classe */
.flip-card.is-flipped .flip-card-inner {
    transform: rotateX(180deg);
}

.flip-card-front,
.flip-card-back {
    position: absolute;
    width: 100%;
    height: 100%;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

/* Face de trás */
.flip-card-back {
    transform: rotateX(180deg);
}

/* .flip-card-front {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
}

 */

.card-content h2 {
    margin-bottom: 20px;
}

.card-content p {
    color: #000;
}

.card-arrow {
    font-size: 3rem;
    /* Seta grande */
    margin-top: 2rem;
}

/* .flip-card-back {
    transform: rotateX(180deg);
    background-color: #222;
} */
.card-content-new {
    position: absolute;
    top: 0;
    max-width: 500px;
    color: #fff;
    padding: 100px 100px 0 0;
    right: 0;
}
.item.flex-2 .card-content-new {
    padding: 100px 0px 0 100px;
    left: 0;
    right: unset;
}
.back-image {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    /* Um leve overlay escuro para garantir que o texto (se houver) seja legível */
    display: flex;
    align-items: center;
    justify-content: center;
    background-blend-mode: multiply;
    background-color: rgba(0, 0, 0, 0.2);
}

.flip-section .grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
}

.item .flip-card-front {
    display: flex;
}

.item.flex-1 .flip-card-front {
    justify-content: end;
}

.flip-card-front .card-content {
    padding: 100px 100px 0 0;
    max-width: 500px;
}

.item.flex-2 .flip-card-front .card-content {
    padding: 100px 0px 0 100px;
    max-width: 500px;
}

.flip-card-front .card-content i img {
    width: 35px;
    margin-top: 20px;
}

.companies {
    margin-top: -60px;
}

.companies .title h2 {
    font-weight: 300;
}

.companies .flex {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    align-items: center;
    padding-top: 30px;
    text-align: center;
}

.companies .flex img {
    width: 50%;
    text-align: center;
}

.copyrighted-content .grid .item .capa img {
    width: 100%;
}

.copyrighted-content .grid {
    text-align: center;
    padding: 50px 0 0;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 20px;
}

.copyrighted-content .grid .item .icon img {
    width: 63px;
    margin-bottom: 30px;
}

.copyrighted-content {
    padding: 70px 0 0;
}

.copyrighted-content .title h2 {
    font-weight: 300;
}

.newsletter-section {
    padding: 20px 0 0;
}

.newsletter-section .form-col {
    margin-top: 60px;
}

.newsletter-box {
    border: 2px solid #000000;
    /* Borda escura */
    padding: 50px;
}

.newsletter-section h2 {
    font-weight: 300;
}

.newsletter-section .bt-form {
    background-color: #000;
    padding: 14px 90px;
    color: #fff;
    border: none;
    border-radius: 30px;
    margin-top: 20px;
}

.form-control.newsletter-input {
    border-radius: 0;
    /* Borda padrão Bootstrap */
    border: 2px solid #000000;
    /* Borda escura como na imagem */
    padding: 0.75rem 1rem;
    background-color: transparent;
    /* Fundo transparente */
}

.form-control.newsletter-input:focus {
    box-shadow: none;
    /* Remove brilho de foco */
    border-color: #000;
    background-color: #fff;
    /* Fundo branco no foco */
}

.form-control.newsletter-input::placeholder {
    color: #0000009f;
    /* Cor do placeholder */
}

.disclaimer-text {
    font-size: 0.8rem;
    color: #000000;
    margin-top: -10px;
    margin-bottom: 0;
}

.testimonials {
    overflow: hidden;
    padding-top: 50px;
}

.testimonials .title h2 {
    font-weight: 300;
    margin-bottom: 30px;
}

.testimonials .content .list {
    position: relative;
    background: #fff;
}

.testimonials .content .list .item img {
    position: absolute;
    left: 0px;
    width: 40px;
    top: 30px;
}

.testimonials .content .list .item p {
    margin: 50px 20px 50px 50px;
}

.testimonials .content .list::before {
    content: '';
    position: absolute;
    background-color: #ffffff;
    width: 100%;
    height: 100%;
    top: 0;
    right: 100%;
}

.testimonials .text {
    position: relative;
    display: flex;
    align-items: end;
    background: #7fe7e0;
}

.testimonials .content .text::before {
    content: '';
    position: absolute;
    background-color: #7fe7e0;
    width: 100%;
    height: 100%;
    top: 0;
    right: -100%;
}

.testimonials .text h2 {
    font-weight: 300;
    margin-bottom: 50px;
    padding-left: 70px;
}

.ibeac {
    display: grid;
    gap: 80px;
    align-items: end;
    grid-template-columns: 60% 1fr;
}

.ibeac img {
    height: 261px;
}

.ibeac .text {
    padding-bottom: 90px;
}

.ibeac .text h2 {
    font-weight: 300;
    margin-bottom: 20px;
}

footer {
    padding: 90px 0 50px;
    background: #282828;
}

footer .bg img {
    max-width: 631px;
    margin-bottom: 50px;
}

footer .bg p {
    color: #e6e6db;
    font-size: 13px;
}

footer .menu {
    display: flex;
    align-items: center;
    justify-content: center;
}

footer .menu li {
    margin-bottom: 20px;
}

footer .menu li a {
    color: #e6e6db;
}

footer .logo {
    display: flex;
    justify-content: end;
}

footer .logo img {
    width: 290px;
    margin-bottom: 63px;
}

footer .social {
    display: flex;
    justify-content: end;
    gap: 20px;
}

footer .social img {
    width: 35px;
}

footer .address {
    color: #e6e6db;
    text-align: right;
    margin-top: 20px;
}

footer .address p {
    margin-bottom: 20px;
}

.about {
    padding: 50px 0 90px;
}

.about .title h2 {
    font-weight: 300;
    margin: 0;
}

.about .row {
    margin-top: 50px;
    text-align: center;
}

.about .row a .icon {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 140px;
}

.about .row a .icon img {
    width: 115px;
}

.about .row a {
    color: #000;
}

.biography .photo {
    display: flex;
    gap: 90px;
}

.biography .photo h2 {
    font-weight: 300;
    position: relative;
}

.biography .photo h2:before {
    content: '';
    position: absolute;
    width: 150px;
    height: 150px;
    background: #00cfc3;
    border-radius: 50%;
    bottom: 0;
    left: -60px;
}

.biography .grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
}

.biography .text p {
    margin-bottom: 20px;
}

.biography .text {
    padding-left: 120px;
}

.team {
    padding: 90px 0 50px;
}

.team .row {
    max-width: 900px;
    margin: 0 auto;
}

.team .flex {
    margin-top: 20px;
    display: flex;
    align-items: end;
    gap: 50px;
}

.team .flex .social {
    display: flex;
    gap: 10px;
}

.team .flex .name h3 {
    font-weight: 300;
}

.team .flex .social img {
    width: 30px;
}

.team .team-member {
    margin-bottom: 30px;
    cursor: pointer;
}

.aspas {
    position: relative;
    padding: 90px 0;
    background-color: #f69f19;
    text-align: center;
}

.aspas h2 {
    position: relative;
    font-weight: 300;
    margin-bottom: 30px;
}

.aspas h2::before {
    content: '';
    position: absolute;
    background-image: url(../img/aspas-curadoria-1@2x.png);
    width: 100px;
    background-size: 100px;
    height: 90px;
    top: -50px;
    background-repeat: no-repeat;
    margin-left: -140px;
}

.aspas h2::after {
    content: '';
    position: absolute;
    background-image: url(../img/aspas-curadoria-2@2x.png);
    width: 100px;
    background-size: 100px;
    height: 90px;
    bottom: -35px;
    background-repeat: no-repeat;
    margin-left: 25px;
}

.soul .content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: end;
}

.soul .content .text {
    padding: 0px 100px 60px;
}

.soul .content .text h2 {
    font-weight: 300;
    color: #f69f19;
}

.call-conversation {
    background-color: #fff;
    padding: 70px 0;
}

.call-conversation .text.pd {
    padding: 0;
}

.call-conversation p {
    margin-bottom: 20px;
}
.call-conversation p a {
    color: #fff;
}
.call-conversation h2 {
    font-weight: 300;
    margin: 30px 0 0;
}

.call-conversation h3 {
    color: #70d9d2;
    font-weight: 600;
}

.call-conversation .grid .item {
    position: relative;
}

.call-conversation .grid .item .text {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 50px;
    padding: 0 70px;
}

.call-conversation .grid .item.two .text {
    right: unset;
    left: 50px;
}

.call-conversation .grid .item .text h2 {
    font-weight: 600;
    margin: 50px 0 10px;
    color: #fff;
}

.call-conversation .grid .item .text .icon {
    filter: invert(1);
    width: 30px;
}

.call-conversation .grid .ball {
    aspect-ratio: 1 / 1;
    /* mantém o formato circular */
    height: auto;
    background-color: #f59e0b;
    border-radius: 50%;
    flex-shrink: 0;

    /* Faz a bola seguir o tamanho da imagem */
    width: min(270px, 25vw);
    /* limite de tamanho (opcional) */
    align-self: stretch;
    /* acompanha a altura do conteúdo flex */
    background-color: #f69f19;
}

.call-conversation .grid {
    padding-top: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 40px;
}

.text-list {
    background-color: #fff;
    padding: 70px 0;

}

.text-list {
    display: none;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.text-list.active {
    display: block;
    opacity: 1;
}

.grid .item {
    cursor: pointer;
    text-decoration: none;
    color: inherit;
}

.text-list .content {
    padding: 70px;
    background-color: #000;
}

.text-list .content h3 {
    color: #fff;
    margin-bottom: 0px;
}

.accordion-item,
.accordion-button {
    border: unset;
    background: transparent;
}

.accordion-item .accordion-button {
    font-weight: 500;
    padding: 20px 0;
    font-size: 28px;
    line-height: 38px;
    color: #f59e0b;

}

.accordion-button:not(.collapsed) {
    color: #f59e0b;
    background-color: transparent;
    box-shadow: unset;
}

.accordion-body {
    padding: 0;
    color: #fff;
}

.accordion-item button.accordion-button:before {
    display: none;
}

.accordion-item button.accordion-button.collapsed:before {
    content: '';
    position: absolute;
    width: 105%;
    height: 1px;
    background: #fff;
    bottom: 0;
    transform: translateX(-50%);
    left: 50%;
    display: block;
}

.accordion-button:not(.collapsed)::after {
    background-image: url(../img/setinha.png);
    transform: var(--bs-accordion-btn-icon-transform);
}

.accordion-button::after {
    background-image: url(../img/setinha.png);
}

.accordion-button:focus {
    z-index: 0;
    outline: 0;
    box-shadow: unset;
}

.text-content .content {
    padding: 0 70px;
}

.text-content h2 {
    font-weight: 300;
    margin-bottom: 20px;
}

.text-content p {
    margin-bottom: 20px;
}

.text-content h3 {
    color: #f59e0b;
}

.share-experience-section {
    background-color: #ffffff;
    /* Fundo branco padrão */
}

.experience-text-box {
    display: flex;
    padding: 50px 6rem 5rem;
    justify-content: end;
}

.experience-text {
    font-size: 1.75rem;
    font-weight: 500;
    line-height: 1.6;
    color: #333;
    max-width: 500px;
}

.experience-image {
    width: 100%;
    height: auto;
    display: block;
}

.share-form-box {
    background-color: #f76b50;
    /* Cor laranja/vermelha da imagem */
    padding: 50px 6rem 5rem;
    color: white;
    height: 100%;
    /* Garante que ocupe a altura total */
}

.form-intro-text {
    font-weight: 300;
    margin-bottom: 50px;
}

.form-control.form-control-light {
    background-color: transparent;
    border: 1px solid #fff;
    height: 60px;
    border-radius: 0;
    color: #fff;
}

.form-control.form-control-light::placeholder {
    color: #ffd8d1;
    /* Tom de branco/laranja mais claro */
}

.form-control.form-control-light:focus {
    background-color: transparent;
    color: #fff;
    border-color: #fff;
    box-shadow: none;
}

.btn-submit-light {
    color: #fff;
    text-decoration: none;
    font-weight: 500;
    padding-right: 0;
    /* Alinha à direita */
    background: none;
    border: none;
    font-size: 20px;
}

.btn-submit-light:hover {
    color: #fff;
    text-decoration: underline;
}

.share-experience-section .container-fluid {
    padding: 0;
}

.share-experience-section .container-fluid img {
    width: 100%;
}

.share-experience-section textarea.form-control {
    min-height: 350px;
}

.location-about {
    overflow: hidden;
    background: #ffffff;
}

.location-about .row {
    align-items: center;
}

.location.hero-section .text h1 {
    position: relative;
    font-weight: 300;
}

.location.hero-section .text h1.hero-text.ball br {
    display: none;
}

.location.hero-section .text {
    display: flex;
    gap: 20px;
    align-items: center;
    width: 100%;
}

.location.hero-section .text .tarja {
    background: #ffffff;
    width: 410px;
    height: 40px;
}

.location.hero-section .text h1.ball:before {
    content: '';
    position: absolute;
    width: 60px;
    height: 60px;
    background: #7cf2eb;
    border-radius: 50%;
    left: -80px;
}

.location-about .bg {
    position: relative;
    background-color: #7cf2eb;
}

.location-about .bg::before {
    content: '';
    position: absolute;
    background-color: #7cf2eb;
    width: 100%;
    height: 100%;
    top: 0;
    right: -100%;
}

.location-about .text {
    display: flex;
    align-items: center;
    padding-left: 110px;
}

.location-about .text h2 {
    font-weight: 500;
    color: #004551;
}

.location-about .text-two p {
    margin-bottom: 20px;
}

.location-about .text-two {
    padding: 50px 0px 10px 120px;
}

.format {
    padding: 70px 0;
}

.format .title h2 {
    font-weight: 300;
    margin-bottom: 0;

}

.format .title a {
    color: #000;
}

.format .title .tag,
.contact-social .tag {
    display: flex;
    gap: 15px;
    align-items: center;
    margin: 20px 0 30px;
}

.format .title .tag .ball,
.contact-social .tag .ball {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: #50ede4;
}

.format .title {
    padding-left: 110px;
}

.format .title h3 {
    color: #004551;
    font-weight: 300;
}

.format .grid {
    display: grid;
    gap: 3px;
    grid-template-columns: 70% 1fr;
    margin-top: 20px;
}

.format .grid .list {
    display: grid;
    gap: 3px;
    grid-template-columns: 1fr 1fr;
}

.format .grid .list .item,
.format .grid .item-full {
    background: #50ede4;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 70px;
}

.format .grid .list .item {
    cursor: unset;
}

.format .grid h3 {
    margin-bottom: 20px;
}

.location .row-flex {
    display: grid;
    grid-template-columns: 1fr 63%;
    align-items: center;
    background: #fff;
}

.location .row-flex .text {
    padding: 120px 0 120px 200px;
}

.location .row-flex .text h2 {
    font-weight: 300;
    color: #004551;
    margin-bottom: 20px;
}

.location .row-flex .text p {
    color: #004551;
}

.concierge {
    background-color: #004551;
    padding: 90px 0;
    margin-top: -5px;
}

.concierge .itens {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    align-items: center;
}

.concierge .itens h3 {
    font-weight: 300;
    margin-bottom: 20px;
    margin-top: 30px;
    color: #fff;
}

.concierge .itens p {
    color: #fff;
}

.contact-social {
    padding: 90px 0;
}

.contact-social .flex {
    max-width: 80%;
    margin: 0 auto;
    gap: 70px;
    display: grid;
    grid-template-columns: 40% 60%;
    justify-content: center;
    align-items: center;
}

.contact-social .flex h2 {
    font-weight: 300;
    margin-bottom: 20px;
}

.contact-social .flex a {
    color: #000;
}

.contact-social .flex .box {
    padding: 50px;
    border: 2px solid;
}

.contact-social .flex .box .icon {
    display: flex;
    justify-content: space-between;
}

.contact-social .flex .box .icon img {
    width: 50px;
    height: 50px;
}
.e-book {
    background-color: #09c4b9;
    padding: 90px 0;
}
.e-book .row {
    align-items: center;
}
.e-book .col-lg-3 img {
    padding: 0 50px;
}
.e-book .form p {
    font-size: 11px;
    padding-bottom: 0;
    color: #e3e7e4;
}
.e-book .form .text-end {
    margin-top: 10px;
}
.e-book .form .text-end .btn-submit-light {
    color: #e3e7e4;
}
.e-book .text h2 {
    font-weight: 300;
    color: #e3e7e4;
    margin: 50px 0 30px;
}
.e-book .text p {
    margin-bottom: 20px;
    color: #e3e7e4;
    font-size: 18px;
    line-height: 1.5;
}
.e-book .ball {
    width: 160px;
    height: 160px;
    background: #004551;
    border-radius: 50%;
    margin-top: 30px;
}

.e-book .form-control.form-control-light {
    border: 1px solid #e3e7e4;
}

.e-book .form input::placeholder {
    color: #004551;

    font-weight: 300;
    opacity: 0.7;
}

.e-book .form input::-webkit-input-placeholder {
    color: #004551;

    font-weight: 300;
    opacity: 0.7;
}

.e-book .form input:-ms-input-placeholder {
    color: #004551;
    font-weight: 300;
    opacity: 0.7;
}

.e-book .form input::-ms-input-placeholder {
    color: #004551;
    font-weight: 300;
    opacity: 0.7;
}

.wpcf7 form .wpcf7-response-output {
    margin: 10px 0!important;
    padding: 0!important;
    border: unset!important;
    color: #fff!important;
}
span.wpcf7-spinner {
    position: absolute!important;
}
.newsletter-box .wpcf7 form .wpcf7-response-output {
    color: #000 !important;
}
/* .desktop-none */
@media (max-width: 1400px) {
    .e-book .col-lg-3 img {
        padding: 0 30px;
    }
    .about .row a .icon {
        min-height: 160px;
    }

    .about .row a .icon img {
        width: 38%;
    }

    .about .row a p {
        max-width: 280px;
        margin: 0 auto;
    }

    .about .row a p br {
        display: none;
    }

    .biography .text {
        padding-left: 70px;
    }

    .biography .photo {
        display: flex;
        gap: 40px;
    }

    .biography .photo h2:before {
        left: -15px;
    }

    footer .bg img {
        max-width: 500px;
    }

    .aspas h2::before {
        width: 80px;
        background-size: 80px;
        height: 90px;
        top: -35px;
        margin-left: -100px;
    }

    .aspas h2::after {
        width: 80px;
        background-size: 80px;
        height: 90px;
        bottom: -60px;
        margin-left: 10px;
    }

    .soul .content .text {
        padding: 30px;
    }

    .location.hero-section .text h1 {
        font-size: 40px;
    }

    .location.hero-section .text .tarja {
        width: 280px;
    }

    .location .row-flex .text {
        padding: 120px 0 120px 90px;
    }
}

@media (max-width: 1199px) {
    .testimonials .text h2 br {
        display: none;
    }

    .ibeac img {
        height: auto;
    }

    .hero-section .text {
        left: 0;
    }

    ul.navbar-nav.whatsapp-icon-desktop {
        display: none;
    }

    .fixed-top nav .navbar-nav {
        gap: 20px;
        padding-top: 20px;
    }

    .flip-card-front .card-content {
        padding: 70px;
        max-width: 100%;
    }

    footer .bg p {
        margin-bottom: 30px;
    }

    .soul .content .text br {
        display: none;
    }

    .soul .content {
        grid-template-columns: 1fr;
    }

    .soul .content h2 {
        font-size: 26px;
        line-height: 36px;
    }

    .aspas h2::before {
        width: 50px;
        background-size: 50px;
        height: 50px;
        top: -20px;
        margin-left: -60px;
    }

    .aspas h2::after {
        width: 50px;
        background-size: 50px;
        height: 50px;
        bottom: -20px;
    }

    .call-conversation .text {
        padding: 0;
    }

    .experience-text br {
        display: none;
    }

    .location-about .text h2 br {
        display: none;
    }

    .location-about .text {
        padding: 0;
    }

    .location-about .text-two {
        padding: 50px 0px 30px 50px;
    }

    .location.hero-section .text h1.ball:before {
        left: 0;
        top: -60px;
    }

    .format .title {
        padding-left: 0;
    }
}

@media (max-width: 991px) {
    .navbar-toggler {
        padding: 0;
        border: none;
    }

    .navbar-toggler-icon {
        background-image: url(../img/menu.png);
    }

    .location.hero-section .text h1.hero-text.ball br {
        display: block;
    }

    .flip-section .grid {
        grid-template-columns: 1fr;
    }

    .companies .title h2 br {
        display: none;
    }

    .testimonials .content .list::after {
        content: '';
        position: absolute;
        background-color: #ffffff;
        width: 100%;
        height: 100%;
        top: 0;
        left: 100%;
    }

    .testimonials .content .text::after {
        content: '';
        position: absolute;
        background-color: #7fe7e0;
        width: 100%;
        height: 100%;
        top: 0;
        left: -98%;
    }

    .testimonials .text h2,
    .ibeac .text {
        padding: 50px 0;
        margin: 0;
    }

    footer .bg img {
        max-width: 100%;
    }

    .ibeac {
        display: grid;
        gap: 0;
        grid-template-columns: 1fr;
    }

    .ibeac .text {
        padding: 30px 60px;
    }

    .flip-card-front .card-content {
        padding: 70px 60px;
        max-width: 100%;
    }

    .copyrighted-content .grid {
        grid-template-columns: 1fr;
    }

    .fixed-top nav {
        padding: 20px 0;
    }

    .aspas h2 br {
        display: none;
    }

    .call-conversation .grid {
        display: grid;
        gap: 30px;
        text-align: center;
    }

    .call-conversation .grid .item .text,
    .call-conversation .grid .item.two .text {
        position: absolute;
        top: 50%;
        transform: translate(-50%, -50%);
        right: 50px;
        left: unset;
    }

    .call-conversation .grid .item .text h2 {
        margin: 0 0 20px;
    }

    .call-conversation .ball-img {
        width: 150px;
        margin: 0 auto;
    }

    .accordion-item .accordion-button {
        font-size: 22px;
        line-height: 32px;
    }

    .text-list {
        padding: 70px 0 0;
    }

    .location.hero-section .text {
        display: grid;
        gap: 0;
    }

    .location.hero-section .text h1.ball:before {
        display: none;
    }

    .hero-section.location .d-none {
        display: none !important;
    }

    .hero-section.location .d-block {
        display: block !important;
    }

    .hero-section.location .text h1 br {
        display: block;
    }

    .location-about {
        padding: 50px 0 0;
    }

    .location-about .text {
        margin-bottom: 50px;
    }

    .location-about .bg::after {
        content: '';
        position: absolute;
        background-color: #7cf2eb;
        width: 100%;
        height: 100%;
        top: 0;
        left: -98%;
    }

    .location-about .text-two {
        padding: 50px 0 30px;
    }

    .format .grid {
        grid-template-columns: 1fr;
    }

    .contact-social .flex h2 br {
        display: none;
    }

    .contact-social .flex {
        max-width: 100%;
        margin: 0 auto;
        gap: 20px;
        display: grid;
        grid-template-columns: 1fr 1fr;
        justify-content: center;
        align-items: center;
    }
}

@media (max-width: 767px) {
    .e-book {
        padding: 50px 0;
    }
    .e-book .text h2 {
        margin: 20px 0;
    }
    .e-book .ball {
    width: 80px;
    height: 80px;

    margin-top: 0px;
}
    h2 {
        font-size: 32px;
        line-height: 42px;
    }

    .container {
        padding: 0 50px;
    }

    .flip-card {
        height: auto;
        min-height: auto;

    }

    .flip-color {
        height: 284px;
    }

    .flip-card-front .card-content,
    .item.flex-2 .flip-card-front .card-content {
        padding: 50px;
        max-width: 100%;
    }

    .flip-card-front .card-content a {
        color: #ffffff;
    }

    .hero-section .text {
        left: 50px;
        bottom: 30px;
    }

    .companies {
        margin-top: 50px;
    }

    .hero-section .text h1 {
        color: #ffffff;
        font-size: 26px;
        line-height: 36px;
        font-weight: 600;
    }

    .newsletter-box {
        padding: 30px;
    }

    .testimonials .content .list {
        padding: 30px 25px;
    }

    .testimonials .content .list .item p {
        margin: 0;
    }

    .testimonials .content .list .item img {
        position: relative;
        top: 0;
    }

    .testimonials .content .text::before {
        right: -98%;
    }

    .testimonials .content .list::after {
        left: 98%;
    }

    .companies .logo {
        text-align: center;
    }

    .companies .logo img {
        width: 200px;
        margin: 0 auto;
    }

    .companies .title {
        margin-bottom: 50px;
    }

    .companies .swiper-pagination {
        position: absolute;
        bottom: 0;
        /* garante que fique fora da área das imagens */
        left: 0;
        width: 100%;
        text-align: center;
        margin-top: 15px;
    }

    .companies .swiper-pagination-bullet {
        background: #bbb;
        opacity: 1;
        margin: 0 4px !important;
    }

    .companies .swiper-pagination-bullet-active {
        background: #000000;
    }

    .swiper-button-next:after,
    .swiper-button-prev:after {
        color: #000;
        font-size: 30px !important;
    }

    .copyrighted-content {
        padding: 20px 0 50px;
    }

    .copyrighted-content .icon img {
        width: 40px;
        margin-bottom: 20px;
        margin-right: 10px;
    }

    .copyrighted-content .social {
        text-align: left;
        max-width: 235px;
        margin: 0 auto;
    }

    .copyrighted-content .icon img.opac {
        opacity: 0.5;
    }

    .copyrighted-content .item {
        text-align: center;
    }

    .copyrighted-content .capa img {
        max-width: 235px;
        margin: 0 auto;
    }

    .copyrighted-content .title {
        padding-bottom: 50px;
    }

    .copyrighted-content .swiper-button-next,
    .swiper-rtl .swiper-button-prev,
    .copyrighted-content .swiper-button-prev,
    .swiper-rtl .swiper-button-next {
        margin-top: 8px;

    }

    .testimonials {
        padding-top: 70px;
    }

    .disclaimer-text {
        line-height: 1;
    }

    footer {
        padding: 50px 0 70px;
    }

    footer .bg img {
        width: 100%;
    }

    footer .logo img {
        width: 220px;
    }

    footer .social img {
        width: 22px;
    }

    footer .menu {
        align-items: end;

    }

    /* Quem somos */

    .hero-section .text h1 br {
        display: block;
    }

    .about .title {
        padding-bottom: 30px;
    }

    .about .title h2 {
        margin-bottom: 10px;
    }

    .about .title h3 {
        font-weight: 300;
    }

    .about .icon,
    .about .swiper-slide {
        text-align: center;
    }

    .about .icon img {
        width: 120px;
    }

    .about .icon {
        margin-bottom: 30px;
    }

    .about .swiper-slide p {
        padding: 10px 30px;
        text-align: left;
    }

    .about .swiper-slide p br {
        display: none;
    }

    .about .swiper-wrapper {
        align-items: center;
    }

    .biography .photo {
        display: flex;
    }

    .biography .grid {
        grid-template-columns: 1fr;
    }

    .biography .text {
        padding-left: 0;
    }

    .biography .photo img {
        width: 135px;
    }

    .biography .photo h2:before {
        width: 120px;
        height: 120px;
    }

    .biography .photo h2 {
        margin-top: 30px;
    }

    .biography .text {
        margin-top: 50px;
    }

    .biography {
        padding: 50px 0 0;
    }

    .team {
        padding: 50px 0 0;
        text-align: center;
    }

    .team .team-member {
        width: 242px;
        margin: 0 auto;
    }

    .aspas {
        padding: 60px 0 40px;
    }

    .aspas h2::before {
        width: 42px;
        background-size: 42px;
        height: 42px;
        top: -40px;
        margin-left: 0;
    }

    .aspas h2 {
        text-align: left;
        margin-bottom: 20px;
        font-size: 22px;
        line-height: 32px;
    }

    .aspas p {
        text-align: left;
        font-size: 14px;
    }

    .aspas h2::after {
        bottom: -55px;
        right: -35px;
    }

    .call-conversation .grid .item .text,
    .call-conversation .grid .item.two .text {
        right: unset;
        left: 50%;
        width: 310px;
        padding: 0;
    }

    .call-conversation .ball-img {
        width: 70px;
    }

    .text-list .content {
        padding: 30px;
    }

    .accordion-item .accordion-button {
        font-size: 18px;
        line-height: 28px;
    }

    .accordion-item .accordion-button {
        padding: 0 0 20px;
    }

    .text-content .content {
        padding: 30px 0;
    }

    .soul .content .text {
        padding: 50px;
    }

    .call-conversation {
        padding: 50px 0;
    }

    .share-form-box {
        padding: 50px 50px 5rem;
    }

    .experience-text-box {
        padding: 50px;
    }

    .newsletter-box br {
        display: none;
    }

    .newsletter-section .form-col {
        margin-top: 20px;
    }

    .newsletter-section .bt-form {
        padding: 14px 50px;
        width: 100%;
    }

    .format .grid .list {
        grid-template-columns: 1fr;
    }

    .concierge .itens {
        grid-template-columns: 1fr;
    }

    .location .row-flex .text {
        padding: 50px;
    }

    .contact-social .flex {
        grid-template-columns: 1fr;
    }

    .contact-social {
        padding: 50px 0;
    }

    .location .row-flex {
        grid-template-columns: 1fr;
        margin-bottom: -5px;
    }

    .location-about .bg::before {
        width: 102%;
    }

    .location.hero-section .text .tarja {
        width: 240px;
        height: 30px;
    }

    .location.hero-section .text {
        width: auto;
    }

    .format .grid .list .item,
    .format .grid .item-full {
        padding: 40px;
    }

    .swiper-button-prev {
        left: 0 !important;
    }

    .swiper-button-next {
        right: 0 !important;
    }

    button.navbar-toggler.collapsed {
        border: unset;
        padding: 0;
    }

    .hero-section .text h1 {
        max-width: 300px;
    }

    .about {
        padding: 50px 0 50px;
    }

    .modal {

        --bs-modal-width: 100%;
    }
    .fixed-top .nav .nav-link, .navbar-expand-lg .navbar-nav .nav-link {
        width: max-content;
    }
    .copyrighted-content .title p br {
        display: none;
    }

}

@media (max-width: 400px) {
    .fixed-top .navbar-brand img {
        width: 152px;
    }
}