:root {
    --brand: #00aeff;
    --brand-dark: #008bd0;
    --gold: #d6aa4d;
    --ink: #111827;
    --muted: #64748b;
    --soft: #f9f9f9;
    --line: #e5e7eb;
}

body {
    background: var(--soft);
    color: var(--ink);
}

.top-strip {
    background: #101828;
    color: #dbe4ef;
    font-size: .9rem;
}

.top-strip a {
    color: #fff;
    text-decoration: none;
}

.navbar {
    box-shadow: 0 8px 24px rgba(15, 23, 42, .06);
}

.site-logo {
    width: auto;
    max-width: 190px;
    height: 46px;
    object-fit: contain;
}

.footer-logo {
    width: auto;
    max-width: 210px;
    height: 54px;
    object-fit: contain;
}

.nav-link {
    color: #1f2937;
    font-weight: 500;
}

.nav-link.active,
.nav-link:hover {
    color: var(--brand);
}

.btn-primary {
    background: var(--brand);
    border-color: var(--brand);
}

.btn-primary:hover {
    background: var(--brand-dark);
    border-color: var(--brand-dark);
}

.btn-outline-primary {
    color: var(--brand);
    border-color: var(--brand);
}

.btn-outline-primary:hover {
    background: var(--brand);
    border-color: var(--brand);
}

.text-gold {
    color: var(--gold);
}

