/* OBRAS: arquivo /obras/ e single /obras/<slug>/ (templates Bricks "Pirâmide — Obras (arquivo)" e "Pirâmide — Obra (single)").
   Só classes .obras-*; tokens do :root do style.css. Fotos originais têm 800 px de largura: nenhuma caixa passa disso em 1x. */

/* ---------- intro do arquivo ---------- */
.obras-intro{background:var(--paper);padding-top:clamp(72px,9vw,136px);padding-bottom:var(--gap-xl)}
.obras-intro__grid{display:grid;gap:var(--gap-l)}
.obras-intro__h1{margin-top:28px;max-width:9.5em;text-wrap:balance}
.obras-intro__side .lead{max-width:26em}
.obras-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:40px;padding-top:24px;border-top:1px solid var(--ink)}
.obras-facts > *{margin:0;font-size:14px;line-height:1.45;color:var(--ink-2)}
.obras-facts b{display:block;font-family:var(--display);font-weight:700;font-stretch:112%;font-size:clamp(30px,3vw,40px);letter-spacing:-.03em;line-height:1;color:var(--green-900);margin-bottom:8px}
@media(min-width:960px){.obras-intro__grid{grid-template-columns:1.25fr .75fr;align-items:end}}

/* ---------- grade de obras ---------- */
.obras-lista{background:var(--paper);padding-bottom:var(--section)}
.obras-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:56px}
.obras-card{display:flex;flex-direction:column;min-width:0;color:var(--ink)}
.obras-card__ph{position:relative;overflow:hidden;border-radius:var(--radius);background:#d6d4cc;aspect-ratio:4/3}
.obras-card__ph img,.obras-card__img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.obras-card:hover .obras-card__img{transform:scale(1.035)}
.obras-card__body{display:grid;grid-template-columns:minmax(0,1fr);padding-top:22px}
.obras-card__local{margin:0;font-family:var(--display);font-weight:700;font-stretch:112%;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--green-700);line-height:1.4}
.obras-card__title{margin:8px 0 0;font-family:var(--display);font-weight:700;font-stretch:108%;font-size:clamp(20px,1.7vw,25px);letter-spacing:-.015em;line-height:1.15;max-width:20em;text-wrap:balance}
.obras-card__more{display:inline-flex;align-items:center;gap:8px;margin-top:16px;font-family:var(--display);font-weight:700;font-stretch:108%;font-size:14px;color:var(--ink-2);transition:color .2s}
.obras-card__more.has-arrow::after{width:15px;height:15px}
.obras-card:hover .obras-card__more{color:var(--green-900)}
.obras-card:hover .obras-card__more::after{transform:translateX(4px)}
.obras-card:focus-visible{outline-offset:6px;border-radius:var(--radius)}

/* numeração editorial só no arquivo */
.obras-lista .obras-grid{counter-reset:obra}
.obras-lista .obras-card{counter-increment:obra}
.obras-lista .obras-card__body{grid-template-columns:44px minmax(0,1fr)}
.obras-lista .obras-card__body::before{content:counter(obra,decimal-leading-zero);grid-row:1/span 3;font-family:var(--display);font-weight:700;font-size:13px;letter-spacing:.06em;color:var(--ink-2);line-height:1.4;border-top:2px solid var(--lime);align-self:start;padding-top:8px;margin-right:12px}
.obras-lista .obras-card__body > *{grid-column:2}

@media(min-width:640px){
  .obras-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:64px 24px}
  .obras-lista .obras-card:first-child{grid-column:1/-1}
  .obras-lista .obras-card:first-child .obras-card__ph{aspect-ratio:16/10}
}

/* desktop: ritmo de 10 cards — 7+5 / 4+4+4 / 5+7 / 4+4+4 */
@media(min-width:960px){
  .obras-lista .obras-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap-xl) 32px}
  .obras-lista .obras-card{grid-column:span 4}
  .obras-lista .obras-card:first-child{grid-column:span 7}
  .obras-lista .obras-card:first-child .obras-card__ph{aspect-ratio:4/3}
  .obras-lista .obras-card:nth-child(10n+1){grid-column:span 7}
  .obras-lista .obras-card:nth-child(10n+2){grid-column:span 5}
  .obras-lista .obras-card:nth-child(10n+6){grid-column:span 5}
  .obras-lista .obras-card:nth-child(10n+7){grid-column:span 7}
  /* cards de 5 colunas ficam com a mesma altura de foto do card de 7 ao lado */
  .obras-lista .obras-card:nth-child(10n+2) .obras-card__ph,
  .obras-lista .obras-card:nth-child(10n+6) .obras-card__ph{aspect-ratio:14/15}
  .obras-lista .obras-card:nth-child(10n+1) .obras-card__title,
  .obras-lista .obras-card:nth-child(10n+7) .obras-card__title{font-size:clamp(24px,2.2vw,32px)}
}

