.btn{display:inline-block;padding:.5rem 1rem;font-family:Anton,sans-serif;font-size:1rem;font-weight:500;text-decoration:none;border:1px solid transparent;border-radius:7px;cursor:pointer;transition:background .3s ease,color .3s ease;background:#393e46;color:#efefef;box-shadow:0 2px 7px #0000001a}.btn:hover{background:#f1efec;color:#222831;border:1px solid #393E46;box-shadow:0 3px 8px #00000026}body.dark .btn{background:#f1efec;color:#222831;box-shadow:0 2px 7px #ffffff4d}body.dark .btn:hover{background:#393e46;color:#efefef;box-shadow:0 3px 8px #ffffff40;border:1px solid #F1EFEC}.navbar{background:#efefef;color:#222831;padding:.75rem .5rem;border-bottom:1px solid #393E46;transition:background .3s ease,color .3s ease}.navbar.dark{background:#222831;color:#efefef}.navbar .navbar-container{display:flex;justify-content:center;align-items:center;justify-content:space-between;max-width:1200px;margin:0 auto;width:100%}@media (max-width: 767px){.navbar .navbar-container{flex-wrap:wrap;gap:1rem;justify-content:space-evenly}}.navbar .logo{font-weight:700;font-size:1.5rem}.navbar .logo img{height:60px;width:auto}.navbar .nav-links{position:absolute;top:70px;right:0;background:#efefef;color:#222831;display:none;flex-direction:column;gap:1.5rem;padding:2rem;z-index:1000;border:1px solid #393E46;border-radius:8px;box-shadow:0 8px 16px #00000026}.navbar .nav-links.open{display:flex}.navbar .nav-links a{color:inherit;text-decoration:none;font-weight:500;transition:color .3s ease,border .3s ease;border:1px solid transparent;padding:.5rem 1rem;border-radius:7px}.navbar .nav-links a:hover{border:1px solid #393E46;border-radius:7px}.navbar.dark .nav-links{background:#222831;color:#efefef;border:1px solid #F1EFEC}.navbar.dark .nav-links a:hover{border:1px solid #F1EFEC;border-radius:7px}.navbar .nav-icons{display:flex;justify-content:center;align-items:center;gap:1rem}@media (max-width: 767px){.navbar .nav-icons{gap:.5rem}}.navbar .nav-icons .icon-btn{background:none;border:none;cursor:pointer;font-size:1.8rem;color:inherit;transition:transform .4s ease,color .3s ease}.navbar .nav-icons .icon-btn:hover{color:#fc0;transform:scale(1.2)}@media (max-width: 767px){.navbar .nav-icons .icon-btn{font-size:1.4rem}}@media (min-width: 768px){.navbar .nav-links{position:static;flex-direction:row;gap:2rem;display:flex!important;background:none;padding:0;border:none;border-radius:0;box-shadow:none}.navbar.dark .nav-links{border:none}.navbar .nav-icons .burger{display:none}}.social-icons{display:flex;justify-content:center;align-items:center;gap:1rem;font-size:1.5rem}.social-icons a{color:inherit;transition:color .3s ease,transform .3s ease}.social-icons a:hover{transform:scale(1.2)}@media (max-width: 767px){.social-icons{gap:.5rem}}.burger{display:flex;flex-direction:column;justify-content:space-between;width:24px;height:18px;background:none;border:none;cursor:pointer;padding:0;z-index:1100;color:inherit;transition:color .3s ease}.burger.open{color:#ff6500}.burger span{display:block;height:2px;width:100%;background:currentColor;transition:all .3s ease}.burger.open span:nth-child(1){transform:rotate(45deg) translate(5px,5px);color:#ff6500}.burger.open span:nth-child(2){opacity:0}.burger.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px);color:#ff6500}.hero{position:relative;overflow:hidden;padding:8rem 1rem;text-align:center;background:#efefef url(/portrait_removebg.png) no-repeat center;background-size:auto;background-position:center;color:#222831;transition:background .3s ease,color .3s ease}.hero:before{content:"";position:absolute;inset:0;background:#efefef;opacity:.4;z-index:0}.hero .hero-content{position:relative;z-index:1;max-width:800px;margin:0 auto}.hero .hero-content h2{font-size:2.5rem;margin-bottom:3rem}.hero .hero-content p{font-size:1.25rem;max-width:500px;margin:0 auto 3rem}body.dark .hero{background:#222831 url(/portrait_removebg.png) no-repeat center;background-size:auto;background-position:center;color:#efefef}body.dark .hero:before{background:#000;opacity:.4}.portfolio{padding:4rem 1rem;text-align:center;background:#efefef;color:#222831}body.dark .portfolio{background:#222831;color:#efefef}.portfolio .portfolio-title{font-size:2.5rem;font-weight:700;margin-bottom:3rem}.portfolio .portfolio-grid{display:grid;grid-template-columns:1fr;gap:2rem;max-width:1200px;margin:0 auto}@media (min-width: 768px){.portfolio .portfolio-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.portfolio .portfolio-grid{grid-template-columns:repeat(4,1fr)}}.portfolio-card{display:flex;flex-direction:column;border:.5px solid #393E46;border-radius:8px;overflow:hidden;box-shadow:0 4px 10px #0000001a;background:#efefef;transition:transform .3s ease,background .3s ease,border .3s ease,box-shadow .3s ease;width:100%;margin:0}.portfolio-card:hover{transform:translateY(-5px);box-shadow:0 8px 20px #00000026}.portfolio-card .video-wrapper{position:relative;width:100%;height:450px;border-radius:8px;overflow:hidden;background-color:#000;background-size:cover;background-position:center;background-repeat:no-repeat}body.dark .portfolio-card .video-wrapper{background-color:#222831}.portfolio-card .video-wrapper video{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;border-radius:8px;z-index:1}.portfolio-card .video-wrapper:after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 40px #0000001a;pointer-events:none;z-index:2}@media (min-width: 768px){.portfolio-card{flex-direction:column;gap:0;align-items:stretch}}body.dark .portfolio-card{background:#222831;border:.5px solid #F1EFEC;box-shadow:0 4px 10px #ffffff0d}body.dark .portfolio-card:hover{box-shadow:0 8px 25px #0006}.contact{padding:4rem 2rem}.contact__container{display:flex;flex-direction:column;gap:2rem;max-width:1200px;margin:0 auto}@media (min-width: 768px){.contact__container{flex-direction:row;justify-content:space-between}}.contact__info,.contact__details{flex:1;background:#efefef;padding:2rem;border-radius:8px;box-shadow:0 4px 12px #0000000d;transition:background .3s ease;text-align:center}.contact__info h2,.contact__details h2{margin-bottom:1rem;font-size:2.2rem;font-family:Anton,sans-serif;text-transform:uppercase;letter-spacing:1px}.contact__info ul,.contact__details ul{list-style:none;padding:0;margin:0}.contact__info ul li,.contact__details ul li{margin-bottom:.75rem;font-size:1.2rem;line-height:1.6}.contact__info p,.contact__details p{margin:0 0 1rem;font-size:1.1rem;line-height:1.6}.contact__info .contact__map,.contact__details .contact__map{position:relative;width:100%;padding-bottom:56.25%;height:0;overflow:hidden;border-radius:8px}.contact__info .contact__map iframe,.contact__details .contact__map iframe{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:8px}.dark .contact__info,.dark .contact__details{background:#222831;box-shadow:0 4px 12px #ffffff0d}.footer{display:flex;flex-direction:column;align-items:center;gap:1rem;font-size:.75rem;padding:0 .5rem;background:#efefef;color:#222831;text-align:center}body.dark .footer{background:#222831;color:#efefef}.footer .contact-info{display:flex;justify-content:space-around;width:100%}.footer .phone a{color:inherit;text-decoration:none;font-weight:700}.footer .phone a:hover{text-decoration:underline}.footer .footer-text{font-size:.7rem;margin-top:.5rem}.footer .address{font-style:normal}.footer .socials{text-align:center}.footer .phone-icon{margin-right:.5rem;font-size:1rem;vertical-align:middle;color:inherit}@media (max-width: 480px){.footer{font-size:.65rem}.footer .footer-text{font-size:.6rem}}.reviews-section{padding:0 2rem 4rem;background:#efefef;transition:background .3s ease}body.dark .reviews-section{background:#222831}.reviews-section h2{text-align:center;margin-bottom:3rem;font-family:Anton,sans-serif;color:#222831;text-transform:uppercase;letter-spacing:2px}body.dark .reviews-section h2{color:#efefef}.carousel-container{position:relative;display:flex;align-items:center;max-width:1300px;margin:0 auto}.reviews-grid{display:grid;grid-auto-flow:column;grid-auto-columns:85%;gap:1.5rem;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 .5rem;scrollbar-width:none}.reviews-grid::-webkit-scrollbar{display:none}@media (min-width: 1024px){.reviews-grid{display:flex;grid-auto-flow:unset;gap:2rem;padding:2rem 1rem}}.review-card{scroll-snap-align:center;scroll-snap-stop:always;background:#efefef;padding:1.5rem;border-radius:12px;display:flex;flex-direction:column;transition:all .3s ease;border:1px solid rgba(0,0,0,.05);box-shadow:0 4px 12px #0000000d;flex-shrink:0}body.dark .review-card{background:#222831;border-color:#ffffff0d;box-shadow:0 4px 12px #ffffff0d}.review-card .review-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem}.review-card .review-header .author-info{display:flex;flex-direction:column}.review-card .review-header .author-info strong{font-family:Anton,sans-serif;font-size:.9rem;color:#222831;text-transform:uppercase}body.dark .review-card .review-header .author-info strong{color:#efefef}.review-card .review-header .google-icon{color:#4285f4;font-size:1.1rem}.review-card .review-stars{display:flex;gap:3px;margin-top:.4rem;font-size:.8rem}.review-card .review-stars .star-filled{color:#222831;opacity:1}body.dark .review-card .review-stars .star-filled{color:#efefef}.review-card .review-stars .star-empty{color:#222831;opacity:.2}body.dark .review-card .review-stars .star-empty{color:#efefef;opacity:.15}.review-card .review-text{font-size:.85rem;line-height:1.4;color:#222831;margin-bottom:1rem;flex-grow:1;opacity:.9;font-style:italic}body.dark .review-card .review-text{color:#efefef;opacity:.8}.review-card .review-date{font-size:.7rem;font-weight:700;color:#222831;text-transform:uppercase;letter-spacing:.5px}body.dark .review-card .review-date{color:#efefef;opacity:.8}@media (min-width: 1024px){.review-card{width:300px;height:200px;flex-direction:column}}.nav-btn{background:#222831;color:#efefef;border:none;width:45px;height:45px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;transition:all .2s ease;box-shadow:0 4px 15px #0003}.nav-btn:hover{transform:scale(1.1);background:#fff;color:#222831}body.dark .nav-btn:hover{background:#505762;color:#efefef}.nav-btn:active{transform:scale(.95)}body.dark .nav-btn{background-color:#efefef;color:#222831}@media (max-width: 768px){.nav-btn{display:none}}.nav-btn.left{position:absolute;left:-22.5px}.nav-btn.right{position:absolute;right:-22.5px}body{font-family:Anton,sans-serif;background:#efefef;color:#222831;margin:0;padding:0;transition:background .3s ease,color .3s ease;letter-spacing:1px}body.dark{background:#222831;color:#efefef}.app{min-height:100vh;display:flex;flex-direction:column}
