/* ==========================================================================
   Páginas de empreendimento: mesma linguagem da home
   ========================================================================== */
.ehero .hero__frame{height:min(88svh,900px);min-height:560px}
.ehero .slide{opacity:1;visibility:visible}
.ehero .slide__in{padding-bottom:8.5rem}
.ehero .display--hero{font-size:clamp(3rem,1.8rem + 7vw,8rem)}
.ehero .line{white-space:normal}
.ehero .slide__stats{width:min(320px,100%)}
.static .ehero .hero__frame{height:800px}

/* ficha técnica (Nilsson) */
.ficha-strip{border-bottom:1px solid var(--line)}
.ficha-strip .wrap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.ficha-strip .fi{padding:1.6rem 1.5rem 1.6rem 0;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:.3rem}
.ficha-strip .fi + .fi{padding-left:1.5rem}
.ficha-strip .fi:last-child{border-right:0}
.ficha-strip dt{font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);font-weight:500}
.ficha-strip dd{font-family:var(--f-display);font-size:clamp(1.15rem,1rem + .7vw,1.6rem);font-weight:500;letter-spacing:-.02em;line-height:1.15;font-variant-numeric:tabular-nums}
.ficha-strip .fi--status dd{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;font-size:1.05rem}
.ficha-strip .fi--status .pill{background:var(--surface,transparent);color:var(--ink);border-color:var(--line-2);white-space:nowrap;line-height:1.3;letter-spacing:.07em}
/* complemento do status ("9 unidades disponiveis", "100% vendido") fica fora do selo, que nunca quebra */
.ficha-strip .fi__sub{font-family:var(--f-sans);font-size:.88rem;font-weight:500;letter-spacing:0;line-height:1.35;color:var(--ink-3)}

/* sobre */
.esobre{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:3rem 5rem;align-items:start}
.esobre__text p{color:var(--ink-2);font-size:clamp(1.05rem,1rem + .35vw,1.25rem);line-height:1.55;text-wrap:pretty}
.esobre__text p + p{margin-top:1rem}
.esobre__text .display{margin-bottom:1.5rem}
.esobre__media{position:relative;display:grid;grid-template-columns:repeat(12,1fr);padding-top:1rem}
.esobre__media figure{border-radius:var(--r-lg);overflow:hidden;background:var(--paper-2)}
.esobre__media img{width:100%;height:100%;object-fit:cover}
.esobre__media .fa{grid-column:1/9;grid-row:1;aspect-ratio:4/5}
.esobre__media .fb{grid-column:6/13;grid-row:1;align-self:end;margin-bottom:-3rem;aspect-ratio:4/3;border:6px solid var(--paper);box-shadow:0 30px 60px -30px rgba(37,58,110,.45)}

/* diferenciais numerados (98 Wireless) */
.difs{columns:3;column-gap:3rem;counter-reset:d}
.difs li{list-style:none;counter-increment:d;break-inside:avoid;display:grid;grid-template-columns:2.4rem 1fr;gap:.6rem;align-items:baseline;padding:1rem 0;border-top:1px solid var(--line);font-size:1.02rem;color:var(--ink)}
.difs li::before{content:counter(d,decimal-leading-zero);font-size:.72rem;letter-spacing:.1em;color:var(--ink-3);font-variant-numeric:tabular-nums;font-weight:500}

