/*
Theme Name: MRAIMOB
Theme URI: https://mraimob.com.br/
Author: Robson Ramalho
Description: Tema próprio da MRA Imobiliária.
Version: 0.6.1
Requires at least: 6.6
Requires PHP: 8.1
Text Domain: mraimob
License: GPL-2.0-or-later
*/

:root {
	--mra-color-primary: #16324f;
	--mra-color-accent: #c89b3c;
	--mra-color-text: #18212b;
	--mra-color-surface: #ffffff;
	--mra-color-muted: #f3f5f7;
	--mra-container: 75rem;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
}

body {
	margin: 0;
	color: var(--mra-color-text);
	background: var(--mra-color-surface);
	font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	line-height: 1.6;
}

a { color: var(--mra-color-primary); }
img { max-width: 100%; height: auto; }
.mra-container { width: min(100% - 2rem, var(--mra-container)); margin-inline: auto; }
.mra-skip-link { position: absolute; left: -9999px; }
.mra-skip-link:focus { z-index: 9999; top: 1rem; left: 1rem; padding: .75rem 1rem; background: #fff; color: #000; }
.site-header, .site-footer { padding-block: 1rem; }
.site-main { min-height: 60vh; padding-block: 2rem; }
.site-title { font-size: 1.25rem; font-weight: 700; text-decoration: none; }
.primary-menu { display: flex; flex-wrap: wrap; gap: 1rem; margin: 0; padding: 0; list-style: none; }

@media (min-width: 48rem) {
	.site-header__inner { display: flex; align-items: center; justify-content: space-between; gap: 2rem; }
}

h1,h2,h3{line-height:1.15;letter-spacing:-.03em}h1{font-size:clamp(2.2rem,5vw,4.8rem)}h2{font-size:clamp(1.7rem,3vw,2.7rem)}h3{font-size:1.25rem}
.site-header{border-bottom:1px solid #e3e8ed;background:#fff}.site-title{color:#16324f;letter-spacing:-.03em}.site-header__inner{display:flex;gap:1rem;align-items:center;justify-content:space-between;flex-wrap:wrap}
.primary-menu a{text-decoration:none;font-weight:600}.primary-menu li{position:relative}.primary-menu .sub-menu{list-style:none;padding:1rem;background:white}.primary-menu a:hover{text-decoration:underline}
.site-main{padding:0}.home-hero{background:#16324f;color:#fff;padding:5rem 0}.hero-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:4rem;align-items:center}.hero-layout h1{max-width:15ch;margin:.4em 0}.hero-description{max-width:50ch;font-size:1.15rem;color:#e0e7ed}
.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:.76rem;font-weight:750;color:#86611b}.home-hero .eyebrow{color:#e8c477}
.hero-note{border:1px solid #5c7184;padding:3rem;border-radius:1rem;background:linear-gradient(135deg,#254c6d,#122a42)}.hero-monogram{font-size:clamp(3rem,8vw,7rem);font-weight:800;letter-spacing:-.08em;color:#e8c477}.hero-note p{font-size:1.6rem;max-width:17ch}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.75rem 1.3rem;background:#e8bd63;color:#172c41;border:1px solid transparent;border-radius:.35rem;text-decoration:none;font:inherit;font-weight:700;cursor:pointer}.button:hover{background:#f4cf85}.button--ghost{background:white;border-color:#ced7df}.button--full{width:100%}
.catalog-section,.region-section,.service-section{padding-block:3.5rem}.property-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;padding:1.5rem;background:#f3f5f7;border:1px solid #dde4ea;border-radius:.65rem;align-items:end}.property-filters label{display:block;font-size:.85rem;font-weight:700;margin-bottom:.4rem}
input,select,textarea{max-width:100%;width:100%;min-height:46px;padding:.65rem;border:1px solid #a2afba;border-radius:.25rem;background:#fff;font:inherit;color:#18212b}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin:3rem 0 1.5rem}.section-heading h2{margin:.3rem 0;max-width:24ch}
.property-grid,.mraimob-shortcode-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}.property-card{border:1px solid #dce3e9;border-radius:.65rem;overflow:hidden;background:white}.property-card__media{display:block;aspect-ratio:3/2;background:#ecf0f3;overflow:hidden}.property-card__media img{width:100%;height:100%;object-fit:cover;display:block}.property-card__placeholder{display:grid;place-items:center;width:100%;height:100%;min-height:12rem;background:linear-gradient(135deg,#dce6ec,#b9cbd6);font-size:3rem;font-weight:800;color:#16324f}.property-card__body{padding:1.3rem}.property-card__location{font-size:.85rem;color:#586976}.property-card__title{margin:.5rem 0}.property-card__title a{text-decoration:none}.property-card__price{font-size:1.4rem;font-weight:750;color:#16324f}.property-card__facts{display:flex;flex-wrap:wrap;gap:.7rem;list-style:none;padding:0;font-size:.85rem;min-height:2rem}
.region-section{background:#f3f5f7}.region-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.region-card{display:flex;flex-direction:column;gap:.5rem;padding:1.5rem;background:white;border:1px solid #dce3e9;border-radius:.5rem;text-decoration:none}.region-card span{font-size:.9rem;color:#526572}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;margin:2rem 0}.service-grid span{color:#86611b;font-weight:800}.site-footer{background:#10263b;color:#eef3f7;padding:2rem 0}.site-footer a{color:#eef3f7}
.page-hero{background:#f3f5f7;padding:2.5rem 0}.page-hero h1{font-size:3rem}.property-single,.content-page,.empty-state--page{padding-block:2rem}.breadcrumbs{display:flex;gap:1rem;font-size:.85rem}.property-single__heading{display:flex;align-items:center;justify-content:space-between;gap:2rem}.property-single h1{font-size:clamp(2rem,4vw,3.2rem)}.property-single__price{font-size:1.6rem;font-weight:750;white-space:nowrap}.property-single__media img{display:block;width:100%;max-height:36rem;object-fit:contain;background:#f3f5f7;border-radius:.6rem}.property-single__layout{display:grid;grid-template-columns:2fr 1fr;gap:2rem;margin-top:2rem}.contact-card{background:#f3f5f7;padding:1.5rem;border-radius:.5rem;align-self:start}.property-facts{display:flex;list-style:none;gap:1.5rem;padding:0;flex-wrap:wrap}.property-facts li{display:flex;flex-direction:column}.property-facts strong{font-size:1.5rem}.property-facts span{font-size:.8rem}.content-page{max-width:52rem}.entry-content{overflow-wrap:anywhere}.empty-state{padding:2rem;grid-column:1/-1}.pagination{margin-top:2rem}.page-numbers{display:inline-block;padding:.6rem}.page-numbers.current{background:#16324f;color:white}
:focus-visible{outline:3px solid #b97800;outline-offset:4px}
@media(max-width:900px){.hero-layout{grid-template-columns:1fr}.hero-note{display:none}.property-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.property-single__layout{grid-template-columns:1fr}.property-single__heading{display:block}.region-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.home-hero{padding:3rem 0}.property-grid,.region-grid,.service-grid,.mraimob-shortcode-grid{grid-template-columns:1fr}.property-filters{grid-template-columns:1fr;padding:1rem}.section-heading{display:block}.section-heading>a{display:inline-block;margin-top:1rem}.site-header__inner{align-items:flex-start}.primary-menu{gap:.75rem;font-size:.9rem}.catalog-section,.region-section,.service-section{padding-block:2rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Home property banner: stable image ratio, scoped controls, mobile visible. */
.hero-layout>div,.mra-hero-carousel{min-width:0}.mra-hero-carousel{border:1px solid #5c7184;border-radius:1rem;overflow:hidden;background:#10283f;box-shadow:0 20px 50px #0002}.mra-hero-slide[hidden],.mra-hero-controls[hidden]{display:none}.mra-hero-image{aspect-ratio:4/3;overflow:hidden;background:#254c6d}.mra-hero-image img{display:block;width:100%;height:100%;object-fit:cover}.mra-hero-caption{padding:1.5rem;overflow-wrap:anywhere}.mra-hero-caption .eyebrow{margin:0 0 .5rem}.mra-hero-caption h2{font-size:clamp(1.3rem,2.2vw,1.8rem);line-height:1.25;margin:0 0 .6rem;color:#fff}.mra-hero-location{margin:.5rem 0;color:#e0e7ed}.mra-hero-price{font-size:1.3rem;font-weight:750;margin:.6rem 0 1rem}.mra-hero-controls{display:flex;align-items:center;justify-content:center;gap:.25rem;flex-wrap:wrap;padding:.6rem;border-top:1px solid #5c7184}.mra-hero-controls button{font:inherit;cursor:pointer;min-width:44px;min-height:44px;border:1px solid transparent;border-radius:.4rem;color:white;background:transparent;padding:.5rem}.mra-hero-controls button:hover{background:#254c6d}.mra-hero-controls button:focus-visible,.mra-hero-carousel a:focus-visible{outline:3px solid #e8c477;outline-offset:-3px}.mra-hero-dots{display:flex;flex-wrap:wrap;justify-content:center}.mra-hero-dots button{min-width:32px;padding:.4rem}.mra-hero-dots span{display:block;width:8px;height:8px;border:1px solid #e8c477;border-radius:50%;margin:auto}.mra-hero-dots [aria-current=true] span{background:#e8c477;transform:scale(1.3)}
@media(max-width:900px){.mra-hero-carousel{width:100%;max-width:38rem;justify-self:center}.hero-layout{gap:2rem}.mra-hero-image{aspect-ratio:16/10}}

/* Single property 0.6.1: shared visual hierarchy and accessible gallery. */
.property-single{--property-line:#dbe3e9;--property-soft:#f5f7f9;--property-muted:#5d6c78;background:#fff}.property-single__intro{padding:2rem 0 1.25rem}.property-single__badges{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 .85rem}.property-single__badge{display:inline-flex;padding:.35rem .7rem;border-radius:999px;background:#edf2f5;color:var(--mra-color-primary);font-size:.78rem;font-weight:750}.property-single__heading{align-items:end}.property-single__heading h1{max-width:20ch;margin:.25rem 0}.property-code{margin:0;color:var(--property-muted);font-size:.85rem}.property-single__price{margin:0;color:var(--mra-color-primary)}
.property-single__media{position:relative;overflow:hidden;border-radius:1rem;background:var(--property-soft)}.property-single__media>a{display:block}.property-single__media img{width:100%;max-height:42rem;object-fit:cover;transition:transform .25s ease}.property-single__media a:hover img{transform:scale(1.015)}.property-single__media-hint{position:absolute;right:1rem;bottom:1rem;padding:.55rem .8rem;border-radius:999px;background:#10263bd9;color:#fff;font-size:.8rem;font-weight:700;pointer-events:none}
.property-single__layout{grid-template-columns:minmax(0,2fr) minmax(18rem,1fr);gap:2.25rem;align-items:start}.property-single__content{min-width:0}.property-facts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem;margin:0 0 2.5rem}.property-facts li{min-height:6rem;justify-content:center;padding:1rem;border:1px solid var(--property-line);border-radius:.75rem;background:var(--property-soft)}.property-facts strong{font-size:1.35rem;color:var(--mra-color-primary)}.property-facts span{color:var(--property-muted);font-size:.78rem}
.mra-property-section{padding:1.75rem 0;border-top:1px solid var(--property-line)}.mra-property-section>h2{margin:0 0 1rem;font-size:clamp(1.5rem,2.4vw,2rem)}.mra-property-story{font-size:1.03rem}.mra-property-story>p{max-width:70ch}.property-features{display:flex;flex-wrap:wrap;gap:.65rem;margin:0;padding:0;list-style:none}.property-features li{display:inline-flex;align-items:center;min-height:2.7rem;padding:.6rem .85rem;border:1px solid #cbd7df;border-radius:.55rem;background:#fff;color:#29475a;font-weight:650}.property-features li:before{content:'✓';margin-right:.5rem;color:#80601c;font-weight:800}
.contact-card{position:sticky;top:2rem;padding:1.5rem;border:1px solid var(--property-line);border-radius:1rem;background:var(--property-soft);box-shadow:0 14px 35px #16324f12}.contact-card h2{font-size:1.65rem;margin:.35rem 0}.contact-card input,.contact-card select,.contact-card textarea{background:#fff}
.mra-demo-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.mra-demo-content figure a{display:block;position:relative;border-radius:.7rem;overflow:hidden}.mra-demo-content figure a:after{content:'Ampliar';position:absolute;right:.65rem;bottom:.65rem;padding:.35rem .6rem;border-radius:999px;background:#10263bd9;color:#fff;font-size:.75rem;font-weight:700}.mra-demo-content figure img{transition:transform .2s ease}.mra-demo-content figure a:hover img{transform:scale(1.02)}
.mra-lightbox{width:min(96vw,74rem);max-width:none;padding:0;border:0;border-radius:.8rem;background:#101820;color:#fff;box-shadow:0 30px 90px #0009}.mra-lightbox::backdrop{background:#071019d9}.mra-lightbox__stage{display:grid;grid-template-columns:3.5rem minmax(0,1fr) 3.5rem;align-items:center;min-height:min(80vh,50rem)}.mra-lightbox__figure{margin:0;padding:1rem;text-align:center}.mra-lightbox__image{display:block;max-width:100%;max-height:75vh;margin:auto;object-fit:contain}.mra-lightbox__caption{padding:.8rem;color:#e7edf2}.mra-lightbox button{width:44px;height:44px;border:1px solid #ffffff55;border-radius:50%;background:#10263bcc;color:#fff;font-size:1.6rem;cursor:pointer}.mra-lightbox__close{position:absolute;z-index:2;right:.8rem;top:.8rem}.mra-lightbox button:focus-visible{outline:3px solid #e8bd63;outline-offset:3px}
@media(max-width:900px){.property-facts{grid-template-columns:repeat(3,minmax(0,1fr))}.contact-card{position:static}.property-single__layout{grid-template-columns:1fr}}@media(max-width:600px){.property-single__intro{padding-top:1.25rem}.property-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.property-facts li{min-height:5rem}.mra-demo-gallery{grid-template-columns:1fr}.mra-lightbox{width:100vw;height:100vh;max-height:none;border-radius:0}.mra-lightbox__stage{grid-template-columns:2.8rem minmax(0,1fr) 2.8rem;min-height:100vh}.mra-lightbox__figure{padding:.5rem}.mra-lightbox__image{max-height:82vh}}
@media(prefers-reduced-motion:reduce){.property-single__media img,.mra-demo-content figure img{transition:none}}