.hero-band,
.page-hero {
    color: #000;
    /* background: linear-gradient(90deg, rgba(16, 24, 40, .92), rgba(16, 24, 40, .72)),
        url("https://images.unsplash.com/photo-1600607687939-ce8a6c25118c?auto=format&fit=crop&w=1800&q=80") center / cover; */
    background: linear-gradient(135deg, #fdfcfb 0%, #e2d1c3 100%);
}

.page-hero {
    /* background: linear-gradient(90deg, rgba(16, 24, 40, .94), rgba(16, 24, 40, .78)),
        url("https://images.unsplash.com/photo-1600607687939-ce8a6c25118c?auto=format&fit=crop&w=1800&q=80") center / cover; */
    background: linear-gradient(135deg, #fdfcfb 0%, #e2d1c3 100%);
}

.page-breadcrumb {
    --bs-breadcrumb-divider-color: rgba(32, 32, 32, 0.55);
    font-size: .75rem;
}

.page-breadcrumb .breadcrumb-item,
.page-breadcrumb .breadcrumb-item.active {
    color: rgba(32, 32, 32, 0.72);
}

.page-breadcrumb a {
    color: #323232;
    text-decoration: none;
}

.page-breadcrumb a:hover {
    color: var(--gold);
}

.hero-search {
    border-radius: .5rem;
    box-shadow: 0 24px 60px rgba(15, 23, 42, .22);
}

.hero-visual {
    overflow: hidden;
    aspect-ratio: 4 / 3;
    background: #e5e7eb;
    border-radius: .5rem;
    box-shadow: 0 24px 60px rgba(15, 23, 42, .26);
}

.hero-visual img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.requirement-section {
    background: #fff;
}

.requirement-panel {
    max-width: 960px;
    padding: 1.25rem;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: .5rem;
    box-shadow: 0 16px 38px rgba(15, 23, 42, .09);
}

.search-group-title {
    margin-bottom: .5rem;
    color: var(--muted);
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.icon-radio-grid {
    display: flex;
    flex-wrap: wrap;
    gap: .6rem;
    justify-content: center;
}

.icon-radio {
    position: relative;
    display: inline-flex;
    margin: 0;
}

.icon-radio input {
    position: absolute;
    inset: 0;
    opacity: 0;
}

.icon-radio span {
    display: inline-flex;
    gap: .45rem;
    align-items: center;
    justify-content: center;
    min-width: 112px;
    min-height: 42px;
    padding: .45rem .85rem;
    color: #334155;
    font-weight: 600;
    cursor: pointer;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: .5rem;
    transition: border-color .16s ease, background .16s ease, color .16s ease, box-shadow .16s ease;
}

.icon-radio input:focus-visible + span {
    outline: 2px solid rgba(0, 174, 255, .35);
    outline-offset: 2px;
}

.icon-radio input:checked + span {
    color: var(--brand-dark);
    background: rgba(0, 174, 255, .08);
    border-color: var(--brand);
    box-shadow: 0 10px 24px rgba(0, 174, 255, .12);
}

.requirement-panel .input-group-text {
    color: var(--brand-dark);
    background: #fff;
}

.section-kicker {
    color: var(--gold);
    font-size: .8rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.property-filter-card {
    top: 90px;
}

.property-results.is-loading {
    opacity: .55;
    pointer-events: none;
}

.property-card {
    height: 100%;
    overflow: hidden;
    border-radius: .5rem;
    transition: transform .18s ease, box-shadow .18s ease;
}

/* .property-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 20px 44px rgba(15, 23, 42, .12) !important;
} */

.property-card img {
    height: 210px;
    object-fit: cover;
    background: #e5e7eb;
    --img-scale: 1;
    --img-scale-transition-duration: 250ms;
    --img-scale-transition-function: ease-in-out;
    overflow: hidden;
}

.property-card-image {
    display: block;
    width: 100%;
}

.property-card-list {
    min-height: 220px;
}

/* .property-card-list:hover {
    transform: translateY(-2px);
} */

.property-card-list .property-media {
    min-height: 220px;
    background: #e5e7eb;
    --img-scale: 1;
    --img-scale-transition-duration: 250ms;
    --img-scale-transition-function: ease-in-out;
    overflow: hidden;
}

.property-card-list .property-card-image {
    height: 100%;
    min-height: 220px;
    object-fit: cover;
    scale: var(--img-scale);
    transition:
    scale
    var(--img-scale-transition-duration)
    var(--img-scale-transition-function);
}

.property-card-list .property-card-image:hover {
    --img-scale: 1.2;
}

.property-card-list .card-body {
    padding: 1.1rem 1.25rem;
}

.property-chip {
    display: inline-flex;
    align-items: center;
    padding: .2rem .55rem;
    color: #475569;
    font-size: .75rem;
    background: #f8fafc;
    border: 1px solid var(--line);
    border-radius: 999px;
}

.property-list-side {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 1.1rem;
    background: #fff;
    border-left: 1px solid var(--line);
}

.property-price {
    color: var(--gold);
    font-size: 1.15rem;
    font-weight: 800;
    text-align: center;
}

.badge-brand {
    color: #fff;
    background: var(--brand);
}

.info-tile {
    height: 100%;
    padding: 1rem;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: .5rem;
}

.testimonial-carousel {
    padding: 0 3rem;
}

.testimonial-card {
    position: relative;
    overflow: hidden;
    padding: 6.55rem 1.25rem 1.25rem;
    text-align: center;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: .5rem;
    box-shadow: 0 16px 34px rgba(15, 23, 42, .08);
}

.testimonial-photo {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 125px;
    color: var(--brand-dark);
    font-size: 2rem;
    background: #e8eef5;
}

.testimonial-photo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.quote-icon {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    margin-bottom: .75rem;
    color: var(--gold);
    background: #fff;
    border-radius: 50%;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .14);
}

.testimonial-card p {
    min-height: 5.25rem;
}

.testimonial-carousel .carousel-control-prev,
.testimonial-carousel .carousel-control-next {
    width: 2.5rem;
}

.partner-logo {
    max-height: 70px;
}

.contact-info-card {
    height: 100%;
    padding: 2rem 1.25rem;
    text-align: center;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: .5rem;
    box-shadow: 0 16px 34px rgba(15, 23, 42, .08);
}

.contact-info-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 64px;
    height: 64px;
    margin-bottom: 1.25rem;
    color: var(--gold);
    font-size: 1.6rem;
    background: #f1f5f9;
    border: 1px solid var(--line);
    border-radius: 50%;
}

.contact-info-lines {
    overflow-wrap: anywhere;
    color: #1f2f46;
    font-weight: 700;
    line-height: 1.7;
}

.contact-workspace {
    background: #f8fafc;
}

.contact-form-panel,
.contact-map-card,
.quick-actions-card,
.office-card {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: .5rem;
    box-shadow: 0 16px 34px rgba(15, 23, 42, .08);
}

.contact-form-panel {
    padding: 1.5rem;
}

.contact-form-panel .form-label {
    color: #334155;
    font-size: .9rem;
    font-weight: 600;
}

.contact-form-panel .form-control,
.contact-form-panel .form-select {
    min-height: 44px;
}

.contact-form-panel .input-group-text {
    color: var(--brand-dark);
    background: #fff;
}

.contact-map-card {
    overflow: hidden;
}

.contact-map-card iframe {
    display: block;
    width: 100%;
    height: 245px;
    border: 0;
}

.quick-actions-card {
    padding: 1.5rem;
}

.office-card {
    max-width: 720px;
    padding: 1.5rem;
}

.property-main-image {
    width: 100%;
    max-height: 460px;
    object-fit: cover;
    border-radius: .5rem;
}

.contact-agent-card {
    top: 84px;
}

.property-thumb {
    width: 96px;
    height: 76px;
    padding: 0;
    overflow: hidden;
}

.property-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.property-thumb.active {
    border-color: var(--brand);
}

.amenity-icon {
    width: 38px;
    height: 38px;
    color: var(--brand-dark);
    background: rgba(0, 174, 255, .08);
}

.similar-sidebar-card {
    display: flex;
    gap: .85rem;
    padding: .75rem;
    color: var(--ink);
    background: #fff;
    border: 1px solid var(--line);
    border-radius: .5rem;
    box-shadow: 0 12px 28px rgba(15, 23, 42, .08);
    transition: transform .16s ease, box-shadow .16s ease;
}

.similar-sidebar-card:hover {
    color: var(--ink);
    transform: translateY(-2px);
    box-shadow: 0 18px 38px rgba(15, 23, 42, .12);
}

.similar-sidebar-card img {
    flex: 0 0 auto;
    width: 112px;
    height: 96px;
    object-fit: cover;
    background: #e5e7eb;
    border-radius: .4rem;
}

.similar-sidebar-body {
    display: grid;
    gap: .18rem;
    align-content: start;
    min-width: 0;
}

.similar-title {
    display: -webkit-box;
    overflow: hidden;
    color: #18365d;
    font-size: .9rem;
    font-weight: 800;
    line-height: 1.25;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.similar-meta {
    overflow: hidden;
    color: var(--muted);
    font-size: .78rem;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.similar-price {
    margin-top: .15rem;
    color: var(--brand-dark);
    font-size: .9rem;
    font-weight: 800;
}

.about-intro p,
.about-advisory p,
.about-expertise p,
.about-vision p,
.about-cta p {
    color: #475569;
    line-height: 1.75;
}

.about-image-panel {
    position: relative;
    min-height: 360px;
    overflow: hidden;
    background: #e5e7eb;
    border-radius: .5rem;
    box-shadow: 0 18px 42px rgba(15, 23, 42, .12);
}

.about-image-panel img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 360px;
    object-fit: cover;
}

.about-image-badge {
    position: absolute;
    right: 1rem;
    bottom: 1rem;
    display: inline-flex;
    gap: .55rem;
    align-items: center;
    max-width: calc(100% - 2rem);
    padding: .75rem .9rem;
    color: #0f172a;
    font-weight: 700;
    background: rgba(255, 255, 255, .92);
    border: 1px solid rgba(226, 232, 240, .92);
    border-radius: .5rem;
    box-shadow: 0 14px 30px rgba(15, 23, 42, .16);
}

.about-image-badge i {
    color: var(--brand-dark);
    font-size: 1.2rem;
}

.about-advisory,
.about-stats,
.about-expertise,
.about-why,
.about-vision {
    background: #f8fafc;
}

.about-feature-list {
    display: grid;
    gap: 1rem;
}

.about-feature-item {
    display: flex;
    gap: 1rem;
    align-items: flex-start;
    padding: 1.15rem;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: .5rem;
    box-shadow: 0 14px 28px rgba(15, 23, 42, .06);
}

.about-feature-item i,
.about-icon-row i,
.about-industry-card i,
.about-choice-card i,
.about-vision-card > i {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    color: var(--brand-dark);
    font-size: 1.15rem;
    background: rgba(0, 174, 255, .09);
    border: 1px solid rgba(0, 174, 255, .18);
    border-radius: .5rem;
}

.about-feature-item p {
    margin: 0;
}

.about-founder-card,
.about-chip-panel,
.about-vision-card {
    height: 100%;
    padding: 1rem;
    object-fit: cover;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: .5rem;
    box-shadow: 0 16px 34px rgba(15, 23, 42, .08);
}

.about-founder-card > i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 58px;
    margin-bottom: 1rem;
    color: var(--gold);
    font-size: 1.6rem;
    background: #fff8e8;
    border: 1px solid rgba(214, 170, 77, .28);
    border-radius: .5rem;
}

.about-stat-card {
    display: flex;
    gap: 1rem;
    height: 100%;
    padding: 1.15rem;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: .5rem;
    box-shadow: 0 14px 30px rgba(15, 23, 42, .06);
}

.about-stat-card img {
    flex: 0 0 auto;
    width: 52px;
    height: 52px;
    object-fit: contain;
}

.about-icon-row,
.about-industry-card {
    display: flex;
    gap: .85rem;
    align-items: center;
    height: 100%;
    padding: .95rem 1rem;
    color: #1f2937;
    font-weight: 700;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: .5rem;
}

.about-chip-panel {
    background:
        linear-gradient(135deg, rgba(0, 174, 255, .08), rgba(214, 170, 77, .1)),
        #fff;
}

.about-chip-grid {
    display: flex;
    flex-wrap: wrap;
    gap: .65rem;
}

.about-chip {
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: .45rem .75rem;
    color: #334155;
    font-weight: 700;
    background: #fff;
    border: 1px solid #dbe4ef;
    border-radius: 999px;
}

.about-choice-card {
    height: 100%;
    padding: 1.15rem;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: .5rem;
    box-shadow: 0 14px 30px rgba(15, 23, 42, .06);
}

.about-choice-card i,
.about-vision-card > i {
    margin-bottom: .95rem;
}

.about-leadership-mark {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 280px;
    padding: 2rem;
    color: #0f172a;
    text-align: center;
    background:
        linear-gradient(135deg, rgba(16, 24, 40, .88), rgba(0, 139, 208, .76)),
        url("../images/homepage/image-1.png") center / cover;
    border-radius: .5rem;
    box-shadow: 0 18px 42px rgba(15, 23, 42, .14);
}

.about-leadership-mark i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 74px;
    height: 74px;
    margin-bottom: 1rem;
    color: #fff;
    font-size: 2rem;
    background: rgba(255, 255, 255, .14);
    border: 1px solid rgba(255, 255, 255, .24);
    border-radius: .5rem;
}

.about-leadership-mark span {
    color: #fff;
    font-size: 1.35rem;
    font-weight: 800;
}

.about-cta-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 1.5rem;
    align-items: center;
    padding: 1.5rem;
    background: #f8fafc;
    border: 1px solid var(--line);
    border-radius: .5rem;
}