/* galeria */
.gal{display:grid;grid-template-columns:1fr 1.6fr 1fr;grid-auto-rows:250px;grid-auto-flow:row dense;gap:1.1rem}
.gal a{display:block;border-radius:var(--r-lg);overflow:hidden;background:var(--paper-2);min-height:0}
.gal img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.1s var(--ease)}
.gal a:hover img{transform:scale(1.03)}
.gal .g-tall{grid-row:span 2}
.gal .g-c1{grid-column:1} .gal .g-c2{grid-column:2} .gal .g-c3{grid-column:3}
.gal .g-full{grid-column:1/-1} .gal .g-wide{grid-column:1/3}
dialog.lb{border:0;padding:0;background:transparent;max-width:min(96vw,1400px);max-height:94vh;margin:auto}
dialog.lb::backdrop{background:rgba(16,25,48,.92);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
dialog.lb img{max-width:min(96vw,1400px);max-height:88vh;width:auto;height:auto;border-radius:var(--r-lg);display:block}
dialog.lb .lb__close{position:fixed;top:1.2rem;right:1.2rem;width:48px;height:48px;border-radius:50%;background:rgba(233,234,235,.12);color:var(--paper);border:1px solid rgba(233,234,235,.3);font-size:1.3rem;display:grid;place-items:center}
dialog.lb .lb__nav{position:fixed;top:50%;transform:translateY(-50%);width:52px;height:52px;border-radius:50%;background:rgba(233,234,235,.12);color:var(--paper);border:1px solid rgba(233,234,235,.3);font-size:1.2rem;display:grid;place-items:center}
dialog.lb .lb__prev{left:1.2rem} dialog.lb .lb__next{right:1.2rem}

/* vídeo / tour */
.embed{position:relative;border-radius:var(--r-xl);overflow:hidden;background:var(--night);aspect-ratio:16/9}
.embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.embed--tour{aspect-ratio:16/10}

/* localização */
.loc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:2.5rem 4rem;align-items:stretch}
.loc__text ul{list-style:none;margin:1.5rem 0 0;padding:0;display:flex;flex-direction:column;gap:.75rem}
.loc__text li{display:flex;gap:.8rem;align-items:baseline;font-size:1.02rem;color:var(--ink)}
.loc__text li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--ink-3);flex:none;transform:translateY(-2px)}
.loc__addr{margin-top:1.5rem;color:var(--ink-2)}
.loc__map{border-radius:var(--r-xl);overflow:hidden;background:var(--paper-2);min-height:380px;filter:grayscale(1) contrast(1.05);transition:filter .5s}
.loc__map:hover{filter:none}
.loc__map iframe{width:100%;height:100%;min-height:380px;border:0;display:block}

/* andamento: todas as etapas, duas colunas, barra por etapa */
.and__head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:2rem 4rem;margin-bottom:clamp(2.5rem,5vw,3.8rem)}
.and__resumo{display:flex;align-items:baseline;gap:1.1rem;white-space:nowrap}
.and__resumo .big{font-family:var(--f-display);font-weight:500;font-size:clamp(3rem, 2rem + 3.4vw, 4.6rem);letter-spacing:-.05em;line-height:.9;font-variant-numeric:tabular-nums}
.and__resumo .big i{font-style:normal;font-size:.38em;color:var(--paper-on-night);margin-left:.08em}
.and__resumo{align-items:baseline;gap:.7rem}
.and__resumo .cap{font-size:1rem;color:var(--paper-on-night);line-height:1;white-space:nowrap}

.etlist{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:1.5rem 4rem}
.et{display:grid;grid-template-columns:auto 1fr auto;gap:.15rem .9rem;align-items:baseline}
.et__n{font-size:.7rem;letter-spacing:.1em;color:var(--paper-on-night);font-variant-numeric:tabular-nums;font-weight:500;padding-top:.15rem}
.et__nome{font-size:1.05rem;font-weight:500;letter-spacing:-.01em;color:var(--paper)}
.et__val{font-size:.95rem;font-variant-numeric:tabular-nums;color:var(--paper-on-night);font-weight:500}
.et__bar{grid-column:2/-1;height:3px;border-radius:99px;background:rgba(233,234,235,.13);overflow:hidden;margin-top:.5rem}
.et__bar i{display:block;height:100%;width:0;border-radius:99px;background:var(--paper);
  transition:width 1.1s cubic-bezier(.22,1,.36,1);transition-delay:calc(var(--i) * .06s)}
.etlist.is-in .et__bar i,.static .et__bar i{width:var(--p)}
.et.is-done .et__val{color:var(--paper)}
.et.is-done .et__val::after{content:" ✓";color:var(--paper-on-night);font-size:.85em}
.et.is-doing .et__nome,.et.is-doing .et__val{color:var(--paper)}
.et.is-doing .et__bar i{background:linear-gradient(90deg,rgba(233,234,235,.6),var(--paper))}
.et.is-wait{opacity:.4}
.and__note{color:var(--paper-on-night);font-size:.95rem;max-width:48ch;margin:clamp(2.2rem,4vw,3rem) 0 0;padding-top:1.5rem;border-top:1px solid var(--line-on-night)}


