*{margin:0;padding:0;box-sizing:border-box}html{background-color:#1b1a19;scroll-behavior:smooth}body{font-weight:300;font-family:Lato,sans-serif;color:#eaeaea;line-height:1.7}.container{max-width:1100px;margin:0 auto;padding:0 2rem}@media (max-width: 480px){.container{padding:0 1rem}}.section{padding:6rem 0;text-align:center}@media (max-width: 480px){.section{padding:4rem 0}}.section__title{font-size:2.5rem;font-weight:300;margin-bottom:1.5rem;font-family:Raleway,sans-serif;color:#eaeaea}@media (max-width: 768px){.section__title{font-size:2rem}}.section__text{font-size:1.1rem;color:#a3b1a3;max-width:800px;margin:0 auto}.btn{display:inline-block;padding:.8rem 2rem;border-radius:8px;font-weight:400;text-decoration:none;transition:background-color .3s ease,transform .3s ease}.btn-primary{background-color:#3a5a40;color:#fff}.btn-primary:hover{background-color:#588157;transform:translateY(-3px)}a{color:#588157;text-decoration:none}h1,h2,h3{font-family:Raleway,sans-serif;line-height:1.2;font-weight:300}.footer{background-color:#2c2b2a;padding:5rem 0;text-align:center}@media (max-width: 480px){.footer{padding:4rem 0}}.header{position:fixed;top:0;left:0;width:100%;z-index:100;background-color:#1b1a19cc;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:1rem 0;transition:background-color .3s ease}.header__container{display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:0 2rem}@media (max-width: 768px){.header__container{flex-direction:row;justify-content:space-between;align-items:center;gap:0}}.header__container li{text-align:center}.header__logo{font-size:1.5rem;font-weight:100;font-family:Raleway,sans-serif;color:#eaeaea}@media (max-width: 480px){.header__logo{font-size:1.3rem}}.header__burger{display:none;background:none;border:none;cursor:pointer;padding:.5rem;position:relative;z-index:101}@media (max-width: 768px){.header__burger{display:flex;flex-direction:column;justify-content:space-around;width:30px;height:25px}}.header__burger-line{display:block;width:100%;height:2px;background-color:#eaeaea;border-radius:2px;transition:all .3s ease-in-out}.header__burger--active .header__burger-line:nth-child(1){transform:translateY(10px) rotate(45deg)}.header__burger--active .header__burger-line:nth-child(2){opacity:0}.header__burger--active .header__burger-line:nth-child(3){transform:translateY(-10px) rotate(-45deg)}@media (max-width: 768px){.header__nav{position:fixed;bottom:100%;left:0;width:100%;height:auto;padding:1em;background-color:#2c2b2af2;display:flex;flex-direction:column;justify-content:center;align-items:center;transform:translateY(0);opacity:0;transition:transform .5s cubic-bezier(.77,0,.175,1),opacity .5s ease-in-out;pointer-events:none}}.header__nav--open{transform:translateY(100%);opacity:1;pointer-events:all}.header__nav ul{list-style:none;display:flex;gap:2rem}@media (max-width: 768px){.header__nav ul{flex-direction:column;gap:1.5rem;text-align:center}}.header__nav a{color:#a3b1a3;font-weight:300;transition:color .3s ease,transform .2s ease}.header__nav a:hover{color:#eaeaea;transform:translateY(-2px)}@media (max-width: 768px){.header__nav a{font-size:1rem;font-weight:100;color:#eaeaea}}.hero{height:100vh;display:flex;align-items:center;text-align:center;padding-top:60px;position:relative}@media (max-width: 768px){.hero{padding-top:120px;min-height:80vh;padding-bottom:4rem}}.hero__title{font-size:clamp(2.5rem,6vw,4rem);font-weight:200;font-family:Raleway,sans-serif;margin-bottom:1rem;letter-spacing:.05em;line-height:1.1;text-shadow:0 0 15px rgba(255,255,255,.15)}@media (max-width: 768px){.hero__title{font-size:clamp(2.2rem,5vw,3rem)}}@media (max-width: 480px){.hero__title{letter-spacing:.02em}}.hero__subtitle{font-size:clamp(1rem,2.5vw,1.35rem);font-weight:300;color:#a3b1a3;max-width:700px;margin:0 auto 2rem}@media (max-width: 768px){.hero__subtitle{font-size:clamp(.9rem,2vw,1.1rem)}}#about .container{display:flex;align-items:flex-start;gap:40px;text-align:left}@media (max-width: 768px){#about .container{flex-direction:column;align-items:center;text-align:center}}#about .profile-image-container{flex-shrink:0;margin-top:10px}@media (max-width: 768px){#about .profile-image-container{margin-bottom:2rem}}#about .profile-image{width:180px;height:180px;border-radius:50%;object-fit:cover;box-shadow:0 5px 15px #0000004d;border:3px solid #2C2B2A}#about .about-text-content{flex-grow:1}#about .section__title{text-align:left;margin-top:0;margin-bottom:1rem}@media (max-width: 768px){#about .section__title{text-align:center}}#about .section__text{text-align:left;max-width:none;margin-left:0;margin-right:0}@media (max-width: 768px){#about .section__text{text-align:center;max-width:90%}}.expertise-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-top:4rem}@media (max-width: 992px){.expertise-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.expertise-grid{grid-template-columns:1fr}}.expertise-card{background-color:#2c2b2a;padding:2.5rem 2rem;border-radius:12px;border:1px solid rgba(88,129,87,.2);transition:transform .3s ease,box-shadow .3s ease}.expertise-card:hover{transform:translateY(-5px);box-shadow:0 10px 20px #0003}.expertise-card .card-content{transition:opacity .4s ease;opacity:.7}.expertise-card:hover .card-content{opacity:1}.expertise-card h3{font-size:1.25rem;margin-bottom:1rem;font-weight:400;color:#eaeaea}.expertise-card p{color:#a3b1a3;font-size:.95rem}@media (max-width: 480px){.expertise-card{padding:2rem 1.5rem}}.logos{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:3rem;border-radius:12px;font-size:8px}@media (max-width: 768px){.logos{gap:2rem;padding:2rem 1.5rem}}.logos img{height:50px;max-width:160px;opacity:.8;object-fit:contain;filter:grayscale(100%) brightness(0) invert(100%) brightness(1.5) contrast(1.5);transition:opacity .3s ease,transform .3s ease,filter .3s ease}.logos img:hover{opacity:1;transform:scale(1.05)}.logos img.google-logo{height:12em}.logos img.fitbit-logo{height:13em}.logos img.nestlabs-logo{height:8em}.logos img.twitter-logo{height:5em}.product-item{background-color:#2c2b2a;border-radius:12px;text-align:left;transition:transform .3s ease,box-shadow .3s ease;overflow:hidden;display:flex;flex-direction:column;border:1px solid rgba(58,90,64,.15)}.product-item:hover{transform:translateY(-5px);box-shadow:0 10px 25px #00000040}.product-item__image-carousel{position:relative;width:100%;aspect-ratio:1/1;overflow:hidden}.product-item__image-carousel .carousel-track{display:flex;height:100%;transition:transform .3s cubic-bezier(.87,0,.13,1) 0s}.product-item__image-carousel .carousel-image{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;flex-shrink:0;display:block}.product-item__image-carousel .carousel-nav{position:absolute;top:50%;transform:translateY(-50%);width:100%;display:flex;justify-content:space-between;padding:0 1rem;box-sizing:border-box;opacity:0;transition:opacity .3s ease;pointer-events:none}.product-item__image-carousel .carousel-nav button{background-color:#1b1a19b3;color:#eaeaea;border:1px solid rgba(58,90,64,.3);padding:.6rem;cursor:pointer;border-radius:50%;font-size:1.2rem;line-height:1;width:40px;height:40px;display:flex;align-items:center;justify-content:center;pointer-events:all;transition:background-color .3s ease,border-color .3s ease}.product-item__image-carousel .carousel-nav button:hover{background-color:#2c2b2ae6;border-color:#588157}.product-item__image-carousel:hover .carousel-nav{opacity:1}.product-item__content{padding:1.5rem;flex-grow:1;display:flex;flex-direction:column}@media (max-width: 480px){.product-item__content{padding:1.25rem}}.product-item h3{font-family:Raleway,sans-serif;font-weight:400;font-size:1.35rem;margin-bottom:.75rem;color:#eaeaea}@media (max-width: 480px){.product-item h3{font-size:1.2rem}}.product-item p{color:#a3b1a3;font-size:.9rem;line-height:1.6;flex-grow:1}@media (max-width: 480px){.product-item p{font-size:.85rem}}.products{padding:6rem 0;text-align:center}@media (max-width: 480px){.products{padding:4rem 0}}.products__title{font-size:2.5rem;font-weight:300;font-family:Raleway,sans-serif;margin-bottom:1.5rem;color:#eaeaea}@media (max-width: 768px){.products__title{font-size:2rem}}.products__text{font-size:1.1rem;color:#a3b1a3;max-width:800px;margin:0 auto 3rem}@media (max-width: 768px){.products__text{margin-bottom:2rem}}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem;padding-top:1rem}@media (max-width: 992px){.product-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (max-width: 768px){.product-grid{grid-template-columns:1fr}}.footer .section__text{margin-bottom:2rem;font-size:1.1rem}.footer .footer__email{display:inline-block;margin-top:1rem;font-weight:100;color:#588157;position:relative;text-decoration:none;margin:0 .5rem}.footer .footer__email:after{content:"";position:absolute;width:100%;height:2px;bottom:-5px;left:0;background-color:#588157;transform:scaleX(0);transform-origin:bottom right;transition:transform .3s ease-out}.footer .footer__email:hover:after{transform:scaleX(1);transform-origin:bottom left}@media (max-width: 480px){.footer .footer__email{font-size:1.2rem}}#contact-form{margin-top:3rem;display:flex;flex-direction:column;gap:1.5rem;max-width:700px;margin-left:auto;margin-right:auto;text-align:left}#contact-form .form-paragraph-group{display:inline-block;align-items:baseline;line-height:3;font-size:1rem;color:#a3b1a3;margin-bottom:.5rem}#contact-form .form-paragraph-group span{white-space:normal;margin-left:.5em;margin-right:.5em}#contact-form .form-paragraph-group span:first-child{margin-left:0}#contact-form input[type=text],#contact-form textarea{background-color:transparent;color:#eaeaea;border:none;border-bottom:1px solid #3A5A40;border-radius:0;padding:.6rem .8rem;font-family:Lato,sans-serif;font-size:1rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;box-sizing:content-box;height:auto;transition:border .1s ease-in-out}#contact-form input[type=text]::placeholder,#contact-form textarea::placeholder{color:#a3b1a3;font-weight:100;opacity:.7;font-size:.9em}#contact-form input[type=text]:focus,#contact-form textarea:focus{outline:none;border-color:#588157;border-bottom:2px solid #588157}#contact-form input#name{min-width:100px;max-width:250px}#contact-form input#role{min-width:130px;max-width:300px}#contact-form input#reason{min-width:250px;max-width:400px}#contact-form input#_replyto{min-width:100px;max-width:350px}#contact-form textarea{width:100%;resize:vertical;box-sizing:border-box;border:1px solid #3A5A40}#contact-form #extra-message{max-height:0;min-height:0px;opacity:0;overflow:hidden;padding-top:0;padding-bottom:0;margin-top:0;margin-bottom:0;border-top-width:0px;border-bottom-width:0px;border-left-width:1px;border-right-width:1px;transition:min-height .5s ease-in-out,opacity .4s ease-in-out,padding-top .4s ease-in-out,padding-bottom .4s ease-in-out,margin-top .4s ease-in-out,margin-bottom .4s ease-in-out,border-top-width .1s ease-in-out,border-bottom-width .1s ease-in-out}#contact-form #extra-message.extra-message--visible{min-height:200px;opacity:1;padding-top:.8rem;padding-bottom:.8rem;margin-top:1.5rem;margin-bottom:1.5rem;border-top-width:1px;border-bottom-width:1px;border-left-width:1px;border-right-width:1px}#contact-form #extra-message.extra-message--visible:focus{border:2px solid #588157}#contact-form button{padding:.8rem 1.5rem;border-radius:6px;font-family:Lato,sans-serif;font-weight:400;cursor:pointer;transition:background-color .3s ease,transform .2s ease;border:1px solid transparent}#contact-form #btn-show-extra-message{background-color:transparent;color:#588157;border:1px solid #588157;align-self:flex-start}#contact-form #btn-show-extra-message:hover{background-color:#5881571a;transform:translateY(-2px)}#contact-form #btn-submit-form{background-color:#3a5a40;color:#eaeaea}#contact-form #btn-submit-form:hover{background-color:#588157;transform:translateY(-2px)}#contact-form .form-message{padding:1rem;margin-bottom:1rem;border-radius:8px;font-weight:400;text-align:center}#contact-form .form-message.success{background-color:#62986c;color:#1b1a19}#contact-form .form-message.error{background-color:#e57373;color:#fff}.g-recaptcha{margin-bottom:1.5rem;display:flex;justify-content:center}#background-canvas{position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;opacity:.3}
