/* Capturas reais: uma moldura consistente, sem perspetiva, corte ou deformação. */
.project-preview--image { aspect-ratio: auto; padding: clamp(12px, 2vw, 24px); background: #e5e8e0; border: 1px solid #d7dccf; border-radius: 14px; color: var(--ink); }
.project-preview--image.project-preview--pecta, .project-preview--image.project-preview--shop { background: #f2ecd8; border-color: #e4dbbc; }
.project-preview--image.project-preview--config { background: #e9ecee; border-color: #d8dde0; }
.project-preview--image.project-preview--villa { background: #deebe8; border-color: #c9dbd4; }
.project-preview--image.project-preview--desafios { background: #e2e8ed; border-color: #cfd9df; }
.project-preview--image.project-preview--barber { background: #e5e8dc; border-color: #d3d9c6; }
.project-browser { overflow: hidden; border: 1px solid #d4dacb; border-radius: 8px; background: white; box-shadow: 0 12px 30px #1e2a1614; }
.project-browser-bar { display: flex; align-items: center; gap: 12px; height: 30px; padding: 0 12px; border-bottom: 1px solid #e5e9df; background: #f9faf7; color: #65725c; font-size: 10px; }
.project-browser-dots { display: flex; gap: 4px; flex: 0 0 auto; }
.project-browser-dots i { width: 5px; height: 5px; border-radius: 50%; background: #c9d0c0; }
.project-browser-address { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.project-image-stage { aspect-ratio: 16 / 10; display: grid; place-items: center; overflow: hidden; background: #fff; }
.project-preview--image .project-uploaded { display: block; width: 100%; height: 100%; object-fit: contain; object-position: center; transform: none; transition: none; }
.project-preview--image .project-preview-footer { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 25px; margin-top: 14px; font-size: 10px; color: #4d5e3f; }
.project-preview--image .project-open { position: static; width: 29px; height: 29px; flex: 0 0 29px; background: #ffffffc9; color: #2c3d20; }
.project-preview--image .project-open .icon { width: 15px; height: 15px; }
.project-preview--image .project-progress { position: static; font-size: 9px; background: #f8faff; border-color: #b8c6d5; padding: 5px 9px; }
.project-preview--image:hover .project-open { background: var(--lime); transform: none; }
.project-preview--image:focus-visible { outline: 3px solid #4c6f2c; outline-offset: 4px; }
.project-info .project-image-link { display: inline-flex; margin-top: 12px; font-size: 11px; color: #4d663b; text-decoration: underline; text-underline-offset: 4px; }
.service-work { margin-top: 34px; }
.service-work > .eyebrow { margin-bottom: 16px; }
.service-work .project-info { display: block; }
.service-work .project-info .tag { display: inline-flex; margin-top: 12px; }
.hero-stage--projects { display: flex; flex-direction: column; justify-content: center; gap: 18px; height: auto; min-height: 0; padding-block: 8px; }
.hero-stage--projects .status-pill { position: static; align-self: flex-end; }
.hero-stage--projects .hero-orbit, .hero-stage--projects .hero-sticker { display: none; }
.hero-projects { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.hero-project { min-width: 0; display: block; background: #fff; border: 1px solid #71815c; border-radius: 9px; overflow: hidden; box-shadow: 0 14px 35px #0003; }
.hero-project:first-child { grid-column: 1 / -1; }
.hero-project-image { aspect-ratio: 16 / 9; }
.hero-project-image img { display: block; width: 100%; height: 100%; object-fit: contain; }
.hero-project:hover { border-color: var(--lime); }
.hero-project:focus-visible { outline: 3px solid var(--lime); outline-offset: 4px; }
.hero-stage--projects .stage-caption { position: static; gap: 14px; flex-wrap: wrap; }
@media (max-width: 520px) {
    .project-preview--image { padding: 11px; }
    .project-browser-bar { height: 25px; padding-inline: 8px; font-size: 9px; }
    .project-preview--image .project-preview-footer { margin-top: 10px; font-size: 9px; }
}
