:root{--ecb-columns:3;--ecb-card-height:520px;--ecb-image-height:280px;--ecb-gap:30px;--ecb-primary-color:#c41e3a;--ecb-dark-bg:#3a4a5c;--ecb-light-gray:#f8f9fa}.ecb-projects-grid{display:grid;grid-template-columns:repeat(var(--ecb-columns),1fr);gap:var(--ecb-gap);margin-top:20px}.ecb-project-card{display:flex;flex-direction:column;text-decoration:none;background:#fff;border:1px solid #eee;border-radius:8px;overflow:hidden;height:var(--ecb-card-height);transition:transform .3s ease,box-shadow .3s ease}.ecb-project-card:hover{transform:translateY(-5px);box-shadow:0 10px 20px rgba(0,0,0,.1)}.ecb-project-card:hover .ecb-project-image{transform:scale(1.02);filter:contrast(1.1) saturate(1.15) brightness(1.05)}.ecb-project-image{height:var(--ecb-image-height);width:100%;object-fit:cover;aspect-ratio:3/2;background:#f9f9f9;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges;image-rendering:high-quality;filter:contrast(1.05) saturate(1.1);transition:all .3s ease}.ecb-project-title{font-weight:700;color:#000;margin:12px 16px 4px;font-size:1.1rem}.ecb-project-meta{font-size:.9rem;color:#555;margin:0 16px 10px}.ecb-project-description{font-size:.95rem;color:#333;flex-grow:1;margin:0 16px 12px}.ecb-learn-more{display:block;margin:0 16px 16px;padding:8px 12px;text-align:center;background-color:var(--ecb-primary-color);color:#fff;font-weight:600;border-radius:4px}.ecb-filters-box{background:#f7f7f7;padding:20px;border-radius:10px;margin-bottom:20px;box-shadow:0 2px 6px rgba(0,0,0,.05)}.ecb-filter-group{display:flex;flex-wrap:wrap;gap:15px}.ecb-filter-select,.ecb-filter-search{padding:8px 10px;font-size:.95rem;border:1px solid #ccc;border-radius:6px;min-width:180px;background:#fff}.ecb-reset{background:#999;color:#fff;padding:8px 16px;font-weight:700;border:none;border-radius:6px;cursor:pointer;transition:background .3s ease}.ecb-reset:hover{background:#444}.ecb-single-hero{background-size:cover;background-position:center;padding:100px 20px;color:#fff;text-align:center;position:relative;margin-bottom:40px}.ecb-single-hero:after{content:'';background:rgba(0,0,0,.5);position:absolute;top:0;left:0;right:0;bottom:0}.ecb-single-hero-inner{position:relative;z-index:1;max-width:800px;margin:0 auto}.ecb-title{font-size:2.5rem;font-weight:700;margin-bottom:10px}.ecb-meta{font-size:1rem;margin-top:10px}.ecb-single-container{max-width:1200px;margin:0 auto;padding:0 20px;display:grid;grid-template-columns:2fr 1fr;gap:40px;align-items:start}.ecb-single-content{background:#fff;padding:0}.ecb-project-description{font-size:1.05rem;line-height:1.6;margin-bottom:40px;color:#333}.ecb-project-details-section{margin-bottom:40px}.ecb-project-details-section h3{font-size:1.5rem;font-weight:700;margin-bottom:20px;color:#333}.ecb-project-details-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.ecb-detail-item{display:flex;align-items:center;gap:12px}.ecb-detail-icon{width:24px;height:24px;background:var(--ecb-primary-color);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.ecb-detail-content{display:flex;flex-direction:column}.ecb-detail-label{font-size:.85rem;font-weight:700;color:#666;text-transform:uppercase}.ecb-detail-value{font-size:1rem;color:#333;font-weight:500}.ecb-gallery-section{margin-bottom:40px}.ecb-gallery-section h3{font-size:1.5rem;font-weight:700;margin-bottom:20px;color:#333}.ecb-gallery-grid-new{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:20px}.ecb-gallery-item-grid{aspect-ratio:1;overflow:hidden;border-radius:8px;cursor:pointer;transition:transform .3s ease}.ecb-gallery-item-full{grid-column:1/-1;aspect-ratio:2.5/1;overflow:hidden;border-radius:8px;cursor:pointer;transition:transform .3s ease;margin-top:15px}.ecb-gallery-item:hover{transform:scale(1.02)}.ecb-gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.ecb-gallery-item:hover img{transform:scale(1.05)}.ecb-single-sidebar{display:flex;flex-direction:column;gap:30px}.ecb-quote-form{background:#fff;padding:30px;border-radius:8px;box-shadow:0 2px 10px rgba(0,0,0,.1)}.ecb-quote-form h3{font-size:1.5rem;font-weight:700;margin-bottom:20px;color:#333}.ecb-form-group{margin-bottom:20px}.ecb-form-group label{display:block;font-size:.9rem;font-weight:500;color:#666;margin-bottom:5px}.ecb-form-group input,.ecb-form-group textarea{width:100%;padding:12px;border:1px solid #ddd;border-radius:4px;font-size:1rem;transition:border-color .3s ease}.ecb-form-group input:focus,.ecb-form-group textarea:focus{outline:none;border-color:var(--ecb-primary-color)}.ecb-submit-btn{width:100%;background:var(--ecb-primary-color);color:#fff;padding:15px;border:none;border-radius:4px;font-size:1rem;font-weight:700;cursor:pointer;transition:background .3s ease}.ecb-submit-btn:hover{background:#a01729}.ecb-help-section{background:var(--ecb-dark-bg);color:#fff;padding:30px;border-radius:8px}.ecb-help-section h3{font-size:1.5rem;font-weight:700;margin-bottom:15px}.ecb-help-section p{font-size:1rem;line-height:1.5;margin-bottom:25px;opacity:.9}.ecb-contact-info{display:flex;flex-direction:column;gap:20px}.ecb-contact-item{display:flex;align-items:center;gap:15px}.ecb-contact-icon{width:50px;height:50px;background:rgba(255,255,255,.1);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.ecb-contact-details{display:flex;flex-direction:column}.ecb-contact-label{font-size:.9rem;opacity:.8;margin-bottom:2px}.ecb-contact-value{font-size:1.1rem;font-weight:700}.ecb-related-section h3{font-size:1.5rem;font-weight:700;margin-bottom:20px;color:#333}.ecb-related-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;margin-top:20px}.ecb-related-card{text-decoration:none;background:#fff;border:1px solid #eee;border-radius:8px;overflow:hidden;transition:box-shadow .3s ease}.ecb-related-card:hover{box-shadow:0 5px 15px rgba(0,0,0,.1)}.ecb-related-card img{width:100%;height:180px;object-fit:cover}.ecb-related-card h4{margin:15px;font-size:1.05rem;color:#000}.ecb-lightbox{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.9);z-index:9999;display:flex;align-items:center;justify-content:center}.ecb-lightbox-content{position:relative;max-width:90%;max-height:90%}.ecb-lightbox-content img{max-width:100%;max-height:100%;object-fit:contain}.ecb-lightbox-close{position:absolute;top:-40px;right:0;color:#fff;font-size:30px;cursor:pointer;background:0 0;border:none;padding:5px}.ecb-lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);width:100%;display:flex;justify-content:space-between;pointer-events:none}.ecb-lightbox-nav button{background:rgba(255,255,255,.8);border:none;padding:10px 15px;font-size:18px;cursor:pointer;border-radius:4px;pointer-events:all;transition:background .3s ease}.ecb-lightbox-nav button:hover{background:rgba(255,255,255,1)}#ecb-prev-btn{margin-left:-50px}#ecb-next-btn{margin-right:-50px}@media screen and (max-width:1024px){.ecb-projects-grid{grid-template-columns:repeat(2,1fr)}.ecb-single-container{grid-template-columns:1fr;gap:30px}.ecb-project-details-grid{grid-template-columns:1fr}.ecb-gallery-grid-new{grid-template-columns:repeat(2,1fr)}}@media screen and (max-width:768px){.ecb-projects-grid{grid-template-columns:1fr}.ecb-filter-group{flex-direction:column}.ecb-filter-select,.ecb-filter-search{width:100%}.ecb-title{font-size:2rem}.ecb-single-container{padding:0 15px}.ecb-quote-form,.ecb-help-section{padding:20px}.ecb-gallery-grid-new{grid-template-columns:1fr}.ecb-contact-item{flex-direction:column;text-align:center}}.ecb-pagination{margin-top:40px;text-align:center}.ecb-pagination-inner{display:inline-flex;align-items:center;gap:8px;background:#fff;padding:15px 20px;border-radius:8px;box-shadow:0 2px 10px rgba(0,0,0,.1)}.ecb-page-btn{padding:8px 12px;border:1px solid #ddd;background:#fff;color:#333;border-radius:4px;cursor:pointer;font-size:.9rem;transition:all .3s ease;min-width:40px}.ecb-page-btn:hover{background:#f8f9fa;border-color:#bbb}.ecb-page-btn.active{background:#e74c3c;color:#fff;border-color:#e74c3c}.ecb-page-btn:disabled{opacity:.5;cursor:not-allowed}.ecb-pagination-dots{padding:8px 4px;color:#999;font-size:.9rem}@media (max-width:768px){.ecb-pagination-inner{padding:10px 15px;gap:5px}.ecb-page-btn{padding:6px 8px;font-size:.8rem;min-width:32px}}