.App{width:100%;min-height:100vh;background-color:var(--color-bg)}:root{--color-bg: #2a2b2d;--color-text-primary: #d8d6d4;--color-text-secondary: #a8a6a4;--color-text-tertiary: #888684;--color-gray-medium: #4b5563;--color-gray-medium-light: #6b7280;--color-gray-light: #f3f4f6;--color-white: #d8d6d4;--color-accent-primary: #f59e0b;--color-accent-primary-light: #fbbf24;--color-accent-primary-dark: #d97706;--color-accent-secondary: #3b82f6;--color-accent-secondary-light: #60a5fa;--color-accent-secondary-dark: #1e40af;--color-success: #10b981;--color-warning: #f59e0b;--color-error: #ef4444;--color-info: #3b82f6;--color-border: rgba(216, 214, 212, .05);--color-border-hover: rgba(216, 214, 212, .1);--color-border-accent: rgba(245, 158, 11, .5);--color-button-bg: #d8d6d4;--color-button-text: #000000;--color-button-hover: #f5f5f5;--color-button-primary: #f59e0b;--color-button-primary-hover: #fbbf24;--color-button-secondary: #3b82f6;--color-button-secondary-hover: #60a5fa;--color-input-border: rgba(216, 214, 212, .1);--color-input-border-focus: rgba(216, 214, 212, .3);--gradient-solar: linear-gradient(135deg, rgba(245, 158, 11, .1) 0%, rgba(59, 130, 246, .1) 100%);--gradient-accent: linear-gradient(135deg, #f59e0b 0%, #fbbf24 100%);--font-family: "Nunito", sans-serif;--font-size-xs: .825rem;--font-size-sm: .9625rem;--font-size-base: 1.1rem;--font-size-md: 1.2375rem;--font-size-lg: 1.65rem;--font-size-xl: 1.925rem;--font-size-2xl: 2.2rem;--font-size-3xl: 2.475rem;--font-size-4xl: 3.025rem;--font-size-5xl: 3.85rem;--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.1;--line-height-normal: 1.5;--line-height-relaxed: 1.6;--letter-spacing-tight: -1px;--letter-spacing-normal: -.5px;--letter-spacing-loose: -.3px;--spacing-xs: .2rem;--spacing-sm: .4rem;--spacing-md: .6rem;--spacing-lg: .8rem;--spacing-xl: 1rem;--spacing-2xl: 1.2rem;--spacing-3xl: 1.6rem;--spacing-4xl: 2rem;--spacing-5xl: 1.6rem;--spacing-6xl: 2rem;--spacing-8xl: 2.4rem;--container-max-width: 1200px;--container-max-width-wide: 1400px;--container-padding: 1.6rem;--section-padding-y: 1.6rem;--section-padding-x: 1.6rem;--border-radius-sm: 8px;--border-radius-md: 12px;--border-width: 1px;--border-radius-card-lg: clamp(16px, 3vw, 24px);--border-radius-card-md: clamp(12px, 2vw, 20px);--border-radius-card-sm: clamp(8px, 1.5vw, 16px);--border-radius-img: clamp(12px, 2vw, 16px);--border-radius-input: 8px;--touch-target-min: 44px;--transition-fast: .2s ease;--transition-normal: .3s ease;--transition-slow: .4s ease;--font-size-hero-title: clamp(30.8px, 8.8vw, 71.5px);--font-size-section-title-large: clamp(2.2rem, 4.4vw, 2.75rem);--font-size-section-title-medium: clamp(2.475rem, 4.95vw, 3.3rem);--font-size-card-title: clamp(1.925rem, 3.85vw, 2.475rem);--font-size-card-subtitle: clamp(1.1rem, 2.2vw, 1.2375rem);--font-size-body-large: clamp(1.2375rem, 2.42vw, 1.375rem);--font-size-body-medium: clamp(1.1rem, 2.2vw, 1.2375rem);--font-size-body-small: clamp(1.045rem, 2.2vw, 1.2375rem);--font-size-form-label: clamp(.9625rem, 2.2vw, 1.1rem);--font-size-form-input: clamp(.9625rem, 2.2vw, 1.1rem);--font-size-error: .9625rem;--font-size-indicator: .9625rem;--font-size-chart-label: clamp(.715rem, 1.32vw, .825rem);--spacing-section-top: clamp(4.8rem, 9.6vw, 6.4rem);--spacing-section-top-medium: clamp(2.4rem, 4.8vw, 3.2rem);--spacing-card-padding: clamp(1.2rem, 3.2vw, 2rem);--spacing-card-padding-large: clamp(1.6rem, 4vw, 2.8rem);--spacing-grid-gap: clamp(1.2rem, 3.2vw, 2rem);--spacing-grid-gap-small: clamp(.8rem, 2.4vw, 1.2rem);--spacing-form-gap: clamp(.8rem, 2.4vw, 1.2rem);--spacing-form-padding: clamp(.4rem, 1.2vw, .6rem);--spacing-button-padding: clamp(.6rem, 1.6vw, .9rem) clamp(1.6rem, 4vw, 2.4rem);--spacing-contact-padding: clamp(4.8rem, 8vw, 6.4rem) clamp(.8rem, 2.4vw, 1.6rem) clamp(1.6rem, 4vw, 3.2rem);--spacing-footer-padding: clamp(2.4rem, 4.8vw, 4rem);--spacing-margin-bottom-large: clamp(1.6rem, 4vw, 2.4rem);--spacing-margin-bottom-medium: clamp(1.2rem, 3.2vw, 2rem);--spacing-margin-bottom-small: clamp(.8rem, 2vw, 1.2rem);--spacing-gap-xs: .4rem;--spacing-gap-sm: .6rem;--spacing-gap-md: .8rem;--spacing-carousel-padding: 0 32px}*{margin:0;padding:0;box-sizing:border-box}html{overflow-x:clip;width:100%;scroll-behavior:smooth}body{font-family:var(--font-family);background-color:var(--color-bg);color:var(--color-text-primary);line-height:var(--line-height-normal);overflow-x:clip;width:100%;margin:0;padding:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{overflow-x:clip;width:100%}.section{padding:calc(var(--section-padding-y) + 20px) calc(var(--section-padding-x) + 20px);background-color:var(--color-bg);position:relative;z-index:1;margin-bottom:60px}.section:last-child{margin-bottom:0}#sobre-nos,#solucoes,#impacto,#vantagens-operador,#casos-estudos,#abrangencia-nacional,#sobre-nos .section-title,#solucoes .section-title,#impacto .section-title,#vantagens-operador .section-title,#casos-estudos .section-title,#abrangencia-nacional .section-title{scroll-margin-top:120px}.section-container{max-width:var(--container-max-width);margin:0 auto}.section-container-wide{max-width:var(--container-max-width-wide);margin:0 auto}.section-header{text-align:left;margin-bottom:var(--spacing-3xl)}.section-title{font-size:var(--font-size-4xl);font-weight:var(--font-weight-normal);color:var(--color-text-primary);margin-bottom:var(--spacing-md);letter-spacing:var(--letter-spacing-tight);position:relative}.section-title:after{content:"";display:block;width:87%;height:2px;background-color:var(--color-text-primary);margin-top:var(--spacing-md);opacity:.3}.section-subtitle{font-size:var(--font-size-md);color:var(--color-text-secondary);line-height:var(--line-height-relaxed);font-weight:var(--font-weight-light)}.card{background-color:transparent;padding:var(--spacing-2xl) 0;border:none;border-top:var(--border-width) solid var(--color-border);transition:var(--transition-fast)}.card:hover{border-top-color:var(--color-border-hover)}.card-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--spacing-md);letter-spacing:var(--letter-spacing-normal)}.card-description{font-size:var(--font-size-base);color:var(--color-text-secondary);line-height:var(--line-height-relaxed);font-weight:var(--font-weight-light)}.grid{display:grid;gap:var(--spacing-xl)}.grid-auto-fit{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.solutions-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}.grid-auto-fill{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.btn{padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);background-color:transparent;border:2px solid;border-radius:var(--border-radius-sm);cursor:pointer;transition:all .3s ease;font-family:var(--font-family);width:fit-content;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-full{width:100%}.btn-light{border-color:#1a1a1a;color:#1a1a1a}.btn-light:hover:not(:disabled){background-color:#e5e5e5;border-color:#000;box-shadow:0 2px 8px #0000001a}.btn-dark{border-color:#d8d6d4;color:#d8d6d4}.btn-dark:hover:not(:disabled){background-color:#d8d6d41a;border-color:#d8d6d4}.form-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.form-label{font-weight:var(--font-weight-medium);color:var(--color-text-primary);font-size:var(--font-size-sm)}.form-input,.form-textarea{padding:var(--spacing-md);border:var(--border-width) solid var(--color-input-border);border-radius:var(--border-radius-sm);background-color:transparent;color:var(--color-text-primary);font-size:var(--font-size-base);font-family:var(--font-family);transition:var(--transition-fast)}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--color-input-border-focus);background-color:#d8d6d405}.form-input::placeholder,.form-textarea::placeholder{color:var(--color-text-tertiary)}.form-textarea{resize:vertical;min-height:120px}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-xl)}.form-error{padding:var(--spacing-md);background-color:#ef44441a;border:var(--border-width) solid rgba(239,68,68,.3);border-radius:var(--border-radius-sm);color:var(--color-error);text-align:center;font-size:var(--font-size-sm)}.form-success{padding:var(--spacing-md);background-color:#10b9811a;border:var(--border-width) solid rgba(16,185,129,.3);border-radius:var(--border-radius-sm);color:var(--color-success);text-align:center;font-weight:var(--font-weight-normal);font-size:var(--font-size-sm)}@media (max-width: 968px){:root{--section-padding-y: 1.4rem;--section-padding-x: 1.2rem;--font-size-3xl: 2.2rem}.section-header{margin-bottom:var(--spacing-2xl)}.section-title{font-size:var(--font-size-3xl)}.form-row{grid-template-columns:1fr}.contact-content{grid-template-columns:1fr!important;gap:var(--spacing-4xl)!important}.calculator-form,.calculator-results{grid-template-columns:1fr!important}}@media (max-width: 768px){:root{--section-padding-y: 1.2rem;--section-padding-x: 1.2rem;--font-size-4xl: 2.475rem;--font-size-3xl: 2.0625rem;--font-size-5xl: 2.75rem}.section{margin-bottom:28px}.section-title:after{width:100%}.section-header{margin-bottom:var(--spacing-2xl)}.grid-auto-fit,.grid-auto-fill{grid-template-columns:1fr}.card{padding:var(--spacing-2xl) 0}}@media (max-width: 480px){:root{--section-padding-x: .8rem;--section-padding-y: 1rem;--font-size-4xl: 2.2rem;--font-size-3xl: 1.925rem;--font-size-2xl: 1.65rem;--font-size-xl: 1.375rem;--font-size-lg: 1.375rem}.section{margin-bottom:28px}.section-title:after{width:100%}.section-header{margin-bottom:var(--spacing-xl)}.card{padding:var(--spacing-xl) 0}.btn{width:100%;padding:var(--spacing-md) var(--spacing-lg)}.footer-grid{grid-template-columns:1fr!important;gap:var(--spacing-3xl)!important}.contact-content{gap:var(--spacing-3xl)!important}}@media (max-width: 768px){.footer-main-grid{grid-template-columns:1fr!important;gap:clamp(2rem,4vw,3rem)!important;text-align:center;padding-left:clamp(1rem,2vw,1.5rem)!important;padding-right:clamp(1rem,2vw,1.5rem)!important}.footer-logo-wrapper{align-items:flex-start!important;width:100%!important;justify-content:center}.footer-content-grid{grid-template-columns:1fr!important;width:100%!important;margin-left:0!important;gap:clamp(2.5rem,5vw,3.5rem)!important;justify-items:center}footer{padding:0!important}.footer-content-wrapper{padding:clamp(3rem,6vw,5rem) clamp(1.5rem,3vw,2rem)!important}.footer-content-grid ul{align-items:center!important;text-align:center}.footer-content-grid h3{text-align:center}.footer-copyright{margin-top:clamp(1.5rem,3vw,2.5rem)!important;padding-top:clamp(1rem,2vw,1.5rem)!important}}@media (max-width: 480px){footer{padding:0!important}.footer-content-wrapper{padding:clamp(2.5rem,5vw,4rem) clamp(1rem,2vw,1.5rem)!important}.footer-main-grid{gap:clamp(1.5rem,3vw,2.5rem)!important}.footer-content-grid{gap:clamp(2rem,4vw,3rem)!important}.footer-copyright{margin-top:clamp(1rem,2vw,2rem)!important;padding-top:clamp(.75rem,1.5vw,1rem)!important;padding-left:clamp(1rem,2vw,1.5rem)!important;padding-right:clamp(1rem,2vw,1.5rem)!important}}.navbar{position:fixed;top:0;width:100%;padding:.3rem calc(var(--section-padding-x) + 20px);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);z-index:1000;transition:background-color .4s ease,border-bottom .4s ease,backdrop-filter .4s ease,-webkit-backdrop-filter .4s ease;border-bottom:var(--border-width) solid rgba(42,43,45,.1)}.navbar.in-contact{background-color:transparent;border-bottom:var(--border-width) solid rgba(216,214,212,.1)}.navbar.in-section{background-color:#2a2b2d;border-bottom:var(--border-width) solid rgba(216,214,212,.1)}.navbar.scrolled{padding:var(--spacing-xs) calc(var(--section-padding-x) + 20px)}.navbar-container{max-width:var(--container-max-width);margin:0 auto;padding:0;display:flex;justify-content:space-between;align-items:center;position:relative}.navbar-logo{display:flex;flex-direction:column;cursor:pointer;transition:var(--transition-fast);margin-top:3px}.navbar-logo:hover{opacity:.8}.logo-text{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:#2a2b2d;letter-spacing:1px}.logo-subtext{font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);color:#666;letter-spacing:.5px;text-transform:uppercase}.navbar-menu{display:flex;gap:7rem;align-items:center;flex-wrap:nowrap;white-space:nowrap}.navbar-contact-wrapper{display:flex;align-items:center;margin-left:1rem}.navbar-contact-btn-desktop{display:none}.navbar-contact-btn-mobile{display:block}@media (min-width: 769px){.navbar-menu{position:absolute;left:50%;transform:translate(-50%);flex-wrap:nowrap;white-space:nowrap}.navbar-contact-btn-desktop{display:block}.navbar-contact-btn-mobile{display:none}}.navbar-menu a{text-decoration:none;font-weight:var(--font-weight-medium);font-size:var(--font-size-md);transition:color .4s ease,font-weight var(--transition-fast);position:relative;padding-bottom:4px;white-space:nowrap;flex-shrink:0}.navbar.in-hero .navbar-menu a{color:#2a2b2d}.navbar.in-hero .navbar-menu a:after{background-color:var(--link-underline-color, #2a2b2d);transition:width var(--transition-fast),background-color .4s ease}.navbar.in-hero .navbar-menu a:hover{color:#000}.navbar.in-contact .navbar-menu a{color:#d8d6d4}.navbar.in-contact .navbar-menu a:after{background-color:var(--color-accent-primary)}.navbar.in-contact .navbar-menu a:hover{color:var(--color-accent-primary-light)}.navbar.in-section .navbar-menu a{color:#d8d6d4}.navbar.in-section .navbar-menu a:after{background-color:var(--link-underline-color, var(--color-accent-primary));transition:width var(--transition-fast),background-color .4s ease}.navbar.in-section .navbar-menu a:hover{color:var(--color-accent-primary-light)}.navbar-menu a:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;transition:width var(--transition-fast),background-color .4s ease;background-color:var(--link-underline-color, #2a2b2d)}.navbar-menu a:hover{font-weight:var(--font-weight-semibold)}.navbar-menu a:hover:after{width:100%}.navbar-menu .navbar-contact-btn,.navbar-contact-wrapper .navbar-contact-btn{padding:.5rem 1.5rem;border-radius:50px;font-weight:var(--font-weight-semibold);font-size:var(--font-size-md);transition:background-color .4s ease,color .4s ease,transform .3s ease,box-shadow .3s ease;text-decoration:none}.navbar-menu .navbar-contact-btn:after,.navbar-contact-wrapper .navbar-contact-btn:after{display:none}.navbar.in-hero .navbar-menu .navbar-contact-btn,.navbar.in-hero .navbar-contact-wrapper .navbar-contact-btn{background-color:#2a2b2d;color:#d8d6d4}.navbar.in-hero .navbar-menu .navbar-contact-btn:hover,.navbar.in-hero .navbar-contact-wrapper .navbar-contact-btn:hover{background-color:#000;color:#d8d6d4;box-shadow:0 6px 20px #2a2b2d66;transform:translateY(-2px) scale(1.05)}.navbar.in-contact .navbar-contact-wrapper .navbar-contact-btn{background-color:var(--color-accent-primary);color:#2a2b2d}.navbar.in-contact .navbar-contact-wrapper .navbar-contact-btn:hover{background-color:var(--color-accent-primary-light);color:#2a2b2d;box-shadow:0 6px 20px #f59e0b66;transform:translateY(-2px) scale(1.05)}.navbar.in-section .navbar-menu .navbar-contact-btn,.navbar.in-section .navbar-contact-wrapper .navbar-contact-btn{background-color:var(--color-accent-primary);color:#2a2b2d}.navbar.in-section .navbar-menu .navbar-contact-btn:hover,.navbar.in-section .navbar-contact-wrapper .navbar-contact-btn:hover{background-color:var(--color-accent-primary-light);color:#2a2b2d;box-shadow:0 6px 20px #f59e0b66;transform:translateY(-2px) scale(1.05)}.navbar-toggle{display:none;flex-direction:column;background:transparent;border:none;cursor:pointer;padding:var(--spacing-xs);gap:4px}.navbar-toggle span{width:25px;height:2px;transition:var(--transition-normal);border-radius:2px}.navbar.in-hero .navbar-toggle span{background-color:#2a2b2d}.navbar.in-contact .navbar-toggle span,.navbar.in-section .navbar-toggle span{background-color:#d8d6d4}@media (max-width: 768px){.navbar{padding-left:.8rem;padding-right:.8rem}.navbar-container{padding:0}.navbar-toggle{display:flex}.navbar-menu{position:fixed;top:70px;left:0;width:100%;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);flex-direction:column;padding:var(--spacing-xl);gap:var(--spacing-lg);transform:translate(-100%);transition:transform .4s cubic-bezier(.4,0,.2,1);z-index:999}.navbar.in-hero .navbar-menu{background-color:transparent;border-top:none;backdrop-filter:none;-webkit-backdrop-filter:none}.navbar.in-hero .navbar-menu a{color:#2a2b2d;border-bottom:1px solid rgba(0,0,0,.1)}.navbar.in-contact .navbar-menu{background-color:#2a2b2dfa;border-top:var(--border-width) solid rgba(216,214,212,.1)}.navbar.in-contact .navbar-menu a{color:#d8d6d4;border-bottom:1px solid rgba(216,214,212,.1)}.navbar.in-section .navbar-menu{background-color:#2a2b2dfa;border-top:var(--border-width) solid rgba(216,214,212,.1)}.navbar.in-section .navbar-menu a{color:#d8d6d4;border-bottom:1px solid rgba(216,214,212,.1)}.navbar-menu.active{transform:translate(0);box-shadow:0 4px 24px #0000001a}.navbar-menu a{padding:var(--spacing-md) 0;min-height:44px;display:flex;align-items:center;font-size:var(--font-size-md)}.navbar-menu .navbar-contact-btn{border:none;justify-content:center}.navbar-toggle.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.navbar-toggle.active span:nth-child(2){opacity:0}.navbar-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(7px,-6px)}}@media (max-width: 360px){:root{--section-padding-x: .6rem;--section-padding-y: 1rem;--font-size-4xl: 2.0625rem;--font-size-3xl: 1.65rem;--font-size-2xl: 1.375rem}.navbar{padding-left:.6rem;padding-right:.6rem}.navbar-container{padding:0}.section-subtitle{font-size:var(--font-size-sm)}}.img-rounded{border-radius:var(--border-radius-img)}.touch-target{min-width:var(--touch-target-min);min-height:var(--touch-target-min)}@supports (padding: max(0px)){.safe-top{padding-top:max(env(safe-area-inset-top),var(--spacing-md))}.safe-bottom{padding-bottom:max(env(safe-area-inset-bottom),var(--spacing-md))}.safe-left{padding-left:max(env(safe-area-inset-left),var(--spacing-md))}.safe-right{padding-right:max(env(safe-area-inset-right),var(--spacing-md))}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (min-width: 768px){.contact-separator{display:block!important}}@media (max-width: 1024px){:root{--spacing-carousel-padding: 0 24px}}@media (max-width: 768px){:root{--spacing-carousel-padding: 0 16px}}@media (max-width: 480px){:root{--spacing-carousel-padding: 0 12px}}
