:root {
    --v-offset-neg: -60px;
    --v-offset-pos: 60px;

    --spacing: 120px;

    --brown: #A05620;
    --navy: #11183A;
    --blue: #3D5BA9;
    --grey: #EBEBEB;

    --transition: .3s ease-in;
}
@media screen and (max-width:1280px) {
    :root {
        --v-offset-neg: -160px;
        --v-offset-pos: 160px;

        --spacing: 80px;
    }
}

.font-h2 {
    font-size:2rem;
    font-weight:700;
    font-family:'Nexa', sans-serif;
    letter-spacing:0;
}

.tm-contact,
.tm-sold-listings,
.tm-about {
    margin-bottom:var(--spacing);
}
.tm-about__title1,
.tm-about__title2,
.tm-custom__title {
    text-align:center;
    margin-bottom:20px;
}

.tm-intro__top-bar {
    display:block;
    width:100%;
    height:200px;
    background:var(--navy);
}
.tm-intro__grid {
    display: grid;
    grid-template-columns: repeat(20, 1fr);
    grid-template-rows: repeat(10, auto);
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    transform:translateY(var(--v-offset-neg));
    margin-bottom:var(--v-offset-neg);
    width: 100%;
}
.tm-intro__image-section {
    grid-area: 1 / 1 / 7 / 8;
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    height: 100%;
    box-shadow:0 0 10px rgba(0,0,0,0.7);
}
.tm-intro__image-section img {
    display:block;
    object-fit:cover;
    width:100%;
    height:100%;
    min-height: 500px;
}
.tm-intro__contact-section {
    grid-area: 7 / 1 / 8 / 8;
    display:flex;
    flex-direction:column;
    align-items:center;
    margin-top: 40px;
}
.tm-intro__contact-section .tm-intro__description {display:none;}
.tm-intro__license {
    font-family:'Nexa', sans-serif;
    font-weight:700;
    color:var(--brown);
    margin-bottom:15px;
    line-height:1;
}
.tm-intro__contact-link {
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:15px;
}
.tm-intro__contact-link svg {
    fill:var(--brown);
    height:25px;
    width:auto;
    transition:var(--transition) transform;
}
a.tm-intro__contact-link:hover svg {
    transform:scale(1.1);
}
.tm-intro__contact-link-text {
    line-height:1;
    color:var(--navy);
    font-weight:700;
    font-family:'Nexa', sans-serif;
    transition: var(--transition) color;
}
a.tm-intro__contact-link:hover .tm-intro__contact-link-text {
     color:var(--brown);
}
.tm-intro__socials {
    display:flex;
    align-items:center;
    justify-content:center;
    gap:20px;
    margin-top:10px;
    margin-bottom:30px;
}
.tm-intro__socials a {
    position:relative;
}
.tm-intro__socials svg {
    display:block;
    height:30px;
    width:auto;
    fill:var(--brown);
    transition:var(--transition) all;
}
.tm-intro__socials a:hover svg {
    fill:var(--navy);
    transform:scale(1.1);
}
.tm-intro__button {
    padding:15px 35px;
    text-transform:uppercase;
    font-weight:300;
    background:var(--navy);
    color:#fff;
    letter-spacing:2px;
    transition:var(--transition) all;
}
.tm-intro__button:hover {
    background:var(--brown);
    color:#fff;
}
/* .tm-intro__col2 {
    width:55%;
    padding-top:calc(var(--v-offset-pos) + 40px);
} */
.tm-intro__name-section {
    grid-area: 1 / 9 / 5 / 21;
    display:block;
    position:relative;
    width: 100%;
}
.tm-intro__name {
    font-weight:700;
    color:var(--blue);
    margin-top: 100px;
}
.tm-intro__name-line {
    position:absolute;
    bottom:0;
    right:0;
    width:60%;
    height:6px;
}
.tm-intro__name .underlined {
    background-image:linear-gradient(to right,rgba(222,212,200,0.8) 0,rgba(222,212,200,0.3) 100%);   
    background-size:100% 28%;
    background-position:left 90%;
    background-repeat:no-repeat;
}
.tm-intro__description {
    max-width:600px;
    margin-bottom: 40px;
    font-size:18px;
    line-height:2
}
.tm-intro__description p {padding-bottom:0;}
.tm-intro__listings-section {
    grid-area: 5 / 9 / 11 / 21;
}
.tm-intro__listings-top {
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
}
.tm-intro__listings-title {
    margin:0;
    line-height:1;
}
#team-member .tm-intro__listings-top .link_text {
    text-transform:uppercase;
    color:var(--brown);
    font-family:'Nexa';
    font-weight:300;
    font-size:0.8rem;
    letter-spacing:1px;
    white-space:nowrap;
}
@media screen and (max-width:1280px) {
    .tm-intro__description {font-size:16px;}
    .tm-intro__listings-top {flex-direction:column;align-items:center;}
    .tm-intro__listings-title {text-align:center;}
    .tm-intro {margin-bottom:40px;}
    .tm-intro__top-bar {height:280px}
    .tm-intro__grid {display:flex;flex-direction:column;align-items: center;justify-content:flex-start;}
    .tm-intro__name-section {order:1;text-align: center;margin-bottom:20px}
    .tm-intro__name {color:#fff;margin-top:0;}
    .tm-intro__name .underlined {background: none;}
    .tm-intro__name-section .tm-intro__description {display:none;}
    .tm-intro__image-section {order:2;}
    .tm-intro__image-section {height: 500px;max-width: 430px;}
    .tm-intro__contact-section {order:3;margin-bottom:var(--spacing);}
    .tm-intro__contact-section .tm-intro__description {display:block;margin-bottom: 20px;text-align: center;}
    .tm-intro__listings-section {order:4;max-width: 100%;}
}

.listings-swiper .swiper-wrapper {
    padding-top:20px;
}

.card__link:hover .card__image-wrapper {
    transform: translateY(-5px);
}
.card__image-wrapper {
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:15vw;
	width:100%;
    margin-bottom:20px;
    border-radius:5px;
    position:relative;
	aspect-ratio: 3 / 2;
    overflow:hidden;
    transition:var(--transition) all;
}
.card__image-wrapper img {
    display:block;
    object-fit:cover;
    width:100%;
    height:100%;
}
.card__title {
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: 1rem;
    line-height: 1.4;
    font-weight: 600;
    color:var(--navy);
    margin-bottom: 5px;
}
.card__details,
.card__subtitle {
    color:var(--brown);
    font-size: 0.85rem;
    line-height:1.3;
}
@media screen and (max-width:1280px) {
    .card__title {font-size:0.9rem;}
    .card__details {font-size:0.85rem}
}
@media screen and (max-width:999px) {
    .card__image-wrapper {min-height:25vw;}
}
@media screen and (max-width:499px) {
    .card__image-wrapper {min-height:225px;}
}

.tm-contact {padding-top:var(--spacing)}
.tm-contact__row {
    display:flex;
    justify-content:space-between;
	gap:80px;
}
.tm-contact__row > div {
    flex: 0 1 50%;
}
.tm-contact__content-col {
    padding-top:40px;
}
.tm-contact__form-wrapper {
    background:var(--grey);
    padding:40px;
    border-radius:5px;
}
.tm-contact__form-title {
    text-align:center;
}
.gform_required_legend {
    display:none;
}
#gform_10 .gform-field-label {
    text-transform:none !important;
    letter-spacing:0;
    font-family:'Nexa', sans-serif;
    font-size:16px;
    line-height:1.2;
}
#gform_10 .gform-field-label--type-sub {
    font-size:12px;
}
#gform_10 .gchoice .gform-field-label {
     font-size:13px;
}
#gform_10 .ginput_container input {
     background:#fff;
}
#gform_10 .gform_footer {
    justify-content:center;
}
#gform_submit_button_10 {
    background:var(--brown);
    padding:15px 35px;
    letter-spacing:2px;
    border-radius:0;
    margin:0;
}
@media screen and (max-width:1080px) {
    .tm-contact__row {flex-direction:column;align-items:center;}
    .tm-contact__content-col {text-align:center;}
}
@media screen and (max-width:499px) {
    .tm-contact__form-wrapper {padding:30px 20px}
}

