@import"https://fonts.googleapis.com/css?family=Cinzel+Decorative";:root{font-family:Cinzel Decorative,serif;line-height:1.5;font-weight:400;letter-spacing:.1em;color-scheme:light dark;color:#333;background-color:#6e6e6e;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:400;color:#eee;text-decoration:inherit}a:hover{color:#eee}body{margin:0;min-width:320px;min-height:100vh;font-family:Cinzel Decorative,serif;color:#333;font-size:15px;line-height:24px;font-weight:300;background:#6e6e6e;letter-spacing:.1em}h1{font-size:3.2em;line-height:1.1}button{border:none;padding:.6em 1.2em;font-size:1em;font-weight:400;font-family:Cinzel Decorative,serif;background-color:transparent;color:#eee;cursor:pointer;transition:all .3s ease}button:hover{border-color:#686c72}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Cinzel Decorative,serif;color:#333;font-size:15px;line-height:1.6;font-weight:300;background:#6e6e6e;letter-spacing:.1em;margin:0;padding:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth;overflow-x:hidden}::selection{background:#fff3;color:#fff}::-moz-selection{background:#fff3;color:#fff}#root{min-height:100vh;background:#6e6e6e}.art-gallery{display:flex;flex-direction:column;min-height:100vh;background:linear-gradient(135deg,#6e6e6e,#7a7a7a,#6e6e6e);position:relative}.art-gallery:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background-image:radial-gradient(circle at 25% 25%,rgba(255,255,255,.02) 1px,transparent 1px),radial-gradient(circle at 75% 75%,rgba(255,255,255,.02) 1px,transparent 1px);background-size:50px 50px;pointer-events:none;z-index:1}header{position:relative;z-index:2;padding:50px 0;background:linear-gradient(135deg,#6e6e6e,#7a7a7a)}.container{max-width:1200px;margin:0 auto;padding:0 15px}.intro-row-c1{display:flex;align-items:flex-start;gap:40px}.logo-nav{flex:1;max-width:50%}.header-image{flex:1;max-width:50%;text-align:left}.header-image img{max-width:100%;height:auto;display:block}.logo-white img{max-height:60px;margin-bottom:20px}.menuhp{margin:20px 0;list-style:none;padding:0}.menuhp li{border-bottom:1px solid #5c5f63;width:45%;padding:7px 0;transition:all .4s cubic-bezier(.25,.46,.45,.94);position:relative;overflow:hidden}.menuhp li:hover{border-bottom:1px solid #8a9099;width:35%;transform:translate(5px)}.menuhp li:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);transition:left .6s}.menuhp li:hover:before{left:100%}.menuhp a{color:#eee;font-size:16px;line-height:28px;font-weight:400;font-family:Cinzel Decorative;text-decoration:none;text-transform:lowercase;letter-spacing:.1em;transition:all .3s ease;display:block;position:relative;z-index:1}.menuhp a:hover{color:#fff;text-decoration:none;text-shadow:0 0 8px rgba(255,255,255,.3)}.menuhp a.active{color:#fff;font-weight:400;text-shadow:0 0 5px rgba(255,255,255,.2)}.portfolio-section{padding:60px 0;background:transparent;position:relative;z-index:2}.portfolio-items-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:30px;padding:0 15px;max-width:1400px;margin:0 auto}.portfolio-item{position:relative;padding:0 10px;border-radius:12px;overflow:hidden;box-shadow:0 8px 25px #0000004d;transition:all .4s cubic-bezier(.25,.46,.45,.94);cursor:pointer}.portfolio-item:before{content:"";position:absolute;inset:0;background:linear-gradient(45deg,rgba(255,255,255,.1),transparent);opacity:0;transition:opacity .3s ease;z-index:1;pointer-events:none}.portfolio-item:hover:before{opacity:1}.portfolio-item:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 15px 40px #0006}.hover-overlay{width:100%;height:auto;overflow:hidden;position:relative;cursor:pointer}.hover-overlay img{width:100%;height:320px;object-fit:cover;transition:all .6s cubic-bezier(.25,.46,.45,.94);display:block}.item-overlay{opacity:0;position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#0009,#000c);transition:opacity .4s ease-out}.overlay-content{position:absolute;bottom:0;left:0;z-index:20;width:100%;opacity:0;transition:all .4s cubic-bezier(.25,.46,.45,.94);color:#fff}.overlay-content h4{margin-bottom:8px;padding-left:25px;color:#fff;font-family:Cinzel Decorative;font-size:1.3rem;text-shadow:0 2px 4px rgba(0,0,0,.5)}.overlay-content p{padding:0 25px 4px;color:#eee;font-family:Arial,sans-serif;margin:0;opacity:.9;text-shadow:0 1px 2px rgba(0,0,0,.5)}.portfolio-item .hover-overlay:hover>img{transform:scale(1.08);filter:brightness(1.1) contrast(1.1)}.portfolio-item .hover-overlay:hover .item-overlay{opacity:1}.portfolio-item:hover .overlay-content{bottom:15%;opacity:1}footer{margin-top:auto;padding:50px 0;text-align:center;color:#eee;background:linear-gradient(135deg,#5a5a5a,#6e6e6e);font-family:Cinzel Decorative;position:relative;z-index:2;border-top:1px solid rgba(255,255,255,.1)}footer:before{content:"";position:absolute;top:0;left:0;width:100%;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent)}footer p{margin:15px 0;color:#eee;opacity:.9}footer a{color:#eee;text-decoration:none;margin:0 .5rem;font-family:Cinzel Decorative;transition:all .3s ease;position:relative}footer a:hover{color:#fff;text-shadow:0 0 8px rgba(255,255,255,.3)}footer a:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:1px;background:#fff;transition:width .3s ease}footer a:hover:after{width:100%}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.footer{background-color:#2c2c2c;color:#fff;text-align:center;padding:2rem 0;margin-top:4rem}.footer a{color:#ccc;text-decoration:none;margin:0 1rem}.footer a:hover{color:#fff}.contentpage{max-width:900px;margin:0 auto;padding:80px 2rem;line-height:1.8;background:transparent;min-height:100vh;position:relative;z-index:2;animation:fadeInUp .6s ease-out}.contentpage h1{color:#fff;font-family:Cinzel Decorative;margin:0 0 30px;font-size:2.8rem;text-shadow:0 2px 4px rgba(0,0,0,.3);animation:fadeInDown .8s ease-out}.contentpage p{color:#fff;font-family:Arial,sans-serif;line-height:1.8;margin-bottom:25px;font-size:20px;padding:5%;opacity:.95;animation:fadeIn 1s ease-out .2s both}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:.95}}.contact-form{max-width:600px;margin:0 auto;padding:40px;background:#0000004d;border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);animation:fadeInUp .6s ease-out}.contact-form .form-group{margin-bottom:25px;position:relative}.contact-form label{display:block;margin-bottom:8px;color:#fff;font-family:Cinzel Decorative;font-size:1.1rem;transition:color .3s ease}.contact-form input,.contact-form textarea{width:100%;padding:12px 16px;border:2px solid rgba(255,255,255,.2);border-radius:8px;background:#ffffff1a;color:#fff;font-size:1rem;transition:all .3s ease;position:relative}.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:#ffffff80;background:#ffffff26;box-shadow:0 0 0 3px #ffffff1a;transform:translateY(-1px)}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#fff9;transition:opacity .3s ease}.contact-form input:focus::placeholder,.contact-form textarea:focus::placeholder{opacity:.3}.contact-form textarea{min-height:120px;resize:vertical}.contact-form button{background:linear-gradient(45deg,#4a4a4a,#2a2a2a);color:#fff;border:none;padding:14px 32px;border-radius:8px;font-size:1.1rem;font-family:Cinzel Decorative;cursor:pointer;transition:all .3s ease;width:100%;margin-top:10px;position:relative;overflow:hidden}.contact-form button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);transition:left .5s ease}.contact-form button:hover:before{left:100%}.contact-form button:hover{background:linear-gradient(45deg,#5a5a5a,#3a3a3a);transform:translateY(-2px);box-shadow:0 5px 15px #0000004d}.contact-form button:active{transform:translateY(0)}.contact-form button:disabled{opacity:.6;cursor:not-allowed;transform:none}.form-group{margin-bottom:1.5rem}.form-group input,.form-group textarea{width:100%;padding:12px;border:1px solid #ddd;border-radius:4px;font-size:16px;font-family:inherit;transition:border-color .3s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#666}.form-group textarea{resize:vertical;min-height:120px}.btn{background-color:#333;color:#fff;padding:12px 24px;border:none;border-radius:4px;cursor:pointer;font-size:16px;transition:background-color .3s ease}.btn:hover{background-color:#555}.btn-submit{background-color:#2c5530}.btn-submit:hover{background-color:#1e3a21}.btn:disabled{background-color:#666;cursor:not-allowed;opacity:.6}.success-message{background:#4caf5033;border:1px solid rgba(76,175,80,.5);color:#4caf50;padding:15px;border-radius:8px;margin-bottom:20px;text-align:center;font-family:Cinzel Decorative;animation:slideInDown .5s ease-out}@keyframes slideInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.validation-error{color:#f44;font-size:14px;margin-top:5px;display:block}.form-group .validation-error{margin-bottom:10px}.lightbox-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0b0b0bcc;z-index:1000;text-align:center;padding:0 8px;box-sizing:border-box}.lightbox-overlay:before{content:"";display:inline-block;height:100%;vertical-align:middle}.lightbox-content{position:relative;display:inline-block;vertical-align:middle;margin:0 auto;text-align:left;max-width:90%;max-height:90vh}.lightbox-close{position:absolute;top:0;right:-6px;background:transparent;color:#fff;border:none;font-size:28px;cursor:pointer;z-index:1001;width:44px;height:44px;line-height:44px;text-align:right;padding-right:6px;opacity:.65;font-family:Arial,Baskerville,monospace}.lightbox-close:hover{opacity:1}.lightbox-image-container{line-height:0;position:relative}.lightbox-image-container:after{content:"";position:absolute;inset:40px 0;display:block;width:auto;height:auto;z-index:-1;box-shadow:0 0 8px #0009;background:#444}.lightbox-image{width:auto;max-width:100%;max-height:calc(90vh - 80px);height:auto;display:block;line-height:0;box-sizing:border-box;padding:40px 0;margin:0 auto}.lightbox-info{margin-top:-36px;position:absolute;top:100%;left:0;width:100%;cursor:auto;background:#000c;padding:10px 15px;box-sizing:border-box}.lightbox-info h3{text-align:left;line-height:18px;color:#f3f3f3;word-wrap:break-word;padding-right:36px;margin:0 0 8px;font-size:16px;font-weight:400}.lightbox-info p{color:#bdbdbd;font-size:12px;line-height:14px;margin:4px 0}@media screen and (max-width: 800px) and (orientation: landscape),screen and (max-height: 300px){.lightbox-overlay{padding-left:0;padding-right:0}.lightbox-image{padding:0}.lightbox-info{background:#0009;bottom:0;margin:0;top:auto;padding:3px 5px;position:fixed;box-sizing:border-box}.lightbox-info:empty{padding:0}.lightbox-close{top:0;right:0;width:35px;height:35px;line-height:35px;background:#0009;position:fixed;text-align:center;padding:0}}@media all and (max-width: 900px){.lightbox-overlay{padding-left:6px;padding-right:6px}}.read-the-docs{color:#888}.breadcrumb{background:#0000001a;padding:15px 0;margin-bottom:20px;border-bottom:1px solid rgba(255,255,255,.1);position:relative;z-index:2}.breadcrumb .container{display:flex;align-items:center;gap:10px}.breadcrumb a{color:#ccc;text-decoration:none;font-family:Cinzel Decorative;font-size:.9rem;transition:color .3s ease}.breadcrumb a:hover{color:#fff}.breadcrumb .separator{color:#888;margin:0 5px}.breadcrumb .current{color:#fff;font-weight:400}@media (max-width: 1200px){.portfolio-items-list{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:25px}}@media (max-width: 768px){.intro-row-c1{flex-direction:column;gap:30px;text-align:center}.logo-nav,.header-image{max-width:100%}.header-image img{max-width:80%;height:auto}.portfolio-items-list{grid-template-columns:1fr;gap:20px;padding:0 10px}.portfolio-item{margin:0}.hover-overlay img{height:280px}.menuhp{display:flex;flex-direction:column;align-items:center}.menuhp li{width:80%;text-align:center}.menuhp li:hover{width:70%;transform:translate(0)}.portfolio-section{padding:40px 0}header{padding:30px 0}}@media (max-width: 480px){.menuhp a{font-size:14px}.overlay-content h4{font-size:1.1rem}.overlay-content p{font-size:.85rem}.hover-overlay img{height:250px}}.lazy-image-container{position:relative;width:100%;height:100%;overflow:hidden}.image-skeleton{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.skeleton-shimmer{width:100%;height:100%;background:linear-gradient(90deg,transparent 25%,rgba(255,255,255,.2) 50%,transparent 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.lazy-image{width:100%;height:100%;object-fit:cover;transition:opacity .3s ease-in-out}.lazy-image.loading{opacity:0}.lazy-image.loaded{opacity:1}.lazy-image-placeholder{width:100%;height:100%;background:transparent}.lazy-image.error{filter:grayscale(100%) opacity(.7)}.image-error-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#000c;color:#fff;padding:1rem;border-radius:8px;text-align:center;font-family:Cinzel Decorative;z-index:10}.error-icon{font-size:2rem;margin-bottom:.5rem}.image-error-overlay p{margin:0;font-size:.9rem;color:#fff}.loading-container{display:flex;flex-direction:column;justify-content:center;align-items:center;margin:4rem 0;padding:3rem 0}.loading-spinner{width:50px;height:50px;border:4px solid rgba(255,255,255,.1);border-top:4px solid #eee;border-radius:50%;animation:spin 1.2s cubic-bezier(.68,-.55,.265,1.55) infinite;margin-bottom:1.5rem;box-shadow:0 0 20px #ffffff1a}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-container p{color:#eee;font-size:1.1rem;margin:0;font-weight:500;font-family:Cinzel Decorative;letter-spacing:.1em;opacity:.8;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.8}50%{opacity:1}}@media (max-width: 768px){.loading-container{margin:2rem 0;padding:1.5rem 0}.loading-spinner{width:35px;height:35px}.loading-container p{font-size:.9rem}}
