/* Mortgage calculator promo section on homepage */
.estimate-mortgage-section {
    margin: 40px 0;
    padding: 40px 0;
    background: linear-gradient(180deg, rgba(4, 4, 4, 0.06), rgba(255,255,255,0));
}
.estimate-mortgage-card {
    display: grid;
    align-items: center;
    grid-template-columns: minmax(0, 1.1fr) minmax(320px, 0.9fr);
    gap: 30px;
}
.estimate-mortgage-copy {
    max-width: 540px;
}
.estimate-mortgage-copy h2 {
    font-size: clamp(2rem, 2.8vw, 2.8rem);
    margin-bottom: 16px;
}
.estimate-mortgage-copy p {
    color: var(--dark-gray);
    margin-bottom: 24px;
}
.estimate-mortgage-callout {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 16px 18px;
    background: #fff;
    border-radius: 16px;
    border: 1px solid rgba(11,61,145,0.08);
    box-shadow: var(--shadow-sm);
}
.estimate-mortgage-callout i {
    color: var(--primary-blue);
}
.estimate-mortgage-visual {
    min-height: 230px;
    border-radius: 24px;
    background: linear-gradient(rgba(237, 242, 244, 0.537), rgba(0,0,0,0.4)),
        url("../asset/ca1.jpg") center center / cover no-repeat;
    padding: 28px;
    display: grid;
    gap: 16px;
    color: #fff;
    align-content: center;
    justify-items: start;
}
.estimate-mortgage-visual h3,
.estimate-mortgage-visual p,
.estimate-mortgage-visual strong {
    margin: 0;
}
.estimate-mortgage-visual strong {
    font-size: 2.8rem;
}
@media (max-width: 860px) {
    .estimate-mortgage-card {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .estimate-mortgage-copy {
        max-width: 100%;
    }

    .estimate-mortgage-visual {
        min-height: 220px;
        padding: 24px;
        width: 100%;
        justify-items: start;
        align-content: center;
    }
}

/* Featured Properties Grid — Landing Page */
.featured-properties .property-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 32px !important;
    max-width: 100% !important;
    width: 100% !important;
    margin: 0 auto !important;
}

.featured-properties .property-card {
    background: rgba(255, 255, 255, 0.15) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    border: 1px solid rgba(255, 255, 255, 0.25) !important;
    border-radius: 20px !important;
    box-shadow: 0 8px 32px rgba(31, 38, 135, 0.15) !important;
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
}

.featured-properties .property-card:hover {
    background: rgba(255, 255, 255, 0.25) !important;
    border-color: rgba(255, 255, 255, 0.35) !important;
    box-shadow: 0 12px 40px rgba(31, 38, 135, 0.25) !important;
    transform: translateY(-8px) !important;
}

.featured-properties .card-image {
    aspect-ratio: 1.8 / 1 !important;
}

.featured-properties .card-body {
    padding: 16px 16px 14px !important;
    background: rgba(255, 255, 255, 0.08) !important;
    border-top: 1px solid rgba(255, 255, 255, 0.15) !important;
}

.featured-properties .card-body h2 {
    font-size: 16px !important;
    margin: 8px 0 2px !important;
    color: #fff !important;
}

.featured-properties .price {
    font-size: 22px !important;
    color: #fff !important;
}

.featured-properties .location,
.featured-properties .type,
.featured-properties .card-meta {
    color: rgba(255, 255, 255, 0.85) !important;
}

.featured-properties .stats span {
    color: rgba(255, 255, 255, 0.75) !important;
}

.featured-properties .stats {
    font-size: 12px !important;
    margin: 12px 0 10px !important;
    gap: 8px !important;
}

.featured-properties .stats span {
    padding: 0 10px !important;
}