.about-cta-action {
    display: grid;
    gap: .75rem;
    min-width: 220px;
}

@media (max-width: 991.98px) {
    .about-cta-panel {
        grid-template-columns: 1fr;
    }

    .about-cta-action {
        min-width: 0;
    }
}

@media (max-width: 575.98px) {
    .about-image-panel,
    .about-image-panel img {
        min-height: 280px;
    }

    .about-feature-item,
    .about-stat-card {
        flex-direction: column;
    }
}

.footer {
    color: #cbd5e1;
    background: #101828;
}

.footer a {
    color: #f8fafc;
    text-decoration: none;
}

.wa-float {
    position: fixed;
    bottom: 18px;
    left: 18px;
    z-index: 20;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    box-shadow: 0 14px 28px rgba(22, 163, 74, .28);
}

@media (max-width: 991.98px) {
    .testimonial-carousel {
        padding: 0 2.25rem;
    }

    .testimonial-card p {
        min-height: auto;
    }

    .property-list-side {
        border-top: 1px solid var(--line);
        border-left: 0;
    }

    .property-price {
        text-align: left;
    }
}

@media (max-width: 767.98px) {
    .property-card-list .property-media,
    .property-card-list .property-card-image {
        height: 220px;
        min-height: 220px;
    }

    .similar-sidebar-card img {
        width: 96px;
        height: 88px;
    }
}

