/* Projects portfolio — self-contained (no body bleed) */
.elementor-1047 .elementor-widget-html,
.elementor-widget-html .section {
  --black:#0d0d0d;
  --orange:#f47c20;
  --white:#ffffff;
  --gray-1:#f5f5f5;
  --gray-2:#e0e0e0;
  --gray-3:#9e9e9e;
  font-family:'Poppins',sans-serif;
}
.elementor-1047 .elementor-widget-html .section {
  background:var(--gray-1);
  color:var(--black);
  padding:48px 16px 64px;
  max-width:100%;
  box-sizing:border-box;
}
.section{max-width:1300px;margin:0 auto}.section-header{text-align:center;margin-bottom:36px;animation:fadeUp .6s ease both}.section-label{display:inline-block;font-size:10px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--orange);margin-bottom:12px;position:relative}.section-label::before,.section-label::after{content:'';position:absolute;top:50%;width:24px;height:1.5px;background:var(--orange)}.section-label::before{right:calc(100% + 8px)}.section-label::after{left:calc(100% + 8px)}.section-title{font-size:clamp(22px,6vw,38px);font-weight:800;color:var(--black);line-height:1.2;letter-spacing:-.5px}.section-title span{color:var(--orange)}.tabs-wrap{display:flex;justify-content:center;margin-bottom:32px;animation:fadeUp .6s .15s ease both}.tabs{display:flex;gap:4px;background:var(--white);border:1.5px solid var(--gray-2);border-radius:50px;padding:5px;box-shadow:0 4px 20px rgb(0 0 0 / .06)}.tab-btn{font-family:'Poppins',sans-serif;font-size:13px;font-weight:600;letter-spacing:.3px;padding:10px 26px;border:none;border-radius:50px;cursor:pointer;background:#fff0;color:var(--gray-3);transition:all .25s ease;white-space:nowrap;min-height:44px;display:flex;align-items:center;gap:7px}.tab-btn:hover{color:var(--black)}.tab-btn.active{background:var(--orange);color:var(--white);box-shadow:0 6px 18px rgb(244 124 32 / .35)}.tab-count{font-size:10px;font-weight:700;background:rgb(0 0 0 / .1);padding:2px 7px;border-radius:20px}.tab-btn.active .tab-count{background:rgb(255 255 255 / .25)}.cards-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.cards-grid-ongoing{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:var(--white);border-radius:18px;overflow:hidden;box-shadow:0 8px 40px rgb(0 0 0 / .08);transition:transform .32s cubic-bezier(.22,1,.36,1),box-shadow .32s;position:relative;border:1.5px solid var(--gray-2);animation:fadeUp .4s ease both}.card:hover{transform:translateY(-5px);box-shadow:0 18px 56px rgb(0 0 0 / .13)}.card-badge{position:absolute;top:10px;left:10px;z-index:2;font-size:8.5px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;padding:4px 10px;border-radius:50px}.badge-completed{background:var(--black);color:var(--orange)}.badge-ongoing{background:var(--orange);color:var(--white)}.card-img-wrap{width:100%;aspect-ratio:4/3;overflow:hidden;position:relative;cursor:zoom-in}.card-img-wrap img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s cubic-bezier(.22,1,.36,1)}.card:hover .card-img-wrap img{transform:scale(1.06)}.card-img-wrap::after{content:'';position:absolute;bottom:0;left:0;right:0;height:4px;background:var(--orange);z-index:1}.zoom-hint{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#fff0;transition:background .28s;z-index:1;pointer-events:none}.card-img-wrap:hover .zoom-hint{background:rgb(0 0 0 / .32)}.zoom-hint svg{opacity:0;transform:scale(.65);transition:opacity .28s,transform .28s;filter:drop-shadow(0 2px 8px rgb(0 0 0 / .4))}.card-img-wrap:hover .zoom-hint svg{opacity:1;transform:scale(1)}.card-img-placeholder{width:100%;aspect-ratio:4/3;overflow:hidden;position:relative;background:linear-gradient(135deg,#f0f0f0,#e6e6e6);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px}.card-img-placeholder::after{content:'';position:absolute;bottom:0;left:0;right:0;height:4px;background:var(--orange)}.placeholder-text{font-size:9px;font-weight:600;color:var(--gray-3);letter-spacing:1px;text-transform:uppercase}.ongoing-pulse{position:absolute;top:10px;right:10px;z-index:2}.ongoing-pulse span{display:block;width:10px;height:10px;border-radius:50%;background:#22c55e;position:relative}.ongoing-pulse span::before{content:'';position:absolute;inset:-3px;border-radius:50%;background:rgb(34 197 94 / .35);animation:pulseRing 1.8s ease-in-out infinite}@keyframes pulseRing{0%{transform:scale(.9);opacity:1}70%{transform:scale(1.6);opacity:0}100%{transform:scale(.9);opacity:0}}.card-body{padding:15px 14px 17px}.card-name{font-size:15px;font-weight:700;color:var(--black);margin-bottom:4px;letter-spacing:-.2px}.card-location{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:500;color:var(--orange);margin-bottom:12px}.card-divider{height:1px;background:var(--gray-2);margin-bottom:10px}.card-specs{display:flex;flex-direction:column;gap:6px}.spec-row{display:flex;align-items:center;gap:6px;font-size:11px}.spec-icon{width:25px;height:25px;border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.spec-icon.built{background:rgb(244 124 32 / .12)}.spec-icon.plot{background:rgb(13 13 13 / .07)}.spec-label{font-weight:600;color:var(--black);flex:1}.spec-value{font-weight:400;color:var(--gray-3);font-size:10.5px}.status-bar{margin-top:9px;display:flex;align-items:center;gap:6px;font-size:10px;font-weight:600;color:#16a34a;background:rgb(34 197 94 / .08);border-radius:6px;padding:5px 8px}.status-dot{width:6px;height:6px;border-radius:50%;background:#22c55e;flex-shrink:0}.tab-panel{display:none}.tab-panel.active{display:block}.pagination-wrap{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:36px;flex-wrap:wrap}.pg-btn{font-family:'Poppins',sans-serif;font-size:13px;font-weight:600;width:40px;height:40px;border:1.5px solid var(--gray-2);border-radius:10px;background:var(--white);color:var(--gray-3);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.pg-btn:hover:not(:disabled){border-color:var(--orange);color:var(--orange)}.pg-btn.active{background:var(--orange);color:var(--white);border-color:var(--orange);box-shadow:0 4px 14px rgb(244 124 32 / .35)}.pg-btn:disabled{opacity:.35;cursor:not-allowed}.pg-info{font-size:12px;font-weight:500;color:var(--gray-3);margin-left:8px}@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}#lightbox{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;background:#fff0;transition:opacity .3s ease,background .3s ease}#lightbox.open{opacity:1;pointer-events:all;background:rgb(0 0 0 / .9)}.lb-inner{display:flex;flex-direction:column;align-items:center;gap:16px;transform:scale(.86);transition:transform .38s cubic-bezier(.22,1,.36,1);max-width:92vw}#lightbox.open .lb-inner{transform:scale(1)}#lb-img{max-width:88vw;max-height:78vh;border-radius:16px;object-fit:contain;display:block;box-shadow:0 40px 100px rgb(0 0 0 / .7);opacity:0;transition:opacity .22s ease}#lb-img.loaded{opacity:1}.lb-caption{text-align:center}.lb-caption-name{font-family:'Poppins',sans-serif;font-size:17px;font-weight:700;color:#fff;letter-spacing:-.2px}.lb-caption-loc{font-family:'Poppins',sans-serif;font-size:12px;font-weight:500;color:var(--orange);margin-top:4px}#lb-close{position:fixed;top:18px;right:22px;width:46px;height:46px;border-radius:50%;background:rgb(255 255 255 / .1);border:1.5px solid rgb(255 255 255 / .18);color:#fff;cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center;transition:background .2s,transform .2s;backdrop-filter:blur(8px)}#lb-close:hover{background:var(--orange);transform:scale(1.12) rotate(90deg)}.lb-nav{position:fixed;top:50%;transform:translateY(-50%);width:50px;height:50px;border-radius:50%;background:rgb(255 255 255 / .1);border:1.5px solid rgb(255 255 255 / .18);color:#fff;cursor:pointer;font-size:26px;display:none;align-items:center;justify-content:center;transition:background .2s;backdrop-filter:blur(8px);user-select:none}.lb-nav.visible{display:flex}#lb-prev{left:18px}#lb-next{right:18px}#lb-prev:hover{background:rgb(244 124 32 / .75);transform:translateY(-50%) scale(1.1)}#lb-next:hover{background:rgb(244 124 32 / .75);transform:translateY(-50%) scale(1.1)}#lb-dots{display:flex;gap:6px;justify-content:center;margin-top:4px}.lb-dot{width:7px;height:7px;border-radius:50%;background:rgb(255 255 255 / .3);transition:background .2s,transform .2s}.lb-dot.active{background:var(--orange);transform:scale(1.3)}#lb-counter{font-family:'Poppins',sans-serif;font-size:11px;font-weight:600;color:rgb(255 255 255 / .45);letter-spacing:1.5px;margin-top:2px}#lb-swipe-hint{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);font-family:'Poppins',sans-serif;font-size:11px;color:rgb(255 255 255 / .3);pointer-events:none;display:none}@media(max-width:1100px){.cards-grid{grid-template-columns:repeat(3,1fr);gap:16px}}@media(max-width:860px){.hb-embed-shell{padding:36px 12px 56px}.cards-grid,.cards-grid-ongoing{grid-template-columns:repeat(2,1fr);gap:14px}.tab-btn{padding:9px 16px;font-size:12px}}@media(max-width:560px){body{padding:26px 10px 44px}.cards-grid,.cards-grid-ongoing{grid-template-columns:repeat(2,1fr);gap:10px}.card-body{padding:11px 10px 13px}.card-name{font-size:13px}.tab-btn{padding:8px 12px;font-size:11.5px;min-height:40px}.pg-btn{width:34px;height:34px;font-size:12px}#lb-prev{left:6px}#lb-next{right:6px}#lb-swipe-hint{display:block}#lb-img{max-width:96vw;max-height:72vh}}@media(max-width:380px){.cards-grid,.cards-grid-ongoing{grid-template-columns:1fr}}