/* ---------- single ---------- */
.obras-single{background:var(--paper);padding-top:clamp(40px,5vw,72px);padding-bottom:var(--gap-xl)}
.obras-back{display:inline-flex;align-items:center;gap:10px;font-family:var(--display);font-weight:700;font-stretch:108%;font-size:14px;color:var(--ink-2);margin-bottom:clamp(40px,5vw,64px);transition:color .2s}
.obras-back::before{content:"";width:16px;height:16px;flex:none;background:currentColor;-webkit-mask:var(--i-arrow) center/contain no-repeat;mask:var(--i-arrow) center/contain no-repeat;transform:rotate(180deg);transition:transform .2s}
.obras-back:hover{color:var(--green-900)}
.obras-back:hover::before{transform:rotate(180deg) translateX(4px)}
.obras-single__head{margin-bottom:var(--gap-l)}
.obras-single__title{margin-top:24px;font-size:clamp(34px,5vw,72px);max-width:15em;text-wrap:balance;overflow-wrap:break-word}
.obras-single__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--gap-l)}
.obras-single__photo{margin:0;max-width:800px;border-radius:var(--radius);overflow:hidden;background:#d6d4cc}
.obras-single__img{width:100%;height:auto}
.obras-single__aside{border-top:1px solid var(--ink)}
.obras-facts--stack{grid-template-columns:minmax(0,1fr);gap:0;margin:0;padding:0;border:0}
.obras-facts .obras-fact{padding:18px 0;border-bottom:1px solid var(--line);font-family:var(--display);font-weight:700;font-stretch:108%;font-size:19px;letter-spacing:-.01em;color:var(--ink);line-height:1.3}
.obras-facts .obras-fact span{display:block;font-family:var(--text);font-weight:500;font-stretch:100%;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2);margin-bottom:6px}
.obras-single__note{margin:28px 0;font-size:16px;color:var(--ink-2);max-width:24em}
.obras-single__btn{width:100%;justify-content:center;white-space:normal;text-align:center}
.obras-single__tel{margin-top:24px;color:var(--green-900)}
@media(min-width:960px){
  .obras-single__grid{grid-template-columns:minmax(0,800px) minmax(280px,1fr);gap:56px;align-items:start}
  .obras-single__aside{position:sticky;top:40px}
}

/* subtítulo de bloco */
.obras-sub{border-top:1px solid var(--line);padding-top:28px;margin-bottom:32px}

/* galeria (meta 'fotos') */
.obras-galeria{background:var(--paper);padding-bottom:var(--gap-xl)}
.obras-gallery.brxe-image-gallery{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;list-style:none;margin:0;padding:0}
.obras-gallery .bricks-layout-item{width:auto;padding:0;margin:0}
.obras-gallery figure{margin:0;border-radius:var(--radius);overflow:hidden;background:#d6d4cc;aspect-ratio:4/3}
.obras-gallery a{display:block;height:100%}
.obras-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.obras-gallery a:hover img{transform:scale(1.035)}
@media(min-width:640px){.obras-gallery.brxe-image-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}}
@media(min-width:1100px){.obras-gallery.brxe-image-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* conteúdo do post (só quando traz imagem diferente da destacada) */
.obras-conteudo{background:var(--paper);padding-bottom:var(--gap-xl)}
.obras-content{max-width:800px;color:var(--ink-2)}
.obras-content > *{margin:0 0 24px}
.obras-content > *:last-child{margin-bottom:0}
.obras-content figure,.obras-content .wp-block-image{margin:0 0 24px}
.obras-content .aligncenter{margin-left:0;margin-right:0}
.obras-content img{width:100%;height:auto;border-radius:var(--radius)}

/* outras obras */
.obras-outras{background:var(--concrete);padding:var(--section) 0}
.obras-outras__head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:var(--gap-l)}
.obras-outras__head .link{color:var(--green-900)}
@media(min-width:640px) and (max-width:959px){.obras-grid--3 .obras-card:nth-child(3){grid-column:1/-1}.obras-grid--3 .obras-card:nth-child(3) .obras-card__ph{aspect-ratio:16/10}}
@media(min-width:960px){.obras-grid--3{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}}