/* no entorno: pontos de interesse com distancia */
.perto{margin-top:clamp(2.5rem,4vw,3.5rem);padding-top:clamp(1.6rem,3vw,2.2rem);border-top:1px solid var(--line)}
.perto__lbl{font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);font-weight:500;margin-bottom:1.4rem}
.perto__lista{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem 2.5rem}
@media (min-width:760px){.perto__lista{grid-template-columns:repeat(3,minmax(0,1fr))}}
.perto__i{display:grid;gap:.28rem;padding-top:.9rem;border-top:1px solid var(--line)}
.perto__cat{font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);font-weight:500}
.perto__nome{font-family:var(--f-display);font-size:1.08rem;font-weight:500;letter-spacing:-.02em;line-height:1.2;color:var(--ink)}
.perto__km{font-size:.92rem;color:var(--ink-2);font-variant-numeric:tabular-nums}
.perto__nota{margin-top:1.6rem;font-size:.78rem;color:var(--ink-3)}
@media (max-width:560px){.perto__lista{gap:1.1rem 1.4rem}}

/* downloads */
.dl{display:flex;flex-wrap:wrap;gap:.75rem}
.dl a{display:inline-flex;align-items:center;gap:.6rem;padding:.9rem 1.3rem;border-radius:999px;border:1px solid var(--line-2);font-weight:500;transition:background .25s,color .25s,transform .3s var(--ease);min-height:44px}
.dl a:hover{background:var(--ink);color:var(--paper);transform:translateY(-2px)}
.dl a svg{width:16px;height:16px}