#team-member .tm-sold-listings .address {
    font-family:'Nexa-Light', sans-serif;
    font-weight:400;
    font-size: 1rem;
    line-height: 1.4;
    font-weight: 600;
    color: var(--navy);
    margin-bottom:5px;
}
#team-member .tm-sold-listings .basicInfo,
#team-member .tm-sold-listings .price {
    color: var(--brown);
    font-size: 0.85rem;
    line-height: 1.3;
    font-family:'Nexa';
}
#team-member .tm-sold-listings__row {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 0;
}
#team-member .tm-sold-listings__item.card {
    width: 33.3333%;
    padding: 15px;
}
#team-member .tm-sold-listings__details.card__details {
    font-size: 16px;
}
@media screen and (max-width:991px) {
	#team-member .tm-sold-listings__item.card {width:50%;}
}
@media screen and (max-width:767px) {
	#team-member .tm-sold-listings__item.card {width:100%;}
}

.tm-about__row {
    position:relative;
    display:flex;
    justify-content:center;
    align-items:stretch;
}
.tm-about__col {
    width:50%;
    padding:20px 40px;
}
.tm-about__col.tm-about__testimonials-col {
    /* border-left:2px solid var(--brown); */
}
.testimonials-swiper .swiper-slide {
    text-align:center;
}
.testimonials-swiper .swiper-slide p {
    padding-bottom:0;
}
.testimonial-quote {line-height:2;margin-bottom:20px;}
.testimonial-name {font-weight:900;font-size:20px;font-family: 'nexa-bold' !important;}

.tm-custom__row {
    max-width: 1280px;
    margin-left:auto;
    margin-right:auto;
}
@media screen and (max-width:1280px) {
    .tm-about__row {flex-direction:column;}
    .tm-about__col {width:100%;padding:0;}
    .tm-about__col.tm-about__testimonials-col {border:0;margin-top:var(--spacing);}
}

#team-member .swiper-container {
    position:relative;
    padding:0 30px;
}
#team-member .swiper {
    padding-bottom:40px
}
#team-member .swiper-navigation {
    width:auto;
    padding:0 2px;
}
#team-member .swiper-navigation::after {
    font-size:25px;
    font-weight:700;
    color:var(--navy);
}
#team-member .swiper-button-next {
    right:0;
}
#team-member .swiper-button-prev {
    left:0;
}
#team-member .swiper-pagination {
    bottom:0;
}
#team-member .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background:var(--blue);
}
