:root{--primary-red: #C8102E;--primary-red-dark: #a00d18;--primary-red-light: #ef4444;--primary-red-glow: rgba(200, 16, 46, .15);--primary-gold: #C49A1A;--primary-gold-dark: #9f7c11;--primary-gold-light: #e4b82f;--primary-gold-glow: rgba(196, 154, 26, .15);--primary-green: var(--primary-red);--primary-green-dark: var(--primary-red-dark);--primary-green-light: var(--primary-gold);--primary-green-glow: var(--primary-red-glow);--bg-white: #ffffff;--bg-gray-light: #f4f6f8;--bg-gray-card: rgba(255, 255, 255, .72);--text-dark: #111827;--text-gray-sub: #4b5563;--text-gray-muted: #9ca3af;--border-light-green: rgba(200, 16, 46, .08);--border-card-glow: rgba(196, 154, 26, .22);--shadow-premium: 0 10px 30px -10px rgba(0, 0, 0, .04), 0 1px 1px rgba(0, 0, 0, .02);--shadow-premium-hover: 0 24px 48px -15px rgba(200, 16, 46, .14), 0 8px 24px -8px rgba(0, 0, 0, .05);--ff-outfit: "Outfit", sans-serif;--ff-plus: "Plus Jakarta Sans", sans-serif}.accent-gold{color:var(--primary-gold)}body{background:#fafafa;color:var(--text-dark);font-family:var(--ff-plus)}h1,h2,h3,h4,h5,h6{font-family:var(--ff-outfit);letter-spacing:-.02em}.glass-panel{background:#ffffffbf;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.6);box-shadow:0 10px 30px #00000008}.filter-sticky-wrapper{position:sticky;top:90px;z-index:90;padding:0 6vw;margin:-35px 0 60px}.filter-container{max-width:1200px;margin:0 auto;border-radius:100px;padding:10px 24px;border:1px solid rgba(200,16,46,.08);box-shadow:0 16px 40px #00000008,0 1px 2px #c8102e05}.filter-inner{display:flex;align-items:center;justify-content:space-between;gap:16px}.filter-label{font-family:var(--ff-outfit);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--primary-green);flex-shrink:0}.filter-scroll{display:flex;gap:8px;overflow-x:auto;scroll-behavior:smooth;padding:2px 0;scrollbar-width:none;width:100%}.filter-scroll::-webkit-scrollbar{display:none}.filter-btn{position:relative;border:none;background:transparent;padding:8px 20px;border-radius:50px;cursor:pointer;font-family:var(--ff-outfit);font-size:.78rem;font-weight:600;color:var(--text-gray-sub);letter-spacing:.02em;white-space:nowrap;transition:all .3s cubic-bezier(.16,1,.3,1)}.filter-btn span{position:relative;z-index:2}.filter-btn .btn-glow{position:absolute;inset:0;border-radius:50px;background:#c8102e14;border:1px solid rgba(200,16,46,.18);opacity:0;transform:scale(.9);transition:all .3s cubic-bezier(.16,1,.3,1);z-index:1}.filter-btn:hover{color:var(--primary-green)}.filter-btn:hover .btn-glow{opacity:1;transform:scale(1)}.filter-btn.active{color:#fff}.filter-btn.active .btn-glow{background:linear-gradient(135deg,var(--primary-green-light) 0%,var(--primary-green) 100%);border-color:var(--primary-green);box-shadow:0 4px 14px var(--primary-green-glow);opacity:1;transform:scale(1)}.gallery-grid-section{padding:40px 6vw 100px;max-width:1400px;margin:0 auto}.gallery-intro{text-align:center;max-width:600px;margin:0 auto 50px}.intro-label{display:inline-block;font-size:.65rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--primary-green);background:#c8102e0f;border:1px solid rgba(200,16,46,.15);padding:4px 12px;border-radius:40px;margin-bottom:12px}.intro-title{font-size:clamp(1.8rem,3.5vw,2.5rem);font-weight:750;color:var(--text-dark);margin-bottom:12px}.intro-desc{font-size:.92rem;line-height:1.6;color:var(--text-gray-sub)}.gallery-masonry-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:240px;grid-auto-flow:dense;gap:20px;width:100%}.gallery-card{position:relative;border-radius:20px;overflow:hidden;background:#fff;box-shadow:var(--shadow-premium);border:1px solid rgba(0,0,0,.04);cursor:pointer;transition:all .6s cubic-bezier(.16,1,.3,1)}.card-standard{grid-column:span 1;grid-row:span 1}.card-wide{grid-column:span 2;grid-row:span 1}.card-tall{grid-column:span 1;grid-row:span 2}.card-large{grid-column:span 2;grid-row:span 2}.card-image-wrap{position:absolute;inset:0;overflow:hidden;z-index:0}.card-img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.16,1,.3,1)}.card-glow-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(4,8,7,.5) 0%,transparent 60%);opacity:.85;transition:opacity .5s}.card-category-tag{position:absolute;top:16px;left:16px;font-family:var(--ff-outfit);font-size:.58rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:#c8102ed9;backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.15);padding:4px 10px;border-radius:6px;z-index:2;transition:opacity .3s}.card-info-bottom{position:absolute;bottom:0;left:0;right:0;padding:16px;z-index:1;pointer-events:none;transition:opacity .3s,transform .4s}.card-visible-title{font-size:.9rem;font-weight:700;color:#fff;margin-bottom:2px;text-shadow:0 2px 4px rgba(0,0,0,.3)}.card-visible-location{font-size:.65rem;color:#ffffffbf;font-weight:500}.card-hover-overlay{position:absolute;inset:0;background:linear-gradient(to top,#07090fa6,#07090f40);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.08);padding:24px;display:flex;flex-direction:column;justify-content:space-between;opacity:0;transform:translateY(15px);transition:all .4s cubic-bezier(.16,1,.3,1);z-index:3}.overlay-top{display:flex;justify-content:space-between;align-items:center}.tag-pill{font-family:var(--ff-outfit);font-size:.58rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--primary-green);background:#c8102e0f;border:1px solid rgba(200,16,46,.15);padding:4px 10px;border-radius:6px}.card-cta-icon{width:32px;height:32px;border-radius:50%;background:var(--primary-green);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 10px #c8102e40;transition:transform .3s}.card-cta-icon svg{width:14px;height:14px}.overlay-bottom{text-align:left}.card-cta-btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 22px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;font-size:.72rem;font-weight:700;border-radius:50px;text-transform:uppercase;letter-spacing:.08em;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);transition:all .3s cubic-bezier(.16,1,.3,1)}.gallery-card:hover .card-cta-btn{background:var(--primary-green);border-color:var(--primary-green);box-shadow:0 6px 18px var(--primary-green-glow);transform:translateY(-2px)}.card-title{font-size:1.1rem;font-weight:700;color:var(--text-dark);margin-bottom:6px;line-height:1.25}.card-description{font-size:.76rem;line-height:1.5;color:var(--text-gray-sub);margin-bottom:12px}.card-quick-specs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:4px}.card-quick-specs span{font-size:.62rem;font-weight:600;color:var(--text-gray-sub);background:#0000000a;padding:2px 8px;border-radius:4px}.card-click-trigger{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;border:none;background:transparent}.gallery-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-premium-hover);border-color:#10b98133}.gallery-card:hover .card-img{transform:scale(1.06)}.gallery-card:hover .card-glow-overlay{opacity:.3}.gallery-card:hover .card-category-tag,.gallery-card:hover .card-info-bottom{opacity:0}.gallery-card:hover .card-hover-overlay{opacity:1;transform:translateY(0)}.gallery-card:hover .card-cta-icon{transform:scale(1.1) rotate(45deg)}.gallery-card.filtered-out{opacity:0;transform:scale(.9) translateY(10px);pointer-events:none;position:absolute;z-index:0;visibility:hidden}.featured-showcase-section{position:relative;padding:100px 6vw;background:#07090f;overflow:hidden}.showcase-glow-radial{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:80%;height:80%;background:radial-gradient(circle,rgba(200,16,46,.08) 0%,transparent 60%);filter:blur(80px);pointer-events:none}.showcase-grid-inner{max-width:1300px;margin:0 auto;display:grid;grid-template-columns:1.1fr .9fr;gap:5vw;align-items:center;position:relative;z-index:2}.showcase-visual-wrapper{position:relative;border-radius:24px;overflow:hidden;aspect-ratio:16/11;box-shadow:0 30px 60px #0006;border:1px solid rgba(255,255,255,.06)}.showcase-visual-img{width:100%;height:100%;object-fit:cover}.showcase-visual-overlay{position:absolute;inset:0;background:linear-gradient(45deg,rgba(4,8,7,.5) 0%,transparent 60%)}.showcase-badge{position:absolute;top:24px;left:24px;display:flex;align-items:center;gap:8px;background:#ffffff14!important;border:1px solid rgba(255,255,255,.15)!important;padding:6px 14px;border-radius:50px;color:#fff;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.pulse-emerald{width:6px;height:6px;border-radius:50%;background:var(--primary-green-light);box-shadow:0 0 6px var(--primary-green-light);animation:dotPulse 2s infinite}.showcase-content-wrapper{color:#fff}.showcase-eyebrow{display:inline-block;font-size:.65rem;font-weight:800;letter-spacing:.25em;text-transform:uppercase;color:var(--primary-green-light);margin-bottom:12px}.showcase-headline{font-size:clamp(2rem,3.5vw,2.8rem);font-weight:750;color:#fff;margin-bottom:20px;line-height:1.15}.showcase-paragraph{font-size:.95rem;line-height:1.7;color:#ffffffb3;margin-bottom:30px}.showcase-stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:30px}.showcase-stat-card{background:#ffffff08!important;border:1px solid rgba(255,255,255,.06)!important;border-radius:16px;padding:16px 20px;text-align:left;transition:all .3s}.showcase-stat-card:hover{background:#c49a1a0d!important;border-color:#c49a1a33!important}.stat-num{font-family:var(--ff-outfit);font-size:2rem;font-weight:800;line-height:1;color:#fff}.stat-suffix{font-family:var(--ff-outfit);font-size:1.1rem;font-weight:700;color:var(--primary-green-light);margin-left:2px}.stat-label{display:block;font-size:.65rem;color:#ffffff73;margin-top:4px;text-transform:uppercase;letter-spacing:.05em;font-weight:600}.showcase-highlights-box{background:#c8102e0a!important;border:1px solid rgba(200,16,46,.15)!important;border-radius:16px;padding:20px 24px}.showcase-highlights-box h3{font-size:.9rem;font-weight:700;color:var(--primary-green-light);margin-bottom:12px;letter-spacing:.02em}.showcase-highlights-box ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.showcase-highlights-box li{display:flex;align-items:flex-start;gap:10px}.showcase-highlights-box li svg{width:14px;height:14px;color:var(--primary-green-light);margin-top:4px;flex-shrink:0}.showcase-highlights-box li span{font-size:.78rem;line-height:1.45;color:#ffffffbf}.lightbox-portal{position:fixed;inset:0;width:100%;height:100%;z-index:1000;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .5s cubic-bezier(.16,1,.3,1)}.lightbox-portal.active{opacity:1;pointer-events:auto}.lightbox-backdrop{position:absolute;inset:0;background:#040807bf;backdrop-filter:blur(25px) saturate(180%);-webkit-backdrop-filter:blur(25px) saturate(180%);z-index:0}.lightbox-window{position:relative;width:90vw;height:85vh;max-width:1300px;display:grid;grid-template-rows:auto 1fr auto;background:#11182766;border:1px solid rgba(255,255,255,.08);border-radius:28px;box-shadow:0 50px 100px #0009;overflow:hidden;z-index:1;opacity:0;transform:scale(.96);transition:all .5s cubic-bezier(.16,1,.3,1)}.lightbox-portal.active .lightbox-window{opacity:1;transform:scale(1)}.lightbox-toolbar{position:relative;padding:18px 28px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.05);z-index:2;background:linear-gradient(to bottom,rgba(4,8,7,.4) 0%,transparent 100%)}.autoplay-timer-bar{position:absolute;bottom:0;left:0;height:2px;background:var(--primary-green);width:0%;z-index:10;pointer-events:none}.lightbox-action-btn.active{background:var(--primary-green)!important;border-color:var(--primary-green)!important;color:#fff!important}.lightbox-image-index{font-size:.75rem;font-weight:700;color:#ffffff80;letter-spacing:.1em;font-family:var(--ff-outfit)}.lightbox-actions{display:flex;align-items:center;gap:12px}.lightbox-action-btn,.lightbox-close-btn{border:none;background:#ffffff0a;color:#fff;width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;border:1px solid rgba(255,255,255,.08);transition:all .3s cubic-bezier(.16,1,.3,1)}.lightbox-action-btn svg,.lightbox-close-btn svg{width:16px;height:16px}.lightbox-action-btn:hover,.lightbox-close-btn:hover{background:#fff;color:var(--text-dark);transform:scale(1.05)}.lightbox-close-btn:hover{transform:scale(1.05) rotate(90deg)}.lightbox-nav-btn{position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;border-radius:50%;border:1px solid rgba(255,255,255,.08);background:#11182799;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;box-shadow:0 10px 25px #0000004d;transition:all .3s cubic-bezier(.16,1,.3,1)}.lightbox-nav-btn svg{width:20px;height:20px}.lightbox-nav-btn:hover{background:#fff;color:var(--text-dark);border-color:#fff}.prev-btn{left:24px}.next-btn{right:24px}.lightbox-stage{position:relative;display:flex;align-items:center;justify-content:center;padding:20px;overflow:hidden;z-index:1}.lightbox-image-container{width:100%;height:100%;display:flex;align-items:center;justify-content:center;transition:transform .4s cubic-bezier(.16,1,.3,1);will-change:transform}.lightbox-img{max-width:94%;max-height:92%;object-fit:contain;border-radius:12px;box-shadow:0 25px 50px #0006;user-select:none;transition:transform .4s ease}.lightbox-image-container.zoomed{cursor:zoom-out}.lightbox-image-container.zoomed .lightbox-img{transform:scale(1.4)}.lightbox-spinner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:36px;height:36px;border:3px solid rgba(255,255,255,.1);border-top-color:var(--primary-green-light);border-radius:50%;animation:spin 1s linear infinite;z-index:0;opacity:0;transition:opacity .3s}.lightbox-spinner.loading{opacity:1}@keyframes spin{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.lightbox-details-panel{display:none!important}.lightbox-panel-inner{max-width:1000px;margin:0 auto;text-align:left;color:#fff}.lightbox-meta-top{display:flex;align-items:center;gap:12px;margin-bottom:8px}.lightbox-category-pill{font-family:var(--ff-outfit);font-size:.58rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--primary-green-light);background:#c49a1a1a;border:1px solid rgba(196,154,26,.2);padding:4px 10px;border-radius:4px}.lightbox-title{font-size:1.35rem;font-weight:700}.lightbox-desc{font-size:.85rem;line-height:1.6;color:#ffffffa6;margin-bottom:16px;max-width:850px}.lightbox-spec-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;border-top:1px solid rgba(255,255,255,.05);padding-top:16px}.lightbox-spec-item{display:flex;flex-direction:column}.lightbox-spec-label{font-size:.55rem;font-weight:700;text-transform:uppercase;color:#fff6;letter-spacing:.05em}.lightbox-spec-value{font-size:.76rem;font-weight:600;color:#fff;margin-top:2px}.trust-quality-section{position:relative;padding:100px 6vw;background:var(--bg-white);overflow:hidden}.trust-bg-pattern{position:absolute;inset:0;background-image:radial-gradient(rgba(200,16,46,.04) 1px,transparent 1px);background-size:24px 24px;opacity:.7;z-index:0}.trust-inner-wrapper{position:relative;z-index:1;max-width:1300px;margin:0 auto}.trust-header{text-align:center;max-width:650px;margin:0 auto 60px}.trust-eyebrow{display:inline-block;font-size:.65rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--primary-green);background:#c8102e0d;padding:4px 12px;border-radius:40px;margin-bottom:12px}.trust-headline{font-size:clamp(1.8rem,3.5vw,2.5rem);font-weight:750;color:var(--text-dark);margin-bottom:12px}.trust-paragraph{font-size:.92rem;line-height:1.6;color:var(--text-gray-sub)}.trust-cards-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.trust-card{background:#ffffffb3!important;border-radius:20px;padding:30px 24px;transition:all .3s}.trust-card:hover{transform:translateY(-5px);background:#fff!important;box-shadow:var(--shadow-premium-hover);border-color:#c49a1a26!important}.trust-icon-box{width:48px;height:48px;background:#c8102e0d;color:var(--primary-green);border-radius:14px;display:flex;align-items:center;justify-content:center;margin-bottom:20px;transition:all .3s}.trust-icon-box svg{width:22px;height:22px}.trust-card:hover .trust-icon-box{background:var(--primary-green);color:#fff;transform:scale(1.05)}.trust-card h3{font-size:1.05rem;font-weight:700;color:var(--text-dark);margin-bottom:10px}.trust-card p{font-size:.78rem;line-height:1.55;color:var(--text-gray-sub);margin-bottom:16px}.trust-highlight{font-size:.65rem;font-weight:750;color:var(--primary-green);text-transform:uppercase;letter-spacing:.05em;display:inline-block;padding:3px 8px;background:#c8102e0d;border-radius:4px}.final-cta-section{position:relative;padding:120px 6vw;background:linear-gradient(135deg,#8a0b18cc,#0a0a0cd9),url(/gallery/commercial-solar-structure-installation-chennai.webp) no-repeat center/cover;overflow:hidden;text-align:center}.cta-gradient-overlay{position:absolute;inset:0;background:radial-gradient(circle at center,rgba(200,16,46,.12) 0%,transparent 65%);z-index:1}.cta-content{position:relative;z-index:2;max-width:1000px;margin:0 auto}.cta-headline{font-size:clamp(1.8rem,3.8vw,3.2rem);font-weight:800;color:#fff;margin-bottom:16px;letter-spacing:-.02em;line-height:1.15;white-space:nowrap}.cta-subtext{font-size:1.05rem;line-height:1.65;color:#ffffffb3;margin-bottom:40px;font-weight:400}.cta-buttons-wrapper{display:flex;justify-content:center;align-items:center;gap:16px;flex-wrap:wrap}.btn-cta{display:inline-flex;align-items:center;gap:10px;padding:14px 28px;border-radius:50px;font-family:var(--ff-outfit);font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;text-decoration:none;transition:all .3s cubic-bezier(.16,1,.3,1)}.btn-cta svg{width:14px;height:14px;transition:transform .3s}.btn-cta:hover svg{transform:translate(4px)}.primary-green{background:var(--primary-green);color:#fff;box-shadow:0 6px 20px var(--primary-green-glow);border:1px solid var(--primary-green)}.primary-green:hover{background:var(--primary-green-light);border-color:var(--primary-green-light);transform:translateY(-2px);box-shadow:0 10px 25px #c49a1a59}.btn-cta.btn-gold{background:var(--primary-gold)!important;color:#fff!important;box-shadow:0 6px 20px var(--primary-gold-glow)!important;border:1px solid var(--primary-gold)!important}.btn-cta.btn-gold:hover{background:var(--primary-gold-light)!important;border-color:var(--primary-gold-light)!important;color:#fff!important;transform:translateY(-2px)!important;box-shadow:0 10px 25px #c49a1a59!important}.glass-outline{background:#ffffff08;color:#fff;border:1px solid rgba(255,255,255,.15);backdrop-filter:blur(8px)}.glass-outline:hover{background:#ffffff14;border-color:var(--primary-gold);transform:translateY(-2px);box-shadow:0 8px 25px #c49a1a40}@media(max-width:1200px){.gallery-masonry-grid{grid-template-columns:repeat(3,1fr);grid-auto-rows:220px}.card-large{grid-column:span 2;grid-row:span 2}.card-wide{grid-column:span 2;grid-row:span 1}.trust-cards-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:900px){.floating-cards-container{display:none}.filter-sticky-wrapper{top:75px;margin-top:-20px;margin-bottom:40px}.filter-container{border-radius:20px;padding:10px 16px}.filter-inner{flex-direction:column;align-items:flex-start;gap:8px}.filter-label{padding-left:6px}.gallery-masonry-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:200px}.card-large{grid-column:span 2;grid-row:span 2}.showcase-grid-inner{grid-template-columns:1fr;gap:40px}.lightbox-spec-grid{grid-template-columns:repeat(2,1fr)}.lightbox-window{height:90vh;grid-template-rows:auto 1fr auto}.lightbox-nav-btn{width:44px;height:44px}.prev-btn{left:12px}.next-btn{right:12px}}@media(max-width:600px){.cta-headline{white-space:normal}.gallery-hero{padding-top:100px;min-height:70vh}.filter-sticky-wrapper{top:68px}.gallery-masonry-grid{display:flex;flex-direction:column;gap:16px}.gallery-card{height:250px!important}.trust-cards-grid{grid-template-columns:1fr}.cta-buttons-wrapper{flex-direction:column;width:100%}.btn-cta{width:100%;justify-content:center}.lightbox-toolbar{padding:12px 18px}.lightbox-details-panel{padding:16px 20px}.lightbox-title{font-size:1.1rem}.lightbox-desc{font-size:.78rem}.lightbox-spec-grid{padding-top:10px;gap:8px}.lightbox-spec-value{font-size:.7rem}}