/* outros */
.outros{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.outro{display:block}
.outro__media{position:relative;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:3/2;background:var(--paper-2)}
.outro__media img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.outro:hover .outro__media img{transform:scale(1.04)}
.outro__media .pill{position:absolute;left:1rem;top:1rem}
.outro h3{font-family:var(--f-display);font-weight:500;letter-spacing:-.02em;font-size:1.3rem;margin-top:1.1rem}
.outro p{color:var(--ink-2);font-size:.92rem;margin-top:.3rem;font-variant-numeric:tabular-nums}
.pill--sold{background:rgba(16,25,48,.5);color:var(--paper);border-color:rgba(233,234,235,.3)}

/* breadcrumb */
.crumb{position:absolute;left:0;right:0;top:calc(var(--nav-h) + .8rem);z-index:2;max-width:var(--wrap);margin:0 auto;padding:0 var(--gutter);font-size:.78rem;letter-spacing:.06em;color:rgba(233,234,235,.75);display:flex;gap:.5rem;align-items:center}
.crumb a{color:inherit;border-bottom:1px solid rgba(233,234,235,.3)}
.crumb span{opacity:.6}

@media (max-width:1100px){
  .ficha-strip .wrap{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ficha-strip .fi{border-right:0;border-bottom:1px solid var(--line);padding:1.3rem 0}
  .ficha-strip .fi + .fi{padding-left:0}
  .ficha-strip .fi:nth-child(odd){border-right:1px solid var(--line);padding-right:1.5rem}
  .ficha-strip .fi:nth-child(even){padding-left:1.5rem}
  .ficha-strip .fi:nth-last-child(-n+2){border-bottom:0}
  .difs{columns:2}
  .gal{grid-auto-rows:200px}
}
@media (max-width:900px){
  .esobre,.loc{grid-template-columns:1fr;gap:2rem}
  .etlist{grid-template-columns:1fr;gap:1.2rem}
  .and__head{grid-template-columns:1fr;align-items:start}
  .and__resumo{white-space:normal}
  .esobre__media .fb{margin-bottom:0;margin-top:-2.5rem}
  .outros{grid-template-columns:1fr;gap:2rem}
  .ehero .slide__stats{flex-direction:row;width:100%}
  .crumb{display:none}
}
@media (max-width:560px){
  .difs{columns:1}
  .gal{grid-template-columns:1fr 1fr;grid-auto-rows:150px;gap:.7rem}
  .gal a{grid-column:auto!important}
  .gal .g-full,.gal .g-wide{grid-column:1/-1!important}
  .ficha-strip .wrap{grid-template-columns:1fr 1fr}
  .loc__map{min-height:300px} .loc__map iframe{min-height:300px}
}
/* em telas baixas o conteúdo do hero subia até o breadcrumb */
.ehero .slide__in{padding-top:calc(var(--nav-h) + 3.4rem)}

/* ---------- filtros da listagem ---------- */
.filtros{display:flex;flex-direction:column;gap:1rem;padding-bottom:1.6rem;margin-bottom:2.2rem;border-bottom:1px solid var(--line)}
.filtros__row{display:flex;align-items:baseline;gap:.9rem;flex-wrap:wrap}
.filtros__lbl{font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);font-weight:500;min-width:5.2rem}
.filtros__chips{display:flex;flex-wrap:wrap;gap:.45rem}
.fchip{font:inherit;font-size:.9rem;font-weight:500;color:var(--ink);background:transparent;border:1px solid var(--line-2);border-radius:999px;padding:.5rem .95rem;min-height:40px;
  transition:background .25s,color .25s,border-color .25s,transform .3s var(--ease)}
.fchip:hover{background:var(--paper-2)}
.fchip.is-on{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.filtros__foot{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
.filtros__count{font-size:.9rem;color:var(--ink-2);font-variant-numeric:tabular-nums}
.filtros__clear{font-size:.85rem;color:var(--ink-3);border-bottom:1px solid var(--line-2);padding-bottom:1px;min-height:auto;background:none;transition:color .25s,border-color .25s}
.filtros__clear:hover{color:var(--ink);border-color:currentColor}
.outros.is-empty::after{content:"Tente remover um filtro para ver mais opções.";grid-column:1/-1;color:var(--ink-3);padding:2rem 0}
@media (max-width:700px){
  .filtros__row{flex-direction:column;align-items:stretch;gap:.5rem}
  .filtros__lbl{min-width:0}
  .filtros__chips{overflow-x:auto;flex-wrap:nowrap;padding-bottom:.3rem;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .filtros__chips::-webkit-scrollbar{display:none}
  .fchip{white-space:nowrap;flex:none}
}

/* ================= BLOG ================= */
.chips-f{display:flex;flex-wrap:wrap;gap:.55rem;margin-bottom:clamp(2rem,3.4vw,3rem)}
.chip{padding:.6rem 1.1rem;border-radius:999px;border:1px solid var(--line);background:transparent;
  color:var(--ink-2);font-family:var(--f-sans);font-size:.84rem;font-weight:500;cursor:pointer;
  transition:background .3s,color .3s,border-color .3s}
.chip:hover{border-color:var(--line-2);color:var(--ink)}
.chip.is-on{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.chip:focus-visible{outline:2px solid var(--azul);outline-offset:3px}

.pgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.2rem,2.2vw,1.9rem)}
.pvazio{margin-top:2rem;color:var(--ink-3);font-size:.94rem}
.pcard{display:flex;flex-direction:column;border-radius:16px;overflow:hidden;background:var(--paper-2);
  border:1px solid var(--line);transition:transform .5s var(--ease),box-shadow .5s var(--ease),border-color .4s}
.pcard:hover{transform:translateY(-4px);border-color:var(--line-2);box-shadow:0 26px 54px -30px rgba(16,25,48,.4)}
.pcard__ph{display:block;aspect-ratio:4/3;overflow:hidden;background:var(--paper-3)}
.pcard__ph img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.pcard:hover .pcard__ph img{transform:scale(1.05)}
.pcard__body{display:flex;flex-direction:column;gap:.5rem;padding:1.25rem 1.35rem 1.5rem}
.pcard__cat{font-size:.68rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--azul)}
.pcard__t{font-family:var(--f-display);font-weight:500;font-size:1.12rem;line-height:1.28;letter-spacing:-.02em;color:var(--ink)}
.pcard__r{font-size:.88rem;line-height:1.5;color:var(--ink-3)}
.pcard__meta{margin-top:.35rem;font-size:.76rem;color:var(--ink-3);opacity:.85}

/* ---- artigo ---- */
/* uma coluna so para o artigo: titulo, capa, texto e imagens com a mesma largura e a mesma borda esquerda */
.wrap--post{max-width:calc(940px + 2 * var(--gutter))}
.post{padding-top:clamp(6rem,9vw,9rem)}
.crumbs{display:flex;flex-wrap:wrap;gap:.5rem;font-size:.78rem;color:var(--ink-3);margin-bottom:1.6rem}
.crumbs a{color:var(--ink-3);text-decoration:underline;text-underline-offset:3px;transition:color .3s}
.crumbs a:hover{color:var(--ink)}
.post__cat{font-size:.7rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--azul);margin-bottom:.9rem}
.post__t{margin-bottom:1rem;font-size:clamp(2rem,1.3rem + 2.2vw,3.3rem);text-wrap:balance}
.post__r{font-size:clamp(1.02rem,1.5vw,1.2rem);line-height:1.55;color:var(--ink-2);margin-bottom:1.8rem;max-width:62ch}
.post__autor{display:flex;align-items:center;gap:.85rem;padding-bottom:2rem;border-bottom:1px solid var(--line)}
.post__autor img{width:46px;height:46px;border-radius:50%;object-fit:cover;object-position:top center;background:var(--paper-3)}
.post__autor b{display:block;font-family:var(--f-display);font-weight:500;font-size:.96rem;color:var(--ink)}
.post__autor small{display:block;font-size:.8rem;color:var(--ink-3);margin-top:.15rem}
.post__capa{margin:clamp(2rem,3.4vw,3rem) auto;max-width:calc(940px + 2 * var(--gutter));padding:0 var(--gutter)}
.post__capa img{aspect-ratio:16/9;object-fit:cover}
.post__capa img{width:100%;height:auto;border-radius:18px;display:block}

.post__corpo{font-size:1.08rem;line-height:1.75;color:var(--ink-2)}
.post__corpo p{margin-bottom:1.35rem}
.post__corpo h2{font-family:var(--f-display);font-weight:500;font-size:clamp(1.3rem,2.2vw,1.7rem);
  line-height:1.25;letter-spacing:-.02em;color:var(--ink);margin:2.6rem 0 1rem}
.post__corpo ul{margin:0 0 1.5rem;padding-left:0;list-style:none;display:grid;gap:.75rem}
.post__corpo li{position:relative;padding-left:1.5rem;line-height:1.6}
.post__corpo li::before{content:"";position:absolute;left:.15rem;top:.62em;width:6px;height:6px;
  border-radius:50%;background:var(--azul)}
.post__destaque{margin:2.2rem 0;padding:1.3rem 1.5rem;border-left:3px solid var(--azul);
  background:var(--paper-2);border-radius:0 14px 14px 0;font-family:var(--f-display);font-weight:400;
  font-size:1.08rem;line-height:1.5;color:var(--ink)}
.post__corpo blockquote{margin:2.2rem 0;padding-left:1.4rem;border-left:2px solid var(--line-2);
  font-style:italic;color:var(--ink)}
.post__corpo blockquote cite{display:block;margin-top:.6rem;font-style:normal;font-size:.84rem;color:var(--ink-3)}
.post__fig{margin:2.2rem 0}
.post__fig img{width:100%;height:auto;border-radius:14px;display:block}
.post__fig figcaption{margin-top:.6rem;font-size:.8rem;color:var(--ink-3);text-align:center}

.post__assina{display:flex;gap:1.1rem;align-items:flex-start;margin-top:3rem;padding-top:2rem;
  border-top:1px solid var(--line)}
.post__assina img{width:62px;height:62px;border-radius:50%;object-fit:cover;object-position:top center;
  flex:none;background:var(--paper-3)}
.post__assina b{display:block;font-family:var(--f-display);font-weight:500;font-size:1rem;color:var(--ink);margin-bottom:.3rem}
.post__assina p{font-size:.88rem;line-height:1.55;color:var(--ink-3)}

@media (max-width:1000px){.pgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){
  .pgrid{grid-template-columns:1fr}
  .post{padding-top:5.5rem}
  .post__capa img{border-radius:12px}
}

/* ================= SOBRE ================= */
.strip--sobre{margin-top:clamp(2rem,3.4vw,3rem)}
.sobre-txt{max-width:70ch;display:grid;gap:1.2rem;font-size:1.02rem;line-height:1.72;color:var(--ink-2)}
.sec--night .sobre-txt{color:var(--paper-on-night)}
.vm{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1rem,2vw,1.6rem)}
.vm__c{padding:clamp(1.5rem,2.4vw,2.1rem);border:1px solid var(--line);border-radius:16px;background:var(--paper-2)}
.vm__lbl{font-size:.68rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--azul);margin-bottom:.9rem}
.vm__t{font-family:var(--f-display);font-weight:400;font-size:clamp(1.05rem,1.7vw,1.28rem);line-height:1.42;letter-spacing:-.015em;color:var(--ink)}
@media (max-width:760px){.vm{grid-template-columns:1fr}}

