@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Sora:wght@500;600;700;800&display=swap');

:root{
  --pop-bg:#080808;
  --pop-panel:#0c0c0d;
  --pop-orange:#f27a00;
  --pop-orange-2:#ff9826;
  --pop-red:#ff304f;
  --pop-text:#ffffff;
  --pop-muted:#9b9da3;
  --pop-line:rgba(255,255,255,.12);
  --pop-heading:'Sora',Arial,sans-serif;
  --pop-body:'Manrope',Arial,sans-serif;
}

.pop-wrap{width:100%;max-width:1460px;margin:0 auto;padding:8px 20px 28px;box-sizing:border-box;font-family:var(--pop-body)}

/* Cabeçalho */
.pop-section-head{text-align:center;margin:0 auto 32px;max-width:1040px}
.pop-section-head:before{content:'PORTFÓLIO DE OBRAS';display:block;margin-bottom:10px;color:var(--pop-orange);font:700 11px/1 var(--pop-heading);letter-spacing:3px}
.pop-section-head h2{font-family:var(--pop-heading);font-weight:800;text-transform:uppercase;color:#111;font-size:clamp(34px,4vw,56px);line-height:1.02;margin:0 0 15px;letter-spacing:-2px}
.pop-section-head h2::after{content:'';display:block;width:62px;height:4px;border-radius:4px;background:var(--pop-orange);margin:18px auto 0}
.pop-section-head p{font:500 clamp(15px,1.3vw,18px)/1.55 var(--pop-body);color:#555b61;margin:0 auto;max-width:none;white-space:nowrap}

/* Filtros */
.pop-filters{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:0 0 32px}
.pop-filter{appearance:none;border:1px solid var(--pop-orange);background:var(--pop-orange);color:#fff;padding:11px 20px;border-radius:6px;font:700 11px/1 var(--pop-heading);text-transform:uppercase;letter-spacing:.75px;cursor:pointer;transition:all .25s ease;box-shadow:0 6px 16px rgba(242,122,0,.18)}
.pop-filter:hover{border-color:var(--pop-orange-2);background:var(--pop-orange-2);color:#fff;transform:translateY(-1px);box-shadow:0 10px 22px rgba(242,122,0,.24)}
.pop-filter.is-active{background:#111;color:#fff;border-color:#111;box-shadow:0 8px 22px rgba(0,0,0,.18)}

/* Grid */
.pop-grid{display:grid;grid-template-columns:repeat(var(--pop-cols),minmax(0,1fr));gap:22px}
.pop-card{cursor:pointer;outline:none;transition:transform .35s cubic-bezier(.2,.7,.2,1),filter .35s ease}
.pop-card.is-hidden{display:none}
.pop-card:hover,.pop-card:focus{transform:translateY(-6px)}
.pop-card-media{position:relative;aspect-ratio:1.26/1;overflow:hidden;background:#151515;border-radius:14px;box-shadow:0 18px 48px rgba(0,0,0,.14)}
.pop-card-media:after{content:'';position:absolute;inset:0;border:1px solid rgba(255,255,255,.08);border-radius:14px;pointer-events:none}
.pop-card-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .4s ease}
.pop-card:hover img,.pop-card:focus img{transform:scale(1.055);filter:saturate(1.05)}
.pop-card-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.08) 25%,rgba(0,0,0,.18) 48%,rgba(3,3,3,.93) 100%)}
.pop-card-top{position:absolute;left:18px;right:18px;top:18px;display:flex;justify-content:space-between;align-items:center;gap:10px}
.pop-cat,.pop-floating-cat{display:inline-flex;align-items:center;background:rgba(10,10,10,.72)!important;backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.12)!important;border-left:3px solid var(--pop-orange)!important;color:#fff!important;font:700 10px/1 var(--pop-heading);letter-spacing:1.35px;padding:9px 11px;border-radius:3px}
.pop-status{display:inline-flex;align-items:center;gap:7px;background:var(--pop-red);color:#fff;border-radius:999px;padding:8px 12px;font:700 9px/1 var(--pop-heading);letter-spacing:.8px;box-shadow:0 6px 18px rgba(255,48,79,.28)}
.pop-status i{width:5px;height:5px;background:#fff;border-radius:99px;display:inline-block}
.pop-card-bottom{position:absolute;left:20px;right:20px;bottom:18px;color:#fff}
.pop-card h3{color:#fff!important;font:800 clamp(21px,1.8vw,28px)/1.05 var(--pop-heading);letter-spacing:-1px;text-transform:uppercase;margin:0 0 9px}
.pop-card h3:before{content:'';display:block;width:30px;height:3px;background:var(--pop-orange);border-radius:3px;margin-bottom:10px}
.pop-meta-line{display:flex;gap:9px;align-items:center;color:#d9d9db;font:500 12px/1.3 var(--pop-body);text-transform:uppercase;letter-spacing:.25px}
.pop-view{display:inline-flex;align-items:center;gap:7px;margin-top:13px;color:var(--pop-orange)!important;font:700 10px/1 var(--pop-heading);letter-spacing:1.1px;transition:gap .25s ease,color .25s ease}
.pop-card:hover .pop-view{gap:11px;color:var(--pop-orange-2)!important}

/* Modal */
.pop-modal{position:fixed;inset:0;z-index:999999;display:none}
.pop-modal.is-open{display:block}
.pop-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.88);backdrop-filter:blur(12px)}
.pop-dialog{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(1260px,94vw);max-height:91vh;display:grid;grid-template-columns:1.58fr .92fr;background:#000;border:1px solid rgba(255,255,255,.08);border-radius:18px;box-shadow:0 40px 120px rgba(0,0,0,.7);overflow:hidden}
.pop-close{position:absolute;z-index:5;right:16px;top:16px;width:44px;height:44px;border:1px solid rgba(255,255,255,.12);border-radius:50%;background:var(--pop-orange)!important;color:#090909!important;font:700 26px/1 var(--pop-heading);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 28px rgba(0,0,0,.35);transition:transform .25s ease,background .25s ease}
.pop-close:hover{transform:rotate(90deg);background:var(--pop-orange-2)!important}
.pop-gallery-panel{background:#000!important;min-width:0;display:flex;flex-direction:column}
.pop-main-img-wrap{position:relative;height:min(66vh,680px);background:#000;overflow:hidden}
.pop-main-img-wrap:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.13));pointer-events:none}
.pop-main-img{width:100%;height:100%;object-fit:cover;display:block;transition:opacity .2s ease}
.pop-floating-cat{position:absolute;z-index:2;top:20px;left:20px}
.pop-thumbs{display:flex;gap:10px;padding:14px 16px 16px;background:#050505!important;overflow-x:auto;border-top:1px solid rgba(255,255,255,.07)}
.pop-thumb{width:92px;height:62px;padding:0;border:2px solid transparent;border-radius:6px;background:#111;cursor:pointer;flex:0 0 auto;opacity:.62;overflow:hidden;transition:opacity .2s ease,border-color .2s ease,transform .2s ease}
.pop-thumb:hover{opacity:.9;transform:translateY(-1px)}
.pop-thumb.is-active{border-color:var(--pop-orange)!important;opacity:1}
.pop-thumb img{width:100%;height:100%;object-fit:cover}

.pop-info-panel{padding:52px 48px 44px;background:#000!important;color:#fff;display:flex;flex-direction:column;justify-content:center;min-width:0}
.pop-kicker{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--pop-orange)!important;font:700 10px/1 var(--pop-heading);letter-spacing:1.7px;text-transform:uppercase}
.pop-info-panel h2{color:#fff!important;margin:22px 0 18px;font:800 clamp(34px,3.6vw,50px)/1 var(--pop-heading);letter-spacing:-1.9px;text-transform:uppercase}
.pop-info-panel h2:after{content:'';display:block;width:42px;height:4px;background:var(--pop-orange);border-radius:4px;margin-top:18px}
.pop-sep{display:none}
.pop-data-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--pop-line);margin-top:4px}
.pop-data-grid>div{padding:18px 0;border-bottom:1px solid var(--pop-line)}
.pop-data-grid>div:nth-child(2){padding-left:24px}
.pop-data-grid>div:nth-child(3){grid-column:1/-1}
.pop-data-grid label{display:block;color:#7f8389;font:700 9px/1 var(--pop-heading);letter-spacing:1.45px;margin-bottom:8px}
.pop-data-grid strong{color:#fff;font:700 17px/1.2 var(--pop-body)}
.pop-description{color:#a7aaaf;font:500 14px/1.6 var(--pop-body);margin:20px 0 0}
.pop-cta{display:inline-flex;align-items:center;justify-content:center;gap:18px;margin-top:24px;background:var(--pop-orange)!important;color:#0b0b0b!important;text-decoration:none!important;padding:17px 24px;border-radius:5px;font:800 10px/1 var(--pop-heading);letter-spacing:1.1px;box-shadow:0 12px 30px rgba(242,122,0,.18);transition:transform .25s ease,background .25s ease,box-shadow .25s ease}
.pop-cta:hover{background:var(--pop-orange-2)!important;transform:translateY(-2px);box-shadow:0 18px 36px rgba(242,122,0,.28)}
.pop-full-link{display:inline-block;margin:17px 0 0 0;color:#8c8f94!important;text-decoration:none!important;font:600 11px/1 var(--pop-body);width:max-content;border-bottom:1px solid #555;padding-bottom:3px;transition:color .2s ease,border-color .2s ease}
.pop-full-link:hover{color:#fff!important;border-color:var(--pop-orange)}
.pop-empty{padding:30px;background:#111;color:#fff;font-family:var(--pop-body)}
body.pop-lock{overflow:hidden}

@media(max-width:1000px){
  .pop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pop-dialog{grid-template-columns:1fr;width:min(760px,94vw);overflow:auto;border-radius:14px}
  .pop-main-img-wrap{height:47vh}
  .pop-info-panel{padding:34px 30px 36px;justify-content:flex-start}
  .pop-card-media{aspect-ratio:1.2/1}
}
@media(max-width:620px){
  .pop-wrap{padding-left:12px;padding-right:12px}
  .pop-grid{grid-template-columns:1fr;gap:16px}
  .pop-card-media{aspect-ratio:1.05/1;border-radius:10px}
  .pop-card-top{left:12px;right:12px;top:12px}
  .pop-card-bottom{left:16px;right:16px;bottom:15px}
  .pop-status{padding:7px 9px;font-size:8px}
  .pop-section-head{margin-bottom:24px}
  .pop-section-head h2{font-size:34px;letter-spacing:-1.4px}
  .pop-section-head p{font-size:14px;white-space:normal;max-width:92%;line-height:1.5}
  .pop-dialog{max-height:95vh;width:96vw;border-radius:10px}
  .pop-main-img-wrap{height:34vh}
  .pop-info-panel{padding:28px 20px 30px}
  .pop-kicker{align-items:flex-start;flex-direction:column}
  .pop-info-panel h2{font-size:34px}
  .pop-data-grid{grid-template-columns:1fr}
  .pop-data-grid>div:nth-child(2){padding-left:0}
  .pop-data-grid>div:nth-child(3){grid-column:auto}
  .pop-close{right:10px;top:10px;width:40px;height:40px}
}

/* Proteção contra estilos do tema/Elementor */
.pop-wrap .pop-card h3,.pop-wrap .pop-info-panel h2{font-family:var(--pop-heading)!important}
.pop-wrap .pop-view,.pop-wrap .pop-kicker>span:first-child{color:var(--pop-orange)!important}
.pop-wrap .pop-dialog,.pop-wrap .pop-info-panel,.pop-wrap .pop-gallery-panel,.pop-wrap .pop-thumbs{background:#000!important}
.pop-wrap .pop-cta{background:var(--pop-orange)!important;color:#0b0b0b!important}
.pop-wrap .pop-close{background:var(--pop-orange)!important;color:#0b0b0b!important}
.pop-wrap .pop-thumb.is-active{border-color:var(--pop-orange)!important}

/* Filtros premium - prioridade sobre Elementor/tema */
.pop-wrap .pop-filter{background:var(--pop-orange)!important;border-color:var(--pop-orange)!important;color:#fff!important;border-radius:6px!important}
.pop-wrap .pop-filter:hover{background:var(--pop-orange-2)!important;border-color:var(--pop-orange-2)!important;color:#fff!important}
.pop-wrap .pop-filter.is-active{background:#111!important;border-color:#111!important;color:#fff!important}
@media(min-width:621px){.pop-wrap .pop-section-head p{white-space:nowrap!important;max-width:none!important}}