.featured-properties .details-btn {
    min-height: 40px !important;
    font-size: 12px !important;
    margin-top: 10px !important;
    background: rgba(255, 255, 255, 0.2) !important;
    color: #fff !important;
    border: 1px solid rgba(255, 255, 255, 0.3) !important;
    border-radius: 8px !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    transition: all 0.3s ease !important;
}

.featured-properties .details-btn:hover {
    background: rgba(255, 255, 255, 0.35) !important;
    border-color: rgba(255, 255, 255, 0.5) !important;
    transform: translateY(-2px) !important;
}

@media (max-width: 1200px) {
    .featured-properties .property-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 600px) {
    .featured-properties .property-grid {
        grid-template-columns: 1fr !important;
    }
    
    .featured-properties .card-image {
        aspect-ratio: 1.45 / 1 !important;
    }
}

/* Landing page featured properties background */
.featured-properties {
    position: relative;
    padding: 80px 40px;
    background-image: 
        url('../asset/2.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-attachment: fixed;
    overflow: hidden;
    image-rendering: crisp-edges;
    image-rendering: -webkit-optimize-contrast;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    transform: translateZ(0);
    will-change: background-image;
}

.featured-properties::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(255, 255, 255, 0.01);
    pointer-events: none;
    backface-visibility: hidden;
}

.featured-properties > .container,
.featured-properties .section-header,
.featured-properties .property-grid {
    position: relative;
    z-index: 1;
    width: 100% !important;
    max-width: 100% !important;
}

.featured-properties .btn {
    position: relative;
    z-index: 1;
}

.featured-properties .section-header span,
.featured-properties .section-header h2 {
    color: #fff;
}

.featured-properties .section-header span {
    opacity: 0.9;
}

.featured-properties .section-header h2 {
    text-shadow: 0 3px 12px rgba(0, 0, 0, 0.25);
}