/* paginas que comecam direto numa secao, sem hero, precisam do espaco da nav */
main > .sec:first-child{padding-top:calc(var(--nav-h) + var(--sec) * .72)}

/* ---- paginacao do blog ---- */
.pager{display:flex;flex-wrap:wrap;gap:.45rem;justify-content:center;margin-top:clamp(2.4rem,4vw,3.4rem)}
.pager__b{min-width:40px;height:40px;padding:0 .7rem;border-radius:10px;border:1px solid var(--line);
  background:transparent;color:var(--ink-2);font-family:var(--f-sans);font-size:.9rem;font-weight:500;
  cursor:pointer;transition:background .3s,border-color .3s,color .3s}
.pager__b:hover:not(:disabled){border-color:var(--line-2);color:var(--ink)}
.pager__b:disabled{opacity:.35;cursor:default}
.pager__b.is-on{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.pager__b:focus-visible{outline:2px solid var(--azul);outline-offset:3px}
.post__assina p + p{margin-top:.5rem}

/* na ficha do empreendimento o fundo e claro: aqui quem destaca e o azul, nao o claro */
.ficha-strip .fi--status .pill--live{background:var(--ink);color:var(--paper);border-color:transparent}
.ficha-strip .fi--status .pill--work{background:var(--azul);color:#fff;border-color:transparent}
.ficha-strip .fi--status .pill--live::before,.ficha-strip .fi--status .pill--work::before{background:#fff}

/* ficha com a quinta coluna "Conclusao da obra" */
.ficha-strip .wrap--5{grid-template-columns:repeat(5,1fr)}
@media (max-width:1100px){
  .ficha-strip .wrap--5{grid-template-columns:repeat(2,1fr)}
  .ficha-strip .wrap--5 .fi:nth-child(4){border-bottom:1px solid var(--line)}
  /* no celular o Status ocupa a ultima linha inteira (o selo "Under construction" nao cabe em meia coluna)
     e a conclusao da obra sobe para o lado das plantas */
  .ficha-strip .wrap--5 .fi--status{order:1;grid-column:1/-1;border-right:0;border-bottom:0;padding-left:0;padding-right:0}
  .ficha-strip .wrap--5 .fi:last-child{border-right:0;padding-left:1.5rem;padding-right:0;border-bottom:1px solid var(--line)}
}

/* ---- post: recursos do texto (out/2026) ---- */
.post__capa--arte img{aspect-ratio:auto}
.post__corpo a{color:var(--azul);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em;transition:color .2s}
.post__corpo a:hover{color:var(--ink)}
.post__corpo b{font-weight:600;color:var(--ink)}
.post__corpo h3{font-family:var(--f-display);font-weight:500;font-size:clamp(1.08rem,1.6vw,1.22rem);line-height:1.3;letter-spacing:-.01em;color:var(--ink);margin:2rem 0 .7rem}
.post__tabela{margin:1.6rem 0 2rem;overflow-x:auto;border:1px solid var(--line);border-radius:14px;-webkit-overflow-scrolling:touch}
.post__tabela:focus-visible{outline:2px solid var(--azul);outline-offset:2px}
.post__tabela table{width:100%;min-width:560px;border-collapse:collapse;font-size:.94rem;line-height:1.5}
.post__tabela th,.post__tabela td{padding:.9rem 1rem;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
.post__tabela thead th{font-size:.7rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);background:var(--paper-2)}
.post__tabela tbody th{font-family:var(--f-display);font-weight:500;color:var(--ink);white-space:nowrap}
.post__tabela tbody tr:last-child th,.post__tabela tbody tr:last-child td{border-bottom:0}
.post__faq{margin:2.8rem 0 2rem;padding:clamp(1.4rem,2.6vw,2rem);border:1px solid var(--line);border-radius:18px;background:var(--paper-2)}
.post__faq h2{margin-top:0}
.post__faq-i + .post__faq-i{margin-top:1.3rem;padding-top:1.3rem;border-top:1px solid var(--line)}
.post__faq-i h3{margin:0 0 .45rem}
.post__faq-i p{margin:0}
.post__cta{font-family:var(--f-display);font-size:1.12rem;line-height:1.55;color:var(--ink)}
.post__veja{display:flex;flex-wrap:wrap;align-items:baseline;gap:.4rem .8rem;margin:2.2rem 0 0;padding:1.1rem 1.3rem;border:1px solid var(--line);border-radius:14px}
.post__veja span{font-size:.7rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}
.post__veja a{font-family:var(--f-display);font-weight:500;color:var(--ink);transition:color .2s}
.post__veja a:hover{color:var(--azul)}
.post__assina .post__assina-org{margin-top:.7rem;font-size:.8rem;color:var(--ink-3);font-style:italic}
.emp-blog{display:flex;flex-wrap:wrap;align-items:baseline;gap:.4rem 1rem;margin-top:clamp(1.6rem,3vw,2.2rem);padding:1.1rem 1.3rem;border:1px solid var(--line);border-radius:14px;transition:border-color .25s,box-shadow .35s var(--ease)}
.emp-blog:hover{border-color:var(--line-2);box-shadow:0 20px 44px -34px rgba(37,58,110,.55)}
.emp-blog__lbl{font-size:.68rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--azul)}
.emp-blog__t{font-family:var(--f-display);font-weight:500;color:var(--ink)}
@media (max-width:640px){
  .post__tabela{overflow:visible;border:0;border-radius:0}
  .post__tabela table{min-width:0}
  .post__tabela thead{display:none}
  .post__tabela tr{display:block;margin-bottom:.8rem;padding:1rem 1.1rem;border:1px solid var(--line);border-radius:14px;background:var(--paper-2)}
  .post__tabela th,.post__tabela td{display:block;padding:0;border:0}
  .post__tabela tbody th{font-size:1.05rem;margin-bottom:.6rem}
  .post__tabela td + td{margin-top:.7rem}
  .post__tabela td::before{content:attr(data-l);display:block;font-size:.66rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);margin-bottom:.2rem}
}
.post__pano{margin:2.2rem 0 2.4rem}
.post__pano-box{position:relative;display:block;aspect-ratio:3/2;border-radius:16px;overflow:hidden;isolation:isolate;background:var(--night-2)}
.post__pano figcaption{margin-top:.7rem;font-size:.84rem;line-height:1.5;color:var(--ink-3)}
.post__pano-cred{white-space:nowrap}
.post__pano-cred a,.jp-credito a{color:var(--azul);text-decoration:underline;text-underline-offset:.2em}
@media (max-width:640px){.post__pano-box{aspect-ratio:4/5;border-radius:12px}}

/* galeria (plantas e fotos): a imagem nunca passa por baixo das setas.
   Reserva de cada lado = margem 1.2rem + seta 52px + folga 14px. */
dialog.lb{max-width:min(calc(100vw - 2 * (1.2rem + 66px)),1400px)}
dialog.lb img{max-width:min(calc(100vw - 2 * (1.2rem + 66px)),1400px)}
dialog.lb .lb__nav,dialog.lb .lb__close{z-index:2}
dialog.lb .lb__nav:hover,dialog.lb .lb__close:hover{background:rgba(233,234,235,.24)}
/* celular: sem espaço dos lados, as setas descem para baixo da imagem */
@media (max-width:700px){
  dialog.lb,dialog.lb img{max-width:94vw}
  dialog.lb img{max-height:calc(100svh - 11rem)}
  dialog.lb .lb__nav{top:auto;bottom:1.4rem;transform:none}
  dialog.lb .lb__prev{left:calc(50% - 64px)} dialog.lb .lb__next{right:calc(50% - 64px)}
}
/* video e tour: nunca mais altos que a tela; a largura encolhe para manter a proporcao */
.embed{width:min(100%,calc((100svh - var(--nav-h,90px) - 6rem) * 16 / 9));margin-inline:auto}
.embed--tour{width:min(100%,calc((100svh - var(--nav-h,90px) - 6rem) * 16 / 10))}
/* perguntas frequentes do empreendimento */
.efaq{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(2rem,4vw,4rem)}
.efaq__i{padding:1.35rem 0;border-top:1px solid var(--line)}
.efaq__i h3{margin:0 0 .5rem;font-family:var(--f-display);font-weight:500;font-size:clamp(1.05rem,1.3vw,1.2rem);line-height:1.35;text-wrap:balance}
.efaq__i p{margin:0;color:var(--ink-2);line-height:1.6;text-wrap:pretty}
@media (max-width:760px){.efaq{grid-template-columns:1fr}}
.efaq__i:last-child:nth-child(odd){grid-column:1/-1}
/* pagina 404 */
.nf__acoes{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;margin-top:2rem}
.btn--linha{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line-2)}
.btn--linha:hover{background:var(--paper-2)}
.nf__link{display:inline-flex;align-items:center;min-height:44px;color:var(--ink-2);text-decoration:underline;text-underline-offset:.25em}
.nf__t{font-size:1.05rem;font-weight:500;letter-spacing:-.01em;margin:0 0 1.25rem;color:var(--ink-2)}
.nowrap{white-space:nowrap}
/* 404: a Maisa conta que deu erro */
.nf__topo{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,360px);align-items:end;gap:2rem;margin-bottom:clamp(2.5rem,5vw,4rem)}
.nf__topo .abre{margin-bottom:0;padding-bottom:clamp(1rem,3vw,3rem)}
.nf__maisa{position:relative;margin:0;align-self:end}
.nf__maisa img{display:block;width:100%;height:auto;-webkit-mask-image:linear-gradient(180deg,#000 72%,transparent 98%);mask-image:linear-gradient(180deg,#000 72%,transparent 98%);animation:nfSobe .8s var(--ease) both}
.nf__balao{font-family:var(--f-display);font-weight:400;letter-spacing:-.01em;position:absolute;top:6%;right:66%;width:max-content;max-width:230px;margin:0;padding:.9rem 1.1rem;border-radius:20px 20px 4px 20px;background:var(--night);color:var(--paper);font-size:.98rem;line-height:1.4;box-shadow:0 18px 40px -22px rgba(16,25,48,.55);transform-origin:100% 100%;animation:nfBalao .6s cubic-bezier(.34,1.56,.64,1) .55s both;text-wrap:balance}
.nf__balao b{display:block;font-weight:600;margin-bottom:.15rem}
.nf__balao::after{content:"";position:absolute;right:-7px;bottom:0;width:14px;height:14px;background:var(--night);clip-path:polygon(0 0,0 100%,100% 100%)}
@keyframes nfSobe{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes nfBalao{from{opacity:0;transform:scale(.4)}to{opacity:1;transform:none}}
@media (max-width:900px){
  .nf__topo{grid-template-columns:1fr;gap:0}
  .nf__maisa{order:-1;justify-self:end;width:min(56vw,260px);margin:-1rem 0 -.5rem}
  .nf__balao{right:70%;top:10%;max-width:min(50vw,210px);font-size:.9rem;padding:.75rem .9rem}
}
@media (prefers-reduced-motion:reduce){.nf__maisa img,.nf__balao{animation:none}}
