/* Página inicial e cards de imóveis */
.icon{flex:none;display:inline-block;vertical-align:middle}

/* Primeira dobra */
.hero{position:relative;isolation:isolate;background:radial-gradient(900px 480px at 88% 10%,rgba(189,147,76,.16),transparent 62%),radial-gradient(700px 420px at 0% 100%,rgba(23,63,53,.08),transparent 60%),var(--cream)}
.hero::after{content:"";position:absolute;inset:0;z-index:-1;background-image:radial-gradient(rgba(23,63,53,.09) 1px,transparent 1px);background-size:22px 22px;mask-image:linear-gradient(90deg,transparent 40%,#000);-webkit-mask-image:linear-gradient(90deg,transparent 40%,#000);pointer-events:none}
.hero h1 em{font-style:italic}
.hero-trust{display:grid;gap:9px;margin:26px 0 0;padding:0;list-style:none;color:#3f4d45;font-size:13px;font-weight:600}
.hero-trust li{display:flex;align-items:center;gap:9px}
.hero-trust li::before{content:"";flex:none;width:18px;height:18px;border-radius:50%;background:var(--brand) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/11px no-repeat}
.search-panel{border:1px solid rgba(23,63,53,.06);padding:22px}
.search-title{margin:0 0 14px;font:600 21px/1.2 "Playfair Display",serif;color:var(--ink)}
.search-price .button{min-height:46px}

/* Cards de imóveis */
.property-card{position:relative;display:flex;flex-direction:column;border-radius:16px;box-shadow:0 1px 2px rgba(22,46,38,.04)}
.property-card:hover{transform:translateY(-4px);box-shadow:0 20px 40px rgba(22,46,38,.12);border-color:#d5ddd7}
.property-photo{height:auto;aspect-ratio:4/3;background:linear-gradient(135deg,#e4e9e5,#d2dad4)}
.property-photo img{transition:transform .45s ease}
.property-card:hover .property-photo img{transform:scale(1.05)}
.property-photo::after{content:"";position:absolute;inset:auto 0 0;height:40%;background:linear-gradient(transparent,rgba(10,30,24,.18));pointer-events:none}
.photo-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#7b8a81;font-size:12px;font-weight:600}
.photo-placeholder .icon{width:34px;height:34px;stroke-width:1.3;opacity:.7}
.property-tag{top:14px;left:14px;z-index:1;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.95);color:var(--brand);box-shadow:0 2px 8px rgba(0,0,0,.08);letter-spacing:.7px}
.property-tag-rent{background:var(--brand);color:#fff}
.property-tag-sale_rent{background:var(--gold);color:#fff}
.property-content{display:flex;flex-direction:column;flex:1;padding:18px 18px 16px}
.property-type{margin:0 0 6px;color:var(--gold);font-size:10px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase}
.property-card h3{font-size:17px;line-height:1.3;letter-spacing:-.2px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.property-card h3 a::after{content:"";position:absolute;inset:0;z-index:2;border-radius:inherit}
.property-card h3 a:focus-visible{outline:none}
.property-card:has(h3 a:focus-visible){outline:3px solid var(--gold);outline-offset:3px}
.property-location{display:flex;align-items:center;gap:5px;margin:8px 0 16px;font-size:12.5px}
.property-location .icon{width:14px;height:14px;color:var(--gold)}
.property-specs{display:flex;flex-wrap:wrap;gap:6px 14px;margin:-2px 0 16px;padding:0;list-style:none;font-size:12px;color:#4d5a52}
.property-specs li{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
.property-specs li:not(:last-child){padding-right:0;border-right:0}
.property-specs .icon{width:14px;height:14px;color:var(--brand)}
.property-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:14px;border-top:1px solid var(--line)}
.property-price{margin:0;font-size:19px;letter-spacing:-.3px}
.property-more{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--cream);color:var(--brand);transition:background .2s ease,color .2s ease,transform .2s ease}
.property-card:hover .property-more{background:var(--brand);color:#fff;transform:translateX(2px)}

/* Categorias */
.category-grid{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(128px,40%);overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:16px;padding:4px 16px 10px;margin:0 -16px;scrollbar-width:none}
.category-grid::-webkit-scrollbar{display:none}
.category-card{scroll-snap-align:start;min-height:0;gap:3px;padding:18px 16px;border-radius:14px}
.category-card:hover{box-shadow:0 12px 26px rgba(22,46,38,.08)}
.category-icon{display:grid;place-items:center;width:42px;height:42px;margin-bottom:10px;border-radius:12px;background:rgba(189,147,76,.12);color:var(--gold);transition:background .2s ease,color .2s ease}
.category-icon .icon{width:21px;height:21px}
.category-card:hover .category-icon{background:var(--brand);color:#fff}
.category-card strong{font-size:14.5px}

@media(min-width:720px){
    .hero-trust{display:flex;flex-wrap:wrap;gap:10px 22px}.hero-trust li{white-space:nowrap}
    .search-panel{padding:28px}
    .category-grid{grid-auto-flow:row;grid-template-columns:repeat(5,1fr);grid-auto-columns:auto;overflow:visible;padding:0;margin:0}
}
@media(prefers-reduced-motion:reduce){
    .property-photo img,.property-more,.category-icon{transition:none}
    .property-card:hover .property-photo img{transform:none}
}