.services-section{
    background:#fff;
}

.service-card{
    background:#fff;
    border-radius:.5rem;
    overflow:hidden;
    border:1px solid var(--line);
    transition:.35s;
    height:100%;
}

/* .service-card:hover{
    transform:translateY(-8px);
    box-shadow:0 15px 35px rgba(0,0,0,.15);
} */

.service-image{
    height:160px !important;
    overflow:hidden;
}

.service-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:.5s;
}

/* .service-card:hover img{
    transform:scale(1.08);
}*/

.service-content{
    padding:20px 15px;
    text-align:center;
}

.service-content h4{
    font-size:28px;
    font-weight:600;
    margin-bottom:15px;
    min-height:72px;
}

.service-content p{
    font-size:0.9rem;
    color:#666;
    line-height:1.5;
    display:-webkit-box;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
    overflow:hidden;
    min-height:90px;
}

.read-more{
    display:inline-flex;
    align-items:center;
    gap:8px;
    margin-top:10px;
    text-decoration:none;
    font-weight:600;
    color:#0d6efd;
    transition:.3s;
}

.read-more:hover{
    gap:14px;
    color:#000;
}

/* Owl */
.service-slider .owl-stage{
    display:flex;
}

.service-slider .owl-item{
    display:flex;
}

.service-slider .item{
    width:100%;
}

.service-slider .owl-nav{
    margin-top:30px;
    text-align:center;
}

.service-slider .owl-nav button{
    width:32px;
    height:32px;
    border-radius:50%!important;
    background:#c3c3c3!important;
    color:#fff!important;
    font-size:18px!important;
    margin:0 8px;
    transition:.3s;
}

.service-slider .owl-nav button:hover{
    background:#000!important;
}

.service-slider .owl-dots{
    margin-top:20px;
}

.service-slider .owl-dot span{
    width:12px;
    height:12px;
}

.service-slider .owl-dot.active span{
    width:30px;
}

.social-instagram {
    color: #E4405F;
}

.social-facebook {
    color: #1877F2;
}

.social-youtube {
    color: #FF0000;
}

.social-linkedin {
    color: #0077B5;
}

.social-twitter {
    color: #1DA1F2;
}

.social-instagram:hover,
.social-facebook:hover,
.social-youtube:hover,
.social-linkedin:hover,
.social-twitter:hover {
    color: #e9e9e9;
}