/* U.S. buyer + international buyer positioning */
.usa-market-section{padding:70px 0;background:#f7f5ef}.usa-market-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.usa-market-card{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:18px;padding:30px;box-shadow:0 10px 30px rgba(0,0,0,.06)}.usa-market-card i{font-size:28px;margin-bottom:14px}.usa-market-card h3{margin:0 0 10px}.usa-market-card p{margin:0;color:#555;line-height:1.65}.trust-claims{padding:70px 0}.claim-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.claim-card{padding:24px;border:1px solid rgba(0,0,0,.08);border-radius:16px;background:#fff}.claim-card i{font-size:24px;margin-bottom:12px}.claim-card h3{font-size:18px;margin:0 0 8px}.claim-card p{font-size:14px;line-height:1.55;color:#666;margin:0}.claim-note{margin-top:18px;font-size:12px;line-height:1.55;color:#777}.international-cta{margin-top:28px}.international-cta .btn{margin-right:10px}@media(max-width:900px){.claim-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.usa-market-grid{grid-template-columns:1fr}}@media(max-width:560px){.claim-grid{grid-template-columns:1fr}}

/* U.S. Market Coverage */
.us-coverage-section{padding:0 0 80px;background:#fff}
.coverage-ticker{overflow:hidden;background:#071d3b;color:#fff;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08);white-space:nowrap}
.coverage-ticker-track{display:inline-flex;align-items:center;gap:44px;min-width:max-content;padding:15px 0;font-size:11px;font-weight:800;letter-spacing:1.8px;animation:atlasCoverageTicker 30s linear infinite}
.coverage-ticker-track span{display:inline-flex;align-items:center;gap:44px}
.coverage-ticker-track span::after{content:'•';opacity:.55}
@keyframes atlasCoverageTicker{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.coverage-heading{text-align:center;padding:65px 0 35px;max-width:850px;margin:auto}
.coverage-heading>span{display:block;color:var(--accent-gold);font-size:12px;font-weight:800;letter-spacing:2px;text-transform:uppercase;margin-bottom:10px}
.coverage-heading h2{margin:0 0 14px;font-size:40px;color:var(--primary-blue)}
.coverage-heading p{margin:0;color:#666;line-height:1.7}
.coverage-layout{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:stretch}
.coverage-map-card{background:#eef7fa;border:1px solid rgba(0,0,0,.07);border-radius:18px;min-height:390px;overflow:hidden;position:relative}
.coverage-map{position:absolute;inset:20px;background:linear-gradient(145deg,#dff1f6,#eef7fa);border-radius:14px;overflow:hidden}
.coverage-map::before{content:'';position:absolute;inset:10% 10%;border:2px solid rgba(38,146,180,.18);border-radius:40%;transform:rotate(-8deg)}
.coverage-map-outline{position:absolute;inset:5% 4%;width:92%;height:90%;overflow:visible;z-index:1;filter:drop-shadow(0 3px 3px rgba(7,29,59,.12))}
.coverage-state-outline{fill:rgba(43,145,181,.11);stroke:#0b4f78;stroke-width:.8;vector-effect:non-scaling-stroke;stroke-linejoin:round}
.coverage-map-outline-fallback{display:none}
.map-dot{position:absolute;width:18px;height:18px;border-radius:50%;background:#2b91b5;border:4px solid #fff;box-shadow:0 0 0 10px rgba(43,145,181,.16),0 0 0 20px rgba(43,145,181,.08);animation:coveragePulse 2.2s ease-out infinite}
.dot-ny{left:72%;top:28%}.dot-fl{left:70%;top:72%}.dot-tx{left:48%;top:65%}.dot-ca{left:18%;top:53%}.dot-il{left:58%;top:38%}.dot-co{left:39%;top:40%}
@keyframes coveragePulse{0%{box-shadow:0 0 0 4px rgba(43,145,181,.28),0 0 0 10px rgba(43,145,181,.12)}70%{box-shadow:0 0 0 14px rgba(43,145,181,0),0 0 0 30px rgba(43,145,181,0)}100%{box-shadow:0 0 0 4px rgba(43,145,181,0),0 0 0 10px rgba(43,145,181,0)}}
.coverage-directory{border:1px solid rgba(0,0,0,.08);border-radius:18px;background:#fff;padding:24px}
.coverage-tabs{display:flex;flex-wrap:wrap;border-bottom:1px solid #ddd;margin-bottom:20px}
.coverage-tab{appearance:none;border:0;background:transparent;padding:13px 15px;color:#333;font-size:13px;cursor:pointer;border-bottom:2px solid transparent}.coverage-tab.active,.coverage-tab:hover{color:#2b91b5;border-bottom-color:#2b91b5}
.coverage-states{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#e5e8eb;border:1px solid #e5e8eb}
.coverage-states a{background:#fff;padding:18px 16px;text-decoration:none;color:#333;font-size:14px}.coverage-states a:hover{color:#2b91b5}.coverage-states a:last-child{grid-column:1/-1;font-weight:800;color:var(--primary-blue)}
@media(max-width:900px){.coverage-layout{grid-template-columns:1fr}.coverage-map-card{min-height:330px}}
@media(max-width:560px){.us-coverage-section{padding-bottom:48px}.coverage-heading{padding:42px 8px 24px}.coverage-heading h2{font-size:clamp(28px,8vw,32px);line-height:1.12}.coverage-heading p{font-size:14px;line-height:1.6}.coverage-layout{gap:18px}.coverage-map-card{min-height:220px;border-radius:14px}.coverage-map{inset:12px;border-radius:10px}.coverage-map-outline{inset:7% 3%;width:94%;height:86%}.coverage-directory{padding:16px;border-radius:14px}.coverage-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;gap:0;margin-bottom:16px}.coverage-tab{min-width:0;padding:12px 6px;font-size:12px;white-space:normal;line-height:1.25}.coverage-states{grid-template-columns:1fr}.coverage-states a{padding:15px 14px}.coverage-states a:last-child{grid-column:auto}}
