@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600&display=swap);@font-face{font-family:Noto Color Emoji;src:url(/assets/media/NotoColorEmoji-Regular.80b7fb28811752046403.ttf) format("truetype")}:root{--spacing-xs:0.5rem;--spacing-sm:1rem;--spacing-md:1.5rem;--spacing-lg:2rem;--spacing-xl:3rem;--spacing-2xl:4rem;--radius-sm:0.5rem;--radius-md:1rem;--radius-lg:1.5rem;--radius-full:9999px;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;--shadow-xl:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;--transition-fast:150ms cubic-bezier(0.4,0,0.2,1);--transition-base:300ms cubic-bezier(0.4,0,0.2,1);--transition-slow:500ms cubic-bezier(0.4,0,0.2,1)}body{font-family:Inter,Noto Color Emoji,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-style:normal;font-weight:400;margin:0 auto;overflow-x:hidden;text-align:center;transition:background-color 1s cubic-bezier(.4,0,.2,1);width:100%}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(180deg,#fff0,#00000005 50%,#0000000a);background-attachment:fixed;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;letter-spacing:-.01em;line-height:1.7;transition:background-color 1s cubic-bezier(.4,0,.2,1),color 1s cubic-bezier(.4,0,.2,1)}.skip-link{background:#000;border-radius:0 0 4px 0;color:#fff;font-weight:700;left:0;padding:8px 16px;position:absolute;text-decoration:none;top:-40px;z-index:10000}.skip-link:focus{outline:3px solid #fff;outline-offset:2px;top:0}.app-container{display:flex;flex-direction:column;min-height:100vh;overflow-x:hidden;position:relative}.app-header{animation:fadeInDown .8s cubic-bezier(.4,0,.2,1);padding:clamp(2rem,5vw,4rem) 0 clamp(1.5rem,3vw,3rem);position:relative;text-align:center;z-index:1}.app-header h1{animation:titlePulse 4s ease-in-out infinite;font-size:clamp(2rem,6vw,4.5rem);font-weight:800;letter-spacing:-.03em;margin:0 auto;text-shadow:2px 2px 8px #00000014;width:90%}.app-header hr{border-radius:var(--radius-full);border-style:solid;border-width:0 0 .25rem;height:.25rem;margin:2rem auto;max-width:600px;transition:width 1s cubic-bezier(.4,0,.2,1),border-color 1s cubic-bezier(.4,0,.2,1);width:60px}.app-main{animation:fadeIn 1s cubic-bezier(.4,0,.2,1);flex:1 1;max-width:100%;padding:0;position:relative;width:100%;z-index:1}.section-divider{border:solid #00000026;border-radius:var(--radius-full);border-width:0 0 .125rem;height:.125rem;margin:3rem auto;max-width:400px;opacity:.6;transition:border-color 1s cubic-bezier(.4,0,.2,1);width:40%}.section-divider:hover{opacity:.8}.app-footer{animation:fadeInUp .8s cubic-bezier(.4,0,.2,1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid #00000014;margin-top:var(--spacing-2xl);padding:var(--spacing-2xl) var(--spacing-lg) var(--spacing-xl);position:relative;text-align:center;z-index:1}.footer-content{margin:0 auto;max-width:1200px;padding:0 var(--spacing-md)}.footer-credits{display:block;font-size:.875rem;font-weight:400;line-height:2;margin-top:var(--spacing-lg);opacity:.7}a,a:active,a:hover,a:visited{color:inherit;text-decoration:none;transition:all .3s ease}a:focus{outline:2px solid currentColor;outline-offset:2px;text-decoration:underline}ul{list-style:none;margin:0;padding:0}button{cursor:pointer;font-family:inherit}button:focus-visible{outline:3px solid currentColor;outline-offset:3px}button:disabled{cursor:not-allowed;opacity:.6}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-40px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes titlePulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.95;transform:scale(1.01)}}@media (max-width:768px){.app-header{padding:1.5rem 0}.app-footer{margin-top:3rem;padding:2rem 0 1.5rem}}@media (max-width:480px){.app-header hr{border-width:0 0 .3rem;height:.3rem;width:80%}.app-footer{margin-top:2rem}}html{scroll-behavior:smooth}::selection{background:#0003}::-moz-selection{background:#0003}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}:focus-visible{border-radius:2px;outline:3px solid currentColor;outline-offset:4px}@media print{.app-footer,.app-header hr,.footer-credits{display:none}body{background:#fff!important;color:#000!important}}.hero-section{margin:0 auto;max-width:1400px;padding:clamp(3rem,8vw,6rem) 0;position:relative}.hero-container{padding:0 var(--spacing-lg)}.hero-content{margin-bottom:var(--spacing-2xl);margin-left:auto;margin-right:auto;max-width:900px;text-align:center}.hero-title{background:linear-gradient(135deg,currentColor,currentColor);-webkit-background-clip:text;background-clip:text;font-size:clamp(2.5rem,7vw,4rem);font-weight:800;letter-spacing:-.04em;line-height:1.1}.hero-subtitle,.hero-title{font-family:Inter,sans-serif;margin-bottom:var(--spacing-md)}.hero-subtitle{font-size:clamp(1.25rem,3vw,1.75rem);font-weight:600;letter-spacing:-.02em;opacity:.85}.hero-description{font-size:clamp(1rem,2vw,1.125rem);font-weight:400;line-height:1.75;margin-bottom:var(--spacing-xl);margin-left:auto;margin-right:auto;max-width:700px;opacity:.75}.hero-buttons{display:flex;flex-wrap:wrap;gap:var(--spacing-md);justify-content:center}.hero-btn{align-items:center;border:2px solid #0000;border-radius:var(--radius-md);box-shadow:var(--shadow-md);cursor:pointer;display:inline-flex;font-family:Inter,sans-serif;font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;letter-spacing:-.01em;overflow:hidden;padding:1rem 2rem;position:relative;transition:all var(--transition-base)}.hero-btn:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.hero-btn:hover:before{left:100%}.hero-btn .btn-icon{font-size:1.125rem}.hero-btn.primary{background-color:var(--dark-color);color:var(--color)}.hero-btn.primary:hover{box-shadow:var(--shadow-xl);transform:translateY(-2px)}.hero-btn.secondary{background-color:initial;border-color:var(--dark-color);color:var(--dark-color)}.hero-btn.secondary:hover{background-color:var(--dark-color);box-shadow:var(--shadow-xl);color:var(--color);transform:translateY(-2px)}.hero-stats{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-left:auto;margin-right:auto;margin-top:var(--spacing-2xl);max-width:1000px}.stat-item{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff80;border:1px solid #0000000d;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);cursor:default;padding:var(--spacing-xl) var(--spacing-lg);text-align:center;transition:all var(--transition-base)}.stat-item:hover{box-shadow:var(--shadow-xl);transform:translateY(-8px) scale(1.02)}.stat-icon{align-items:center;color:var(--dark-color);display:flex;font-size:2.5rem;justify-content:center;margin-bottom:var(--spacing-md)}.stat-number{font-size:clamp(2rem,4vw,3rem);font-weight:800;letter-spacing:-.03em;margin-bottom:var(--spacing-xs)}.stat-label,.stat-number{color:var(--dark-color);font-family:Inter,sans-serif}.stat-label{font-size:.875rem;font-weight:500;letter-spacing:.05em;opacity:.7;text-transform:uppercase}@media (max-width:1024px){.hero-stats{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}}@media (max-width:768px){.hero-container{padding:0 var(--spacing-md)}.hero-buttons{align-items:stretch;flex-direction:column}.hero-btn{width:100%}.hero-stats{gap:var(--spacing-md);grid-template-columns:1fr}}@media (max-width:480px){.hero-container{padding:0 var(--spacing-sm)}.stat-item{padding:var(--spacing-lg) var(--spacing-md)}}@media (prefers-reduced-motion:reduce){.hero-btn,.stat-item{transition:none!important}.hero-btn:before{display:none}.hero-btn:hover,.stat-item:hover{transform:none!important}}.content-section{background:#0000;margin:0 auto;max-width:1400px;padding:clamp(3rem,6vw,5rem) 0}.content-container{padding:0 var(--spacing-lg)}.content-grid{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md);grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.content-item{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff80;border:1px solid #0000000d;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);cursor:pointer;display:flex;overflow:hidden;padding:var(--spacing-lg);position:relative;transition:all var(--transition-base)}.content-item:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;pointer-events:none;position:absolute;top:0;transition:left .5s ease;width:100%}.content-item:hover:before{left:100%}.content-item:hover{box-shadow:var(--shadow-lg);transform:translateY(-5px)}.content-icon{align-items:center;background:#0000000d;border-radius:var(--radius-sm);color:var(--dark-color);display:flex;flex-shrink:0;font-size:2rem;height:50px;justify-content:center;margin-right:var(--spacing-md);transition:transform var(--transition-base);width:50px}.content-item:hover .content-icon{transform:scale(1.1) rotate(5deg)}.content-info{display:flex;flex-direction:column;flex-grow:1;min-width:0}.content-link{color:var(--dark-color);font-family:Inter,sans-serif;font-size:1rem;font-weight:600;letter-spacing:-.01em;margin-bottom:var(--spacing-xs);position:relative;text-decoration:none;transition:color var(--transition-fast);word-break:break-word}.content-link:after{content:" →";display:inline-block;opacity:0;transform:translateX(-10px);transition:all var(--transition-fast)}.content-item:hover .content-link:after{opacity:1;transform:translateX(0)}.content-description{font-family:Inter,sans-serif;font-size:.875rem;font-weight:400;line-height:1.5;opacity:.7}@media (max-width:1024px){.content-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (max-width:768px){.content-container{padding:0 var(--spacing-md)}.content-grid{gap:var(--spacing-sm);grid-template-columns:1fr}.content-item{padding:var(--spacing-md)}.content-icon{font-size:1.5rem;height:40px;width:40px}}@media (max-width:480px){.content-container{padding:0 var(--spacing-sm)}.content-item{padding:var(--spacing-sm)}}@media (prefers-reduced-motion:reduce){.content-icon,.content-item,.content-item:before,.content-link:after{animation:none!important;transition:none!important}.content-item:hover,.content-item:hover .content-icon{transform:none!important}}.projects-section{margin:0 auto;max-width:1400px;padding:clamp(3rem,6vw,5rem) 0}.projects-container{padding:0 var(--spacing-lg)}.section-title{margin-bottom:var(--spacing-2xl)}.projects-grid{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md);grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.project-item{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff80;border:1px solid #0000000d;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);cursor:pointer;display:flex;overflow:hidden;padding:var(--spacing-lg);position:relative;transition:all var(--transition-base)}.project-item:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;pointer-events:none;position:absolute;top:0;transition:left .5s ease;width:100%}.project-item:hover:before{left:100%}.project-item:hover{box-shadow:var(--shadow-lg);transform:translateY(-5px)}.project-icon-wrapper{flex-shrink:0;margin-right:var(--spacing-md)}.project-icon{border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);height:48px;object-fit:cover;transition:transform var(--transition-base);width:48px}.project-item:hover .project-icon{transform:scale(1.05) rotate(3deg)}.project-info{display:flex;flex-direction:column;flex-grow:1;min-width:0}.project-link{align-items:center;color:var(--dark-color);display:inline-flex;font-family:Inter,sans-serif;font-size:1rem;font-weight:600;gap:.5rem;letter-spacing:-.01em;margin-bottom:var(--spacing-xs);position:relative;text-decoration:none;transition:color var(--transition-fast);word-break:break-word}.project-link .external-icon{font-size:.75rem;opacity:0;transform:translateX(-5px);transition:all var(--transition-fast)}.project-item:hover .project-link .external-icon{opacity:1;transform:translateX(0)}.project-description{font-family:Inter,sans-serif;font-size:.875rem;font-weight:400;line-height:1.5;opacity:.7}@media (max-width:1024px){.projects-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (max-width:768px){.projects-container{padding:0 var(--spacing-md)}.projects-grid{gap:var(--spacing-sm);grid-template-columns:1fr}.project-item{padding:var(--spacing-md)}.project-icon{height:40px;width:40px}}@media (max-width:480px){.projects-container{padding:0 var(--spacing-sm)}.project-item{padding:var(--spacing-sm)}.project-icon{height:36px;width:36px}}@media (prefers-reduced-motion:reduce){.project-icon,.project-item,.project-item:before,.project-link .external-icon{animation:none!important;transition:none!important}.project-item:hover,.project-item:hover .project-icon{transform:none!important}}.calculator-section{margin:0 auto;max-width:1400px;padding:clamp(3rem,6vw,5rem) 0}.calculator-container{padding:0 var(--spacing-lg)}.section-title{font-size:clamp(2rem,5vw,3rem);font-weight:800;letter-spacing:-.03em;margin-bottom:var(--spacing-sm)}.calculator-subtitle,.section-title{font-family:Inter,sans-serif;text-align:center}.calculator-subtitle{font-size:clamp(.95rem,2vw,1.125rem);font-weight:400;margin-bottom:var(--spacing-2xl);margin-left:auto;margin-right:auto;max-width:600px;opacity:.75}.services-grid{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));margin-bottom:var(--spacing-xl)}.service-card{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff80;border:2px solid #0000001a;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);cursor:pointer;overflow:hidden;padding:var(--spacing-xl) var(--spacing-lg);position:relative;text-align:center;transition:all var(--transition-base)}.service-card:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;pointer-events:none;position:absolute;top:0;transition:left .5s ease;width:100%}.service-card:hover:before{left:100%}.service-card:hover{border-color:#0003;box-shadow:var(--shadow-lg);transform:translateY(-5px)}.service-card.selected{background:#0000000d;border-color:var(--dark-color);box-shadow:var(--shadow-md)}.service-icon{align-items:center;color:var(--dark-color);display:flex;font-size:2.5rem;justify-content:center;margin-bottom:var(--spacing-md)}.service-name{color:var(--dark-color);font-family:Inter,sans-serif;font-size:1.125rem;font-weight:700;letter-spacing:-.01em;margin-bottom:var(--spacing-sm)}.service-description{color:var(--dark-color);font-size:.875rem;font-weight:400;line-height:1.5;margin-bottom:var(--spacing-md);opacity:.7}.service-price{align-items:center;color:var(--dark-color);display:flex;flex-direction:column;font-family:Inter,sans-serif;font-size:1.5rem;font-weight:800;gap:var(--spacing-sm);justify-content:center;letter-spacing:-.02em;margin-top:var(--spacing-md);min-height:4rem}.price-label{font-size:.875rem;font-weight:600;letter-spacing:0;opacity:1;transition:opacity var(--transition-base)}.price-value{font-size:1.5rem;font-weight:800;letter-spacing:-.02em;opacity:0;transition:opacity var(--transition-base),visibility var(--transition-base);visibility:hidden}.service-card:hover .price-value{opacity:1;visibility:visible}.service-card:hover .price-label{opacity:0}.price-suffix{font-size:.75rem;font-weight:500;margin-left:.25rem;opacity:.7}.service-checkbox{align-items:center;border-radius:50%;color:var(--dark-color);display:flex;font-size:1.25rem;height:32px;justify-content:center;position:absolute;right:var(--spacing-md);top:var(--spacing-md);transition:all var(--transition-base);width:32px}.checkbox-empty{border:2px solid;border-radius:50%;height:24px;width:24px}.service-card.selected .service-checkbox{transform:scale(1.1)}.calculator-summary{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#fff9;border:1px solid #0000001a;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);margin-top:var(--spacing-xl);padding:var(--spacing-xl)}.calculator-summary h3{font-family:Inter,sans-serif;font-size:1.5rem;font-weight:700;letter-spacing:-.02em;margin-bottom:var(--spacing-lg);text-align:center}.calculator-summary ul{list-style:none;margin-bottom:var(--spacing-lg);padding:0}.calculator-summary li{align-items:center;background:#00000008;border-radius:var(--radius-sm);display:flex;font-family:Inter,sans-serif;justify-content:space-between;margin-bottom:var(--spacing-sm);padding:var(--spacing-md)}.summary-service-name{align-items:center;display:flex;font-weight:600;gap:var(--spacing-sm)}.summary-icon{font-size:1.125rem}.service-price-item{font-family:Inter,sans-serif;font-weight:700}.calculator-total{align-items:center;border-bottom:2px solid;border-top:2px solid;display:flex;font-family:Inter,sans-serif;justify-content:space-between;margin:var(--spacing-lg) 0;padding:var(--spacing-lg)}.total-label{font-size:1.125rem;font-weight:600;letter-spacing:-.01em}.total-amount{font-size:2rem;font-weight:800;letter-spacing:-.03em}.custom-details{background:#fffc;border:2px solid;border-radius:var(--radius-md);font-family:Inter,sans-serif;font-size:.9375rem;margin-bottom:var(--spacing-lg);min-height:120px;padding:var(--spacing-md);resize:vertical;transition:all var(--transition-base);width:100%}.custom-details:focus{border-color:var(--dark-color);box-shadow:0 0 0 3px #0000001a;outline:none}.contact-button{align-items:center;background-color:var(--dark-color);border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-md);color:var(--color);cursor:pointer;display:inline-flex;font-family:Inter,sans-serif;font-size:1rem;font-weight:600;gap:var(--spacing-sm);justify-content:center;letter-spacing:-.01em;padding:var(--spacing-md) var(--spacing-xl);transition:all var(--transition-base);width:100%}.button-icon{font-size:1.125rem}.contact-button:hover{box-shadow:var(--shadow-lg)}.contact-button:active{transform:scale(.98)}.calculator-empty{font-family:Inter,sans-serif;font-size:1.125rem;font-weight:500;opacity:.6;padding:var(--spacing-2xl);text-align:center}@media (max-width:1024px){.services-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}}@media (max-width:768px){.calculator-container{padding:0 var(--spacing-md)}.services-grid{gap:var(--spacing-sm);grid-template-columns:1fr}.service-card{padding:var(--spacing-lg) var(--spacing-md)}.calculator-total{flex-direction:column;gap:var(--spacing-sm);text-align:center}.calculator-summary{padding:var(--spacing-lg)}}@media (max-width:480px){.calculator-container{padding:0 var(--spacing-sm)}.calculator-summary,.service-card{padding:var(--spacing-md)}}@media (prefers-reduced-motion:reduce){.contact-button,.service-card,.service-checkbox,.service-icon{animation:none!important;transition:none!important}.service-card:hover{transform:none!important}}#color{cursor:pointer;padding:.5rem}#modal{animation:fadeInBackdrop .3s ease;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background-color:#0009;display:none;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:500;height:100%;left:0;overflow:auto;position:fixed;scrollbar-width:thin;top:0;width:100%;z-index:1000}@keyframes fadeInBackdrop{0%{background-color:#0000}to{background-color:#0009}}.modal-content{-webkit-animation-duration:.4s;animation-duration:.4s;-webkit-animation-name:animatetop;animation-name:animatetop;background:linear-gradient(135deg,#fff,#f8f9fa);border:1px solid #e0e0e0;border-radius:12px;box-shadow:0 10px 40px #0003;color:#333;margin:50px auto;max-height:80vh;overflow-y:auto;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);width:35%}.modal-content::-webkit-scrollbar{width:6px}.modal-content::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.modal-content::-webkit-scrollbar-thumb{background:#888;border-radius:10px}.modal-content::-webkit-scrollbar-thumb:hover{background:#555}@media only screen and (max-width:1024px){.modal-content{width:50%}}@media only screen and (max-width:768px){.modal-content{margin:30px auto;width:80%}}@media only screen and (max-width:600px){.modal-content{margin:20px auto;width:90%}}.modal-header{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e8eaed);border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:1.5rem;position:-webkit-sticky;position:sticky;top:0;z-index:10}.modal-header h2{color:#333;flex:1 1;font-size:1.5rem;font-weight:700;letter-spacing:-.01em;margin:0;text-align:center}.modal-body{line-height:1.6;padding:2rem}.modal-footer{background:#f8f9fa;border-top:1px solid #e0e0e0;gap:1rem;justify-content:flex-end;padding:1rem 2rem}#closemodal,.modal-footer{align-items:center;display:flex}#closemodal{background:none;border:none;border-radius:6px;color:#666;cursor:pointer;font-size:1.5rem;font-weight:300;height:40px;justify-content:center;padding:.25rem .5rem;transition:all .3s ease;width:40px}#closemodal:focus,#closemodal:hover{background-color:#00000014;color:#333;transform:scale(1.1)}#closemodal:focus-visible{outline:2px solid #333;outline-offset:2px}fieldset{background:#fafbfc;border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem}fieldset legend{color:#333;font-size:1rem;font-weight:700;padding:0 .5rem}.form-group{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem}.form-group:last-of-type{margin-bottom:0}.form-group label{color:#333;display:block;font-size:.95rem;font-weight:600}.form-group input[type=file],.form-group input[type=text],.form-group textarea{border:2px solid #e0e0e0;border-radius:6px;font-family:Inter,sans-serif;font-size:.95rem;padding:.75rem;transition:all .2s ease;width:100%}.form-group input[type=text],.form-group textarea{min-height:auto;resize:vertical}.form-group textarea{font-family:Inter,sans-serif;line-height:1.4;min-height:120px;resize:vertical;width:100%}.form-group input[type=text]:focus,.form-group textarea:focus{border-color:inherit;box-shadow:0 0 0 3px #00000014;outline:none}.form-group input[type=file]{cursor:pointer;padding:.5rem}.form-group input[type=file]::-webkit-file-upload-button{background:#f0f0f0;border:1px solid #d0d0d0;border-radius:4px;cursor:pointer;font-weight:500;margin-right:1rem;padding:.5rem 1rem;-webkit-transition:all .2s ease;transition:all .2s ease}.form-group input[type=file]::file-selector-button{background:#f0f0f0;border:1px solid #d0d0d0;border-radius:4px;cursor:pointer;font-weight:500;margin-right:1rem;padding:.5rem 1rem;transition:all .2s ease}.form-group input[type=file]::-webkit-file-upload-button:hover{background:#e0e0e0}.form-group input[type=file]::file-selector-button:hover{background:#e0e0e0}#file-help{color:#666;display:block;font-size:.85rem;font-style:italic;margin-top:.3rem}.form-actions{align-items:center;border-top:1px solid #e0e0e0;display:flex;flex-wrap:wrap;gap:1rem;margin-top:2rem;padding-top:1.5rem}.btn-send{border:2px solid;border-radius:6px;cursor:pointer;flex-shrink:0;font-size:.95rem;font-weight:600;padding:.75rem 1.5rem;transition:all .2s ease;white-space:nowrap}.btn-send:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.btn-send:focus-visible{outline:2px solid currentColor;outline-offset:2px}.btn-send:active{transform:translateY(0)}.status-label{color:#666;font-size:.9rem;font-weight:600}.status-message{align-items:center;color:#666;display:flex;font-size:.85rem;min-height:1.2em}@keyframes animatetop{0%{opacity:0;top:-300px;transform:scale(.95)}to{opacity:1;top:0;transform:scale(1)}}@keyframes animatebottom{0%{opacity:1;top:0;transform:scale(1)}to{opacity:0;top:-300px;transform:scale(.95)}}@media only screen and (max-width:768px){.modal-body{padding:1.5rem}fieldset{padding:1rem}.form-group{margin-bottom:1rem}.form-actions{flex-direction:column;gap:.5rem}.btn-send{width:100%}.status-label,.status-message{text-align:center;width:100%}}@media only screen and (max-width:480px){.modal-header{padding:1rem}.modal-header h2{font-size:1.25rem}.modal-body{padding:1rem}fieldset{padding:.75rem}.form-group textarea{font-size:14px;min-height:100px}}@media (prefers-reduced-motion:reduce){#closemodal,.btn-send,.modal-content{animation:none!important;transition:none!important}.btn-send:active,.btn-send:hover{transform:none!important}}.cookie-consent{border-top:1px dotted;bottom:0;box-shadow:0 -2px 10px #0000001a;left:0;padding:1rem;position:fixed;right:0;transition:all .3s ease;z-index:1000}.cookie-content{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin:0 auto;max-width:1200px}.cookie-content p{flex:1 1;font-size:.9rem;margin:0;min-width:250px}.cookie-buttons{align-items:center;display:flex;gap:.5rem}.accept-btn{border-radius:5px;cursor:pointer;font-size:.9rem;font-weight:700;padding:.5rem 1rem;transition:all .3s ease}.accept-btn:hover{opacity:.8;transform:translateY(-1px)}.close-btn{align-items:center;background:#0000;border-radius:50%;cursor:pointer;display:flex;font-size:1.2rem;font-weight:700;height:30px;justify-content:center;min-width:30px;padding:.3rem .7rem;transition:all .3s ease}.close-btn:hover{opacity:.7;transform:scale(1.1)}@media (max-width:768px){.cookie-content{flex-direction:column;text-align:center}.cookie-content p{min-width:auto}.cookie-buttons{justify-content:center;width:100%}}.gameboy-overlay{align-items:center;animation:fadeIn .3s ease-in-out;background:#000000e6;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:10000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.gameboy-overlay.fullscreen{background:#000000f2;z-index:10000}.fullscreen-emulator{color:#fff;display:flex;flex-direction:column;height:100vh;width:100vw}.fullscreen-header{align-items:center;background:#000c;border-bottom:1px solid #333;display:flex;justify-content:space-between;padding:15px 30px}.fullscreen-header button{background:#444;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px;transition:background .2s}.fullscreen-header button:hover{background:#555}.game-title-fullscreen{color:#fff;font-size:18px;font-weight:700}.fullscreen-game-container{align-items:center;display:flex;flex:1 1;height:100%;justify-content:center;max-height:calc(100vh - 120px);max-width:100vw;min-height:0;overflow:hidden;padding:20px;position:relative;width:100%}.fullscreen-game-container>div{align-items:center!important;display:flex!important;height:100%;justify-content:center!important;left:0;position:absolute;top:0;width:100%}.fullscreen-display-container{align-items:center;display:flex;height:100%;justify-content:center;max-height:none;max-width:none;position:relative;width:100%}.fullscreen-display-container canvas{aspect-ratio:160/144;background:#9bbc0f;border:none;border-radius:0;display:block!important;height:100%;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;max-height:100%;max-width:100%;object-fit:contain;visibility:visible!important;width:100%}.emulator-display-container{align-items:center;display:flex;height:100%;justify-content:center;position:relative;width:100%}.emulator-canvas{aspect-ratio:160/144!important;background:#9bbc0f!important;border:none!important;border-radius:0!important;display:block!important;height:100%!important;image-rendering:pixelated!important;image-rendering:-moz-crisp-edges!important;image-rendering:crisp-edges!important;max-height:100%!important;max-width:100%!important;object-fit:contain!important;visibility:visible!important;width:100%!important}.emulator-wrapper{align-items:center;display:flex;height:100%;justify-content:center;overflow:hidden;position:relative;width:100%}.emulator-loading{background:#000c;border-radius:4px;color:#fff;font-size:12px;left:50%;padding:10px;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:1}.fullscreen-controls-info{background:#000c;border-top:1px solid #333;padding:15px 30px;text-align:center}.fullscreen-controls-info small{color:#ccc;font-size:14px}.gameboy-container{background:linear-gradient(145deg,#8b956d,#9fa58a);border-radius:20px 20px 40px 40px;box-shadow:0 20px 40px #0000004d,inset 0 2px 4px #ffffff1a;height:600px;padding:20px;position:relative;width:400px}.gameboy-body{flex-direction:column;height:100%}.gameboy-body,.gameboy-header{align-items:center;display:flex;width:100%}.gameboy-header{justify-content:space-between;margin-bottom:20px}.gameboy-logo{color:#2d3d2d;font-family:Courier New,monospace;font-size:18px;font-weight:700;text-shadow:1px 1px 2px #ffffff4d}.gameboy-close{background:#d32f2f;border:none;border-radius:50%;box-shadow:0 2px 4px #0000004d;color:#fff;cursor:pointer;font-size:20px;height:30px;transition:all .2s ease;width:30px}.gameboy-close:hover{background:#b71c1c;transform:scale(1.1)}.gameboy-screen-container{background:#2d3d2d;border-radius:10px;box-shadow:inset 0 4px 8px #00000080,0 2px 4px #ffffff1a;height:240px;margin-bottom:30px;padding:15px;width:320px}.gameboy-screen{background:#9bbc0f;border-radius:5px;color:#0f380f;font-family:Courier New,monospace;justify-content:center;overflow:hidden}.game-menu,.gameboy-screen{align-items:center;display:flex;height:100%;width:100%}.game-menu{flex-direction:column;padding:10px}.game-menu h3{font-size:14px;margin:0 0 15px;text-align:center}.loading,.no-games{font-size:12px;margin-top:50px;text-align:center}.games-list{display:flex;flex-direction:column;gap:8px;height:100%;overflow-y:auto;width:100%}.game-item{align-items:center;background:#0f380f1a;border-radius:3px;cursor:pointer;display:flex;gap:10px;padding:8px;transition:background .2s ease}.game-item:hover{background:#0f380f33}.game-icon{font-size:16px;min-width:20px}.game-info{display:flex;flex:1 1;flex-direction:column;gap:2px}.game-name{font-size:11px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.game-type{font-size:9px;font-style:italic;opacity:.7}.game-player{display:flex;flex-direction:column;height:100%;width:100%}.game-header{align-items:center;display:flex;gap:10px;margin-bottom:10px;padding:5px}.back-button{background:#0f380f4d;border:none;border-radius:3px;color:#0f380f;cursor:pointer;font-family:Courier New,monospace;font-size:10px;padding:4px 8px}.back-button:hover{background:#0f380f80}.game-title{flex:1 1;font-size:11px;font-weight:700;text-align:center}.game-canvas-container{align-items:center;aspect-ratio:160/144;display:flex;height:100%;justify-content:center;overflow:hidden;position:relative;width:100%}.game-canvas{background:#0f380f;border-radius:3px;height:100%;image-rendering:pixelated;width:100%}.game-frame{background:#0000;border:none;border-radius:3px;height:100%;left:0;position:absolute;top:0;width:100%}.emulator-error{align-items:center;color:#0f380f;display:flex;flex-direction:column;font-size:12px;height:100%;justify-content:center;text-align:center;width:100%}.emulator-error small{font-size:10px;margin-top:5px;opacity:.8}.gameboy-controls{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px;padding:0 20px;width:100%}.dpad-container{align-items:center;display:flex;justify-content:center}.dpad{grid-gap:2px;display:grid;gap:2px;grid-template-columns:1fr 1fr 1fr;grid-template-rows:1fr 1fr 1fr;height:80px;position:relative;width:80px}.dpad button{background:#2d3d2d;border:none;box-shadow:0 3px 6px #0000004d,inset 0 1px 2px #ffffff1a;color:#8b956d;cursor:pointer;font-size:16px;transition:all .1s ease}.dpad button:active{box-shadow:0 1px 3px #0000004d,inset 0 2px 4px #0003;transform:translateY(1px)}.dpad-up{border-radius:8px 8px 0 0;grid-column:2;grid-row:1}.dpad-left{border-radius:8px 0 0 8px;grid-column:1;grid-row:2}.dpad-center{background:#1a2a1a;cursor:default;grid-column:2;grid-row:2}.dpad-right{border-radius:0 8px 8px 0;grid-column:3;grid-row:2}.dpad-down{border-radius:0 0 8px 8px;grid-column:2;grid-row:3}.action-buttons{align-items:center;display:flex;gap:15px}.btn-a,.btn-b{background:#2d3d2d;border:none;border-radius:50%;box-shadow:0 4px 8px #0000004d,inset 0 1px 2px #ffffff1a;color:#8b956d;cursor:pointer;font-size:16px;font-weight:700;height:50px;transition:all .1s ease;width:50px}.btn-a:active,.btn-b:active{box-shadow:0 2px 4px #0000004d,inset 0 2px 4px #0003;transform:translateY(1px)}.gameboy-bottom{align-items:center;display:flex;gap:40px}.select-btn,.start-btn{background:#2d3d2d;border:none;border-radius:20px;box-shadow:0 2px 4px #0000004d,inset 0 1px 2px #ffffff1a;color:#8b956d;cursor:pointer;font-size:10px;font-weight:700;padding:8px 16px;transition:all .1s ease}.select-btn:active,.start-btn:active{box-shadow:0 1px 2px #0000004d,inset 0 2px 4px #0003;transform:translateY(1px)}.controls-info{margin-top:15px;padding:0 10px;text-align:center}.controls-info small{color:#5a6b5a;display:block;font-size:9px;line-height:1.2}@media (max-width:480px){.gameboy-container{height:80vh;max-width:350px;width:90vw}.gameboy-screen-container{height:180px;width:90%}.dpad{height:60px;width:60px}.btn-a,.btn-b{font-size:14px;height:40px;width:40px}}.background-animations{height:100%;left:0;opacity:.18;overflow:hidden;pointer-events:none;position:fixed;top:0;width:100%;will-change:auto;z-index:-1}.shape{opacity:.6;position:absolute;transition:border-color 1s ease,background-color 1s ease;will-change:transform}.circle{border:3px solid;border-radius:50%}.circle-1{animation:float-simple 35s ease-in-out infinite;height:180px;left:80%;top:10%;width:180px}.circle-2{animation:float-simple 40s ease-in-out infinite reverse;height:130px;left:10%;top:60%;width:130px}.circle-3{animation:float-simple 45s ease-in-out infinite;height:110px;left:50%;top:30%;width:110px}.square{border:3px solid}.square-1{animation:rotate-slow 50s linear infinite;height:100px;right:15%;top:40%;width:100px}.square-2{animation:rotate-slow 60s linear infinite reverse;height:80px;left:25%;top:75%;width:80px}.triangle{border-bottom:85px solid;border-left:50px solid #0000;border-right:50px solid #0000;height:0;opacity:.5;width:0}.triangle-1{animation:float-simple 38s ease-in-out infinite;left:30%;top:15%}.triangle-2{animation:float-simple 42s ease-in-out infinite reverse;right:20%;top:70%;transform:rotate(180deg)}.line{height:2px;opacity:.4;width:200px}.line-1{animation:slide-line 55s linear infinite;left:-200px;top:20%}.line-2{animation:slide-line 65s linear infinite reverse;right:-200px;top:50%}.dots-pattern{height:100%;position:absolute;width:100%}.dot{animation:pulse-dot 5s ease-in-out infinite;border-radius:50%;height:4px;opacity:.5;position:absolute;width:4px;will-change:transform,opacity}@keyframes float-simple{0%,to{transform:translateZ(0)}50%{transform:translate3d(-20px,-30px,0)}}@keyframes rotate-slow{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes pulse-dot{0%,to{opacity:.4;transform:scaleX(1)}50%{opacity:.2;transform:scale3d(1.2,1.2,1)}}@media (max-width:768px){.background-animations{opacity:.12}.circle-1{height:100px;width:100px}.circle-2{height:80px;width:80px}.circle-3{height:70px;width:70px}.square-1{height:60px;width:60px}.square-2{height:50px;width:50px}.triangle{border-bottom:50px solid;border-left:30px solid #0000;border-right:30px solid #0000}.line{width:120px}.dot{height:3px;width:3px}}@media (prefers-reduced-motion:reduce){.background-animations{opacity:.08}.dot,.shape{animation:none!important}}@media (min-width:1920px){.circle-1{height:220px;width:220px}.circle-2{height:160px;width:160px}.circle-3{height:140px;width:140px}.square-1{height:130px;width:130px}.square-2{height:110px;width:110px}.triangle{border-bottom:110px solid;border-left:65px solid #0000;border-right:65px solid #0000}.line{width:280px}}.language-switcher{align-items:center;border:2px solid;border-radius:8px;box-shadow:0 2px 8px #0000001a;display:flex;gap:8px;padding:8px 12px;position:fixed;right:20px;top:20px;transition:all .3s ease;z-index:1000}.language-switcher:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.language-switcher label{cursor:pointer;font-size:1.2rem;-webkit-user-select:none;user-select:none}.language-switcher select{border:1px solid;border-radius:4px;cursor:pointer;font-family:inherit;font-size:.9rem;outline:none;padding:4px 8px;transition:all .2s ease}.language-switcher select:hover{opacity:.8}.language-switcher select:focus{box-shadow:0 0 0 2px #0000001a}@media (max-width:768px){.language-switcher{bottom:20px;gap:4px;padding:4px 8px;right:10px;top:auto}.language-switcher label{font-size:.9rem}.language-switcher select{font-size:.75rem;padding:2px 4px}}@media (min-width:769px) and (max-width:1024px){.language-switcher{padding:6px 10px;right:15px;top:15px}}
/*# sourceMappingURL=main.5b452d4f.css.map*/