/* AutoImov Moderno 1.4.0
   Folha única e consolidada (substitui as camadas 1.2 a 1.3.9).
   As cores primária, secundária e de destaque vêm das configurações do plugin. */

:root{
  --aim-primary:#073b60;
  --aim-secondary:#136a9b;
  --aim-accent:#20c5cd;
  --aim-ink:#1e2a38;
  --aim-muted:#64748b;
  --aim-line:#e1e7ee;
  --aim-paper:#f4f6f9;
  --aim-sand:#e9f0f7;
  --aim-serif:'Source Serif 4',Georgia,'Times New Roman',serif;
  --aim-sans:'Source Sans 3',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
}

/* ---------- Base ---------- */
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--aim-paper);color:var(--aim-ink);font:16px/1.65 var(--aim-sans)}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-family:var(--aim-serif);font-weight:600;line-height:1.25;color:var(--aim-primary)}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
img{max-width:100%;display:block}
:focus-visible{outline:2px solid var(--aim-secondary);outline-offset:2px}
.aim-container{width:min(1440px,calc(100% - 48px));margin:0 auto}
.aim-skip{position:absolute;top:-100px;left:10px;background:#fff;padding:12px;z-index:100}
.aim-skip:focus{top:10px}

/* ---------- Botões ---------- */
.aim-button,.aim-header-cta{display:inline-flex;justify-content:center;align-items:center;min-height:44px;padding:10px 20px;background:var(--aim-primary);color:#fff;border:0;border-radius:6px;font-size:15px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s}
.aim-button:hover,.aim-header-cta:hover{background:var(--aim-secondary);color:#fff}

/* ---------- Topo ---------- */
.aim-top-strip{background:var(--aim-primary);color:#dbe7f0;font-size:13px;padding:7px 0}
.aim-top-strip .aim-container{display:flex;justify-content:space-between;gap:16px}
.aim-header{position:relative;z-index:20;background:#fff;border-bottom:1px solid var(--aim-line);box-shadow:0 1px 4px rgba(16,42,67,.05)}
.aim-header-inner{min-height:80px;display:flex;justify-content:space-between;align-items:center;gap:24px}
.aim-logo{font:700 24px var(--aim-serif);color:var(--aim-primary)}
.aim-logo img{width:auto;max-width:225px;max-height:56px;object-fit:contain}
.aim-nav{display:flex;align-items:center;gap:26px}
.aim-nav a{font-size:15px;font-weight:600;color:var(--aim-ink);padding:4px 0;border-bottom:2px solid transparent}
.aim-nav a:hover{color:var(--aim-primary);border-bottom-color:var(--aim-primary)}
.aim-menu-toggle{display:none;border:1px solid var(--aim-line);background:#fff;border-radius:6px;min-height:42px;padding:0 14px;font-weight:600;color:var(--aim-ink);cursor:pointer}

/* ---------- Banner da home ---------- */
.aim-hero-slider{position:relative;width:100%;aspect-ratio:1920/500;overflow:hidden;isolation:isolate;background:var(--aim-primary)}
.aim-slides,.aim-slide,.aim-slide-image-link{position:absolute;inset:0;display:block;width:100%;height:100%}
.aim-slide{opacity:0;visibility:hidden;transition:opacity .6s ease,visibility .6s ease}
.aim-slide.is-active{opacity:1;visibility:visible;z-index:1}
/* a arte do banner aparece inteira, sem cortes */
.aim-slide img{width:100%;height:100%;object-fit:contain;object-position:center}
.aim-slider-controls{position:absolute;z-index:5;left:50%;bottom:14px;transform:translateX(-50%);display:flex;align-items:center}
/* bolinhas sobre uma cápsula escura translúcida: aparecem em banner claro ou escuro */
.aim-slider-dots{display:flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;background:rgba(0,0,0,.4)}
.aim-slider-dots button{width:10px;height:10px;border:0;border-radius:50%;padding:0;background:rgba(255,255,255,.6);cursor:pointer}
.aim-slider-dots button:hover{background:#fff}
.aim-slider-dots button.is-active{width:10px;background:#fff;box-shadow:0 0 0 2px rgba(255,255,255,.45)}
.aim-slider-controls button:focus-visible{outline:2px solid #fff;outline-offset:3px}
.aim-hero-slider.has-no-banner{aspect-ratio:auto;min-height:340px;display:flex;align-items:center}
.aim-hero-slider-content{position:relative;z-index:3;padding:56px 0}
.aim-hero-slider-content h1{font-size:clamp(30px,4.6vw,52px);line-height:1.15;color:#fff;max-width:720px;margin:0 0 16px}
.aim-hero-slider-content p{color:#e8f0f6;font-size:clamp(16px,1.8vw,19px);max-width:560px;margin-bottom:24px}
.aim-hero-slider-content .aim-button{background:#fff;color:var(--aim-primary)}
.aim-hero-slider-content .aim-button:hover{background:var(--aim-sand);color:var(--aim-primary)}

/* ---------- Busca ---------- */
.aim-search-shell,.aim-archive-search{background:#fff;border:1px solid var(--aim-line);border-radius:8px;padding:20px 22px;box-shadow:0 4px 18px rgba(16,42,67,.07)}
.aim-search-shell{margin-top:28px}
.aim-archive-search{margin-top:24px}
.aim-search-title{font:600 19px var(--aim-serif);color:var(--aim-primary);margin-bottom:14px}
.aim-search-form{display:grid;grid-template-columns:1.1fr 1.1fr 1.2fr 1.05fr auto;align-items:end;gap:12px}
.aim-search-form label{min-width:0;display:grid;gap:5px;color:var(--aim-ink);font-size:14px;font-weight:600}
.aim-search-form :is(select,input){width:100%;height:44px;padding:0 12px;border:1px solid #c9d3de;border-radius:6px;background:#fff;color:var(--aim-ink)}
.aim-search-form :is(select,input):focus{border-color:var(--aim-secondary);outline:2px solid rgba(19,106,155,.18);outline-offset:0}
.aim-search-form .aim-button{height:44px}

/* ---------- Seções e listagem ---------- */
.aim-section{padding-top:64px;padding-bottom:16px}
.aim-section-heading{display:flex;align-items:end;justify-content:space-between;gap:22px;margin-bottom:22px}
.aim-section-heading h2{font-size:clamp(24px,2.6vw,30px);margin:0 0 4px}
.aim-section-heading p{color:var(--aim-muted);margin:0}
.aim-section-heading>a{color:var(--aim-secondary);font-weight:600;white-space:nowrap;border-bottom:1px solid currentColor}
.aim-section-heading>a:hover{color:var(--aim-primary)}
.aim-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.aim-empty,.aim-no-results{grid-column:1/-1;color:var(--aim-muted);margin:0}
.aim-no-results{background:#fff;border:1px solid var(--aim-line);border-radius:8px;padding:28px;text-align:center}

/* ---------- Card de imóvel ---------- */
.aim-card{min-width:0;background:#fff;border:1px solid var(--aim-line);border-radius:8px;overflow:hidden;box-shadow:0 1px 3px rgba(16,42,67,.06);transition:border-color .15s,box-shadow .15s}
.aim-card:hover{border-color:#b8c6d6;box-shadow:0 8px 22px rgba(16,42,67,.10)}
.aim-card-photo{display:block;position:relative;aspect-ratio:4/3;overflow:hidden;background:#e6ebf1}
/* foto sem zoom: nenhuma transformação nem transição, em nenhum estado */
.aim-card-photo img{width:100%;height:100%;object-fit:cover;object-position:center;transform:none;transition:none}
.aim-placeholder{height:100%;display:grid;place-items:center;font-size:14px;color:var(--aim-muted)}
.aim-tag{position:absolute;left:12px;top:12px;background:rgba(255,255,255,.96);border-radius:4px;padding:3px 9px;font-size:13px;font-weight:600;color:var(--aim-primary)}
.aim-card-body{padding:20px 22px 22px;display:flex;flex-direction:column;min-height:210px}
.aim-overline{font-size:14px;font-weight:600;color:var(--aim-muted)}
.aim-card h3{font-size:20px;line-height:1.3;margin:4px 0 8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.aim-card h3 a:hover{text-decoration:underline;text-underline-offset:3px}
.aim-location{font-size:15px;color:var(--aim-muted);margin:0 0 10px}
.aim-features{font-size:15px;color:var(--aim-ink);margin:0 0 16px}
.aim-card-bottom{display:flex;justify-content:space-between;align-items:baseline;gap:10px;border-top:1px solid var(--aim-line);margin-top:auto;padding-top:12px}
.aim-card-bottom strong{font:700 23px var(--aim-serif);color:var(--aim-primary)}
.aim-per{font:400 14px var(--aim-sans);color:var(--aim-muted)}
.aim-more{font-size:15px;font-weight:600;color:var(--aim-secondary);white-space:nowrap}
.aim-more:hover{text-decoration:underline;text-underline-offset:3px}

/* ---------- Página Quem somos ---------- */
.aim-about-page h2{font-size:clamp(24px,3vw,30px);margin:0 0 14px}
.aim-about-page p{color:#3d4b5c}
.aim-about-page-img{width:100%;max-height:380px;object-fit:cover;border-radius:8px;margin-bottom:24px}

/* ---------- Rodapé ---------- */
.aim-footer{background:var(--aim-primary);color:#dbe7f0;margin-top:64px;padding:52px 0 20px}
.aim-footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr .8fr;gap:34px}
.aim-footer h3{font-size:17px;color:#fff;margin-bottom:10px}
.aim-footer p,.aim-footer a{display:block;margin:6px 0;font-size:15px;color:#d3e1ec}
.aim-footer a:hover{color:#fff;text-decoration:underline}
.aim-copyright{border-top:1px solid rgba(255,255,255,.18);margin-top:32px;padding-top:18px;font-size:13px;color:#b9cddc}
.aim-whatsapp{position:fixed;bottom:20px;right:20px;z-index:30;background:#25a45c;border-radius:50%;width:54px;height:54px;box-shadow:0 3px 12px rgba(0,0,0,.25);display:grid;place-items:center}
.aim-whatsapp:hover{background:#1f8d4e}

/* ---------- Página de listagem ---------- */
.aim-page-intro{padding:48px 0;background:var(--aim-sand)}
.aim-page-intro h1{font-size:clamp(28px,4vw,38px);margin:0 0 6px}
.aim-page-intro p{color:var(--aim-muted);margin:0}
.aim-pagination{text-align:center;padding:32px 0}
.aim-pagination .page-numbers{display:inline-block;padding:7px 12px;margin:2px;border:1px solid var(--aim-line);border-radius:6px;background:#fff}
.aim-pagination .page-numbers.current{background:var(--aim-primary);border-color:var(--aim-primary);color:#fff}
.aim-pagination a.page-numbers:hover{border-color:var(--aim-primary)}

/* ---------- Página do imóvel ---------- */
.aim-single{padding-top:28px;padding-bottom:64px}
.aim-breadcrumb{color:var(--aim-muted);font-size:14px;margin-bottom:24px}
.aim-breadcrumb a:hover{text-decoration:underline}
.aim-single-head{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:22px}
.aim-single-head h1{font-size:clamp(26px,3.4vw,38px);margin:4px 0 6px}
.aim-single-head p{margin:0;color:var(--aim-muted)}
.aim-single-head>strong{font:700 28px var(--aim-serif);color:var(--aim-primary);white-space:nowrap}
.aim-photo-grid{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:190px 190px;gap:8px;border-radius:8px;overflow:hidden}
.aim-single-image{background:#e1e7ee;overflow:hidden}
.aim-single-image img{width:100%;height:100%;object-fit:cover}
.aim-single-image.is-main{grid-row:span 2}
.aim-fallback-photo{display:grid;place-items:center;color:var(--aim-muted)}
.aim-single-content{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:40px;margin-top:36px;align-items:start}
.aim-content-block{border-bottom:1px solid var(--aim-line);padding-bottom:28px;margin-bottom:30px}
.aim-content-block h2{font-size:24px}
.aim-content-block h3{font-size:19px;margin-top:26px}
.aim-detail-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.aim-detail-features div{background:#fff;border:1px solid var(--aim-line);border-radius:6px;padding:12px 14px;display:grid;gap:2px}
.aim-detail-features span{font-size:14px;color:var(--aim-muted)}
.aim-detail-features b{font-size:18px}
.aim-description{color:#3d4b5c;line-height:1.8}
.aim-contact-card{position:sticky;top:20px;background:#fff;border:1px solid var(--aim-line);border-radius:8px;padding:24px;display:grid;gap:14px}
.aim-contact-card>span,.aim-contact-card small{color:var(--aim-muted);font-size:14px}
.aim-contact-card>strong{font:700 30px var(--aim-serif);color:var(--aim-primary)}
.aim-contact-card p{color:#3d4b5c;margin:0}

/* ---------- Páginas de texto ---------- */
.aim-content-page{min-height:50vh;padding:56px 0;max-width:860px}
.aim-content-page h1{font-size:clamp(28px,4vw,36px)}
.aim-content-box{background:#fff;border:1px solid var(--aim-line);border-radius:8px;padding:32px;line-height:1.75}
.aim-contact-info{margin-top:24px;padding-top:20px;border-top:1px solid var(--aim-line)}
.aim-contact-info p{margin:0 0 6px}

/* ---------- Telas médias: 3 cards por linha para não espremer ---------- */
@media(max-width:1199px){.aim-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* ---------- Tablet ---------- */
@media(max-width:1100px){
  .aim-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .aim-nav{gap:16px}
  .aim-header-cta{display:none}
  .aim-search-form{grid-template-columns:repeat(2,minmax(0,1fr))}
  .aim-search-form .aim-button{grid-column:span 2}
  .aim-footer-grid{grid-template-columns:repeat(2,1fr)}
}

/* ---------- Celular ---------- */
@media(max-width:760px){
  .aim-container{width:min(100% - 28px,620px)}
  .aim-top-strip .aim-container{font-size:12px}
  .aim-header-inner{min-height:66px}
  .aim-logo{font-size:20px}
  .aim-logo img{max-height:44px;max-width:180px}
  .aim-menu-toggle{display:block}
  .aim-nav{display:none;position:absolute;left:0;top:100%;width:100%;background:#fff;border-bottom:1px solid var(--aim-line);padding:8px 22px 14px;flex-direction:column;align-items:stretch;gap:0}
  .aim-nav.is-open{display:flex}
  .aim-nav a{padding:12px 0;border-bottom:1px solid var(--aim-line)}
  .aim-hero-slider.has-no-banner{min-height:300px}
  .aim-slider-controls{bottom:6px}
  .aim-slider-dots{gap:7px;padding:5px 10px}
  .aim-slider-dots button{width:8px;height:8px}
  .aim-slider-dots button.is-active{width:8px}
  .aim-search-shell{margin-top:18px;padding:16px}
  .aim-archive-search{padding:16px}
  .aim-search-form{grid-template-columns:1fr}
  .aim-search-form .aim-button{grid-column:auto}
  .aim-section{padding-top:48px}
  .aim-section-heading{align-items:start}
  .aim-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .aim-card-body{padding:12px;min-height:170px}
  .aim-card h3{font-size:16px}
  .aim-location,.aim-features{font-size:13px}
  .aim-card-bottom strong{font-size:17px}
  .aim-more{display:none}
  .aim-footer-grid{gap:20px}
  .aim-single-head{align-items:start;flex-direction:column;gap:10px}
  .aim-photo-grid{grid-template-columns:1fr 1fr;grid-template-rows:220px 115px}
  .aim-single-image.is-main{grid-column:span 2;grid-row:auto}
  .aim-single-content{grid-template-columns:1fr;gap:8px}
  .aim-contact-card{position:static}
  .aim-detail-features{grid-template-columns:repeat(2,minmax(0,1fr))}
  .aim-content-box{padding:22px}
}

/* ---------- Celular pequeno: card em coluna única, foto inteira no formato normal ---------- */
@media(max-width:480px){
  .aim-grid{grid-template-columns:1fr}
  .aim-card-body{min-height:0;padding:14px 16px 16px}
  .aim-card h3{font-size:18px}
  .aim-location,.aim-features{font-size:14px}
  .aim-card-bottom strong{font-size:20px}
  .aim-more{display:inline}
  .aim-top-strip .aim-container span:first-child{display:none}
  .aim-top-strip .aim-container{justify-content:flex-end}
  .aim-footer-grid{grid-template-columns:1fr}
  .aim-photo-grid{grid-template-rows:180px 90px}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .aim-slide,.aim-card,.aim-button{transition:none}
}
