@import"https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700;800&family=Manrope:wght@400;500;600;700&display=swap";:root{--color-bg: #FAFAF9;--color-bg-white: #FFFFFF;--color-text: #1F2937;--color-text-light: #6B7280;--color-border: #E5E7EB;--font-display: "Outfit", sans-serif;--font-body: "Manrope", sans-serif;--section-padding: clamp(4rem, 8vw, 8rem);--container-padding: clamp(1.5rem, 5vw, 3rem);--transition-smooth: all .4s cubic-bezier(.4, 0, .2, 1);--transition-spring: all .6s cubic-bezier(.34, 1.56, .64, 1);--brand-primary: #047857;--brand-primary-dark: #065f46;--brand-primary-light: #10B981;--brand-secondary: #F59E0B;--brand-secondary-light: #FBBF24;--brand-accent: #34D399;--brand-gradient: linear-gradient(135deg, #047857 0%, #065f46 100%);--brand-gradient-hero: linear-gradient(135deg, #022c22 0%, #064e3b 50%, #065f46 100%);--brand-shadow: rgba(4, 120, 87, .3);--brand-shadow-hover: rgba(4, 120, 87, .4);--color-primary: var(--brand-primary);--color-primary-light: var(--brand-primary-light);--color-primary-dark: var(--brand-primary-dark);--color-secondary: var(--brand-secondary);--color-secondary-light: var(--brand-secondary-light);--color-accent: #0EA5E9;--color-accent-light: #38BDF8}[data-brand=cpo-solar]{--brand-primary: #047857;--brand-primary-dark: #065f46;--brand-primary-light: #10B981;--brand-secondary: #F59E0B;--brand-secondary-light: #FBBF24;--brand-accent: #34D399;--brand-gradient: linear-gradient(135deg, #047857 0%, #065f46 100%);--brand-gradient-hero: linear-gradient(135deg, #022c22 0%, #064e3b 50%, #065f46 100%);--brand-shadow: rgba(4, 120, 87, .3);--brand-shadow-hover: rgba(4, 120, 87, .45);--color-primary: #047857;--color-primary-light: #10B981;--color-primary-dark: #065f46}[data-brand=cio]{--brand-primary: #1E3A5F;--brand-primary-dark: #0F2A45;--brand-primary-light: #2563EB;--brand-secondary: #B8960C;--brand-secondary-light: #D4AF37;--brand-accent: #3B82F6;--brand-gradient: linear-gradient(135deg, #1E3A5F 0%, #0F2A45 100%);--brand-gradient-hero: linear-gradient(135deg, #0a1628 0%, #1E3A5F 50%, #0F2A45 100%);--brand-shadow: rgba(30, 58, 95, .35);--brand-shadow-hover: rgba(30, 58, 95, .5);--color-primary: #1E3A5F;--color-primary-light: #2563EB;--color-primary-dark: #0F2A45;--color-bg: #F8F9FB}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden}body{font-family:var(--font-body);background:var(--color-bg);color:var(--color-text);line-height:1.7;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:700;line-height:1.2;color:var(--color-text)}h1{font-size:clamp(2.5rem,6vw,5rem);font-weight:800;letter-spacing:-.02em}h2{font-size:clamp(2rem,5vw,3.5rem);font-weight:700;letter-spacing:-.01em}h3{font-size:clamp(1.5rem,3vw,2rem);font-weight:600}p{font-size:clamp(1rem,2vw,1.125rem);color:var(--color-text-light)}.container{max-width:1400px;margin:0 auto;padding:0 var(--container-padding)}.btn{display:inline-flex;align-items:center;gap:.75rem;padding:1rem 2rem;font-family:var(--font-display);font-size:1.125rem;font-weight:600;text-decoration:none;border-radius:12px;border:none;cursor:pointer;transition:var(--transition-smooth);position:relative;overflow:hidden}.btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.btn:hover:before{width:300px;height:300px}.btn-primary{background:var(--brand-gradient);color:#fff;box-shadow:0 10px 30px var(--brand-shadow)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 15px 40px var(--brand-shadow-hover)}.btn-secondary{background:linear-gradient(135deg,var(--brand-secondary) 0%,var(--brand-secondary-light) 100%);color:#fff;box-shadow:0 10px 30px #f59e0b4d}.btn-secondary:hover{transform:translateY(-2px);box-shadow:0 15px 40px #f59e0b66}.btn-outline{background:transparent;color:var(--brand-primary);border:2px solid var(--brand-primary)}.btn-outline:hover{background:var(--brand-primary);color:#fff;transform:translateY(-2px)}.btn-outline-light{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.7)}.btn-outline-light:hover{background:#ffffff26;border-color:#fff;color:#fff;transform:translateY(-2px)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.animate-fade-in-up{animation:fadeInUp .8s ease-out forwards}.animate-fade-in{animation:fadeIn .8s ease-out forwards}.animate-slide-in-left{animation:slideInLeft .8s ease-out forwards}.animate-slide-in-right{animation:slideInRight .8s ease-out forwards}.animate-scale-in{animation:scaleIn .8s ease-out forwards}.delay-100{animation-delay:.1s;opacity:0}.delay-200{animation-delay:.2s;opacity:0}.delay-300{animation-delay:.3s;opacity:0}.delay-400{animation-delay:.4s;opacity:0}.delay-500{animation-delay:.5s;opacity:0}.delay-600{animation-delay:.6s;opacity:0}section{padding:var(--section-padding) 0;position:relative}.section-title{text-align:center;margin-bottom:3rem}.section-title h2{margin-bottom:1rem}.section-title p{max-width:600px;margin:0 auto;font-size:1.25rem}.card{background:var(--color-bg-white);border-radius:16px;padding:2rem;box-shadow:0 4px 20px #00000014;transition:var(--transition-smooth);border:1px solid var(--color-border)}.card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #0000001f}.gradient-primary{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-light) 100%)}.gradient-secondary{background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-secondary-light) 100%)}.gradient-accent{background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-light) 100%)}.gradient-animated{background:linear-gradient(-45deg,var(--color-primary),var(--color-accent),var(--color-secondary),var(--color-primary-light));background-size:400% 400%;animation:gradientShift 15s ease infinite}.grid{display:grid;gap:2rem}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.grid-4{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}@media(max-width:768px){:root{--section-padding: 3rem}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.scroll-reveal{opacity:0;transform:translateY(30px);transition:opacity .8s ease-out,transform .8s ease-out}.scroll-reveal.revealed{opacity:1;transform:translateY(0)}::-webkit-scrollbar{width:12px}::-webkit-scrollbar-track{background:var(--color-bg)}::-webkit-scrollbar-thumb{background:var(--color-primary);border-radius:6px}::-webkit-scrollbar-thumb:hover{background:var(--brand-primary-dark, var(--color-primary-dark))}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem}.gallery-item{border-radius:10px;overflow:hidden;cursor:pointer;position:relative;transition:transform .3s ease,box-shadow .3s ease}.gallery-item:nth-child(3n+1){aspect-ratio:4/3}.gallery-item:nth-child(3n+2){aspect-ratio:3/4}.gallery-item:nth-child(3n+3){aspect-ratio:1/1}.gallery-item:hover{transform:scale(1.02);box-shadow:0 12px 32px #0003;z-index:1}.gallery-item img,.gallery-item video{width:100%;height:100%;object-fit:cover;display:block}.gallery-placeholder{display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:.875rem;font-weight:600;color:#ffffff80}.gallery-overlay{position:absolute;inset:0;background:#0000;display:flex;align-items:center;justify-content:center;transition:background .3s ease}.gallery-item:hover .gallery-overlay{background:#00000059}.gallery-overlay-icon{opacity:0;transform:scale(.7);transition:opacity .3s ease,transform .3s ease;color:#fff;font-size:2rem}.gallery-item:hover .gallery-overlay-icon{opacity:1;transform:scale(1)}.lightbox{display:none;position:fixed;inset:0;z-index:9999;background:#000000eb;align-items:center;justify-content:center;backdrop-filter:blur(4px)}.lightbox.active{display:flex}.lightbox-content{position:relative;max-width:90vw;max-height:90vh;display:flex;align-items:center;justify-content:center}.lightbox-img{max-width:85vw;max-height:85vh;object-fit:contain;border-radius:8px}.lightbox-placeholder{width:min(80vw,800px);aspect-ratio:4/3;border-radius:12px;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:1.25rem;color:#fff9}.lightbox-close,.lightbox-prev,.lightbox-next{position:fixed;background:#ffffff1a;border:none;color:#fff;cursor:pointer;border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;transition:background .2s ease;font-size:1.25rem;backdrop-filter:blur(4px);z-index:2}.lightbox-close:hover,.lightbox-prev:hover,.lightbox-next:hover{background:#ffffff40}.lightbox-close{top:1.5rem;right:1.5rem}.lightbox-prev{left:1.5rem;top:50%;transform:translateY(-50%)}.lightbox-next{right:1.5rem;top:50%;transform:translateY(-50%)}.lightbox-counter{position:fixed;bottom:2rem;left:50%;transform:translate(-50%);color:#fff9;font-family:var(--font-display);font-size:.875rem}@media(max-width:1024px){.gallery-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:640px){.gallery-grid{grid-template-columns:repeat(2,1fr);gap:.5rem}}.split-entry{display:flex;height:100vh;overflow:hidden}.split-panel{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden;cursor:pointer;transition:flex .6s cubic-bezier(.4,0,.2,1);text-decoration:none}.split-panel:hover{flex:1.4}.split-entry:has(.split-panel:hover) .split-panel:not(:hover){flex:.6}.split-divider{width:2px;background:#ffffff4d;position:relative;z-index:10;flex-shrink:0}@media(max-width:768px){.split-entry{flex-direction:column}.split-panel{flex:1!important;min-height:50vh}.split-entry:has(.split-panel:hover) .split-panel:not(:hover){flex:1!important}.split-divider{width:100%;height:2px}}.company-switcher{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem 1rem!important;border-radius:999px;border:1.5px solid rgba(0,0,0,.12);font-family:var(--font-display);font-size:.8rem;font-weight:600;text-decoration:none;color:var(--color-text-light);transition:var(--transition-smooth);background:#fffc;backdrop-filter:blur(4px);white-space:nowrap}.company-switcher:hover{background:var(--brand-primary);color:#fff;border-color:var(--brand-primary);transform:translateY(-1px)}.warranty-badge{display:inline-flex;align-items:center;gap:1rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:16px;padding:1.25rem 2rem;color:#fff}.warranty-badge .badge-icon{width:56px;height:56px;background:#ffffff26;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.warranty-badge .badge-amount{font-family:var(--font-display);font-size:clamp(1.5rem,4vw,2.5rem);font-weight:800;line-height:1}.warranty-badge .badge-label{font-size:.875rem;opacity:.8;line-height:1.4}.showcase-block{width:100%;aspect-ratio:16/7;position:relative;overflow:hidden}.showcase-block .showcase-img{width:100%;height:100%;object-fit:cover}.showcase-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.showcase-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.7) 0%,rgba(0,0,0,.1) 60%,transparent 100%);display:flex;flex-direction:column;justify-content:flex-end;padding:clamp(1.5rem,4vw,3rem)}
