@import"https://fonts.googleapis.com/css2?family=GFS+Didot&family=Inter:wght@300;400;500;600&display=swap";:root{--bg-color: #fdfdfd;--text-color: #111;--text-muted: #555;--overlay-bg: rgba(255, 255, 255, .75);--lightbox-bg: rgba(255, 255, 255, .98);--border-color: #eee;--input-bg: #fff;--input-border: #ccc;--input-focus: #000}[data-theme=dark]{--bg-color: #121212;--text-color: #f5f5f5;--text-muted: #aaa;--overlay-bg: rgba(18, 18, 18, .85);--lightbox-bg: rgba(18, 18, 18, .99);--border-color: #333;--input-bg: #1e1e1e;--input-border: #444;--input-focus: #fff}body,p,span,div,li,select,option,label,input,textarea{font-family:Inter,sans-serif;font-weight:300}h1,h2,h3,h4,.say-hello,.project-link,.project-link-astro,.editorial-title{font-family:GFS Didot,serif!important}a,button,.menu-btn,.back-btn,.back-btn-astro,.slider-counter,.slider-btn,.submit-btn,.next-btn{font-family:Inter,sans-serif;font-weight:400;letter-spacing:.15em;text-transform:uppercase}body{margin:0;padding:0;background-color:var(--bg-color);color:var(--text-color);min-height:100vh;box-sizing:border-box;-webkit-font-smoothing:antialiased;overflow-x:hidden;transition:background-color .3s ease,color .3s ease}a,button{text-decoration:none;color:var(--text-color);background:none;border:none;cursor:pointer;transition:transform .25s cubic-bezier(.4,0,.2,1),opacity .3s ease,color .3s ease}button:hover{transform:scale(1.08)}button:active{transform:scale(.96)}.slider-btn{font-size:2rem;color:#b3b3b3;padding:10px 20px}.slider-btn:hover{color:var(--text-color)}body.menu-active main,body.lightbox-open main{filter:blur(20px);transition:filter .4s ease}.menu-btn{position:fixed;top:30px;right:30px;font-size:18px;z-index:101;letter-spacing:2px}.back-btn{position:fixed;top:30px;left:30px;font-size:18px;z-index:101;letter-spacing:2px;text-transform:uppercase}body.menu-active .menu-btn,body.menu-active .back-btn,body.lightbox-open .menu-btn,body.lightbox-open .back-btn{opacity:0!important;pointer-events:none}.overlay{height:100vh;height:100dvh;width:100vw;position:fixed;z-index:999;top:0;left:0;background-color:var(--overlay-bg);opacity:0;visibility:hidden;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);transition:.4s ease;display:flex;align-items:center;justify-content:center}.overlay.active{opacity:1;visibility:visible}.overlay-content a{display:block;font-size:32px;margin:25px;letter-spacing:8px;text-transform:uppercase;transition:transform .25s cubic-bezier(.4,0,.2,1),opacity .3s ease}.overlay-content a:hover{transform:scale(1.08)}.overlay-content a:active{transform:scale(.96)}.close-btn,.lightbox-close{position:absolute;top:30px;right:30px;font-size:35px;z-index:1000;display:none}.overlay.active .close-btn,.lightbox.active .lightbox-close{display:block}.theme-toggle{position:absolute;top:30px;left:30px;font-size:14px;letter-spacing:2px;text-transform:uppercase;opacity:.6;transition:opacity .3s ease,transform .25s cubic-bezier(.4,0,.2,1)}.theme-toggle:hover{opacity:1}.audio-toggle{position:absolute;bottom:30px;left:30px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;color:var(--text-color);opacity:.6;transition:opacity .3s ease,transform .25s cubic-bezier(.4,0,.2,1);background:transparent;border:none;padding:0;z-index:1000}.audio-toggle:hover{opacity:1}.audio-toggle .icon-playing{display:none}.audio-toggle .icon-muted,.audio-toggle.playing .icon-playing{display:block}.audio-toggle.playing .icon-muted{display:none}.menu-copyright{position:absolute;bottom:43px;left:90px;font-size:10px;letter-spacing:1.5px;opacity:.4;text-transform:uppercase;color:var(--text-color)}.audio-status-label{position:fixed;bottom:25px;left:50%;transform:translate(-50%);font-size:11px;letter-spacing:2px;text-transform:uppercase;pointer-events:none;z-index:1005;opacity:0;visibility:hidden;transition:opacity .5s ease,visibility .5s ease;white-space:nowrap;color:var(--text-color)}.audio-status-label a{color:inherit;text-decoration:none;pointer-events:auto}.audio-status-label a:hover{text-decoration:underline}.audio-status-label.visible{visibility:visible;animation:playing-glow-sway 8s infinite ease-in-out}@keyframes playing-glow-sway{0%{color:#bfa3ff;transform:translate(-50%) scale(.96) rotate(-2.5deg);opacity:.8}25%{color:#a3d5ff;transform:translate(-51%,-2px) scale(1.02) rotate(1.2deg);opacity:.5}50%{color:#b3ffd6;transform:translate(-49%,-4px) scale(.97) rotate(-1.5deg);opacity:.8}75%{color:#ffdca3;transform:translate(-48%,-1px) scale(1.04) rotate(2deg);opacity:.5}to{color:#bfa3ff;transform:translate(-50%) scale(.96) rotate(-2.5deg);opacity:.8}}.audio-volume-container{position:fixed;bottom:25px;right:40px;z-index:1005;display:flex;align-items:center;gap:8px;opacity:0;visibility:hidden;transition:opacity .5s ease,visibility .5s ease;color:var(--text-color)}.audio-volume-container.visible{opacity:.6;visibility:visible}.audio-volume-container:hover{opacity:1}body.menu-active .audio-status-label,body.menu-active .audio-volume-container,body.lightbox-open .audio-status-label,body.lightbox-open .audio-volume-container{opacity:0!important;visibility:hidden!important;pointer-events:none!important}.volume-slider{-webkit-appearance:none;appearance:none;width:60px;height:1px;background:var(--text-color);outline:none;opacity:.4;transition:opacity .2s,width .3s;border-radius:1px}.volume-slider:hover{opacity:.8}.volume-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:6px;height:6px;border-radius:50%;background:var(--text-color);cursor:none!important}.volume-slider::-moz-range-thumb{width:6px;height:6px;border-radius:50%;background:var(--text-color);cursor:none!important}.gallery-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;width:100vw;overflow:hidden}.photo-wrapper{height:60vh;width:100%;display:flex;align-items:center;justify-content:center}.photo-wrapper img{max-height:100%;max-width:90vw;transition:opacity .5s ease;cursor:pointer}.photo-info{height:80px;margin-top:30px;text-align:left;width:100%;max-width:600px;padding:0 20px;display:flex;flex-direction:column}.photo-info h2{margin:0;font-size:18px;font-weight:400;letter-spacing:2px}.photo-info p{margin:5px 0 0;font-size:14px;opacity:.6;color:var(--text-muted)}.next-btn{margin-top:20px;font-size:16px;letter-spacing:5px;text-transform:uppercase}.grid-container{column-count:3;column-gap:25px;padding:100px 40px 40px}.grid-item{break-inside:avoid;margin-bottom:25px}.grid-item img{width:100%;height:auto;display:block;cursor:pointer}.projects-grid{display:grid;grid-template-columns:1fr 1fr;gap:120px 20px;padding:150px 10% 100px}.project-link{font-size:42px;letter-spacing:7px;text-transform:uppercase;text-align:center}.project-container{max-width:1000px;margin:0 auto;min-height:100vh;display:flex;flex-direction:column;justify-content:center}.project-slider{display:flex;flex-direction:column;align-items:center;justify-content:center;margin-bottom:30px}.project-slider img{max-height:70vh;max-width:90%;cursor:pointer;transition:opacity .4s ease}.slider-nav{margin-top:25px;display:flex;gap:20px}.slider-nav button{font-size:24px;padding:0 10px;opacity:.6;transition:.3s}.slider-nav button:hover{opacity:1}.project-header{max-width:600px;margin:20px auto 0;text-align:left;padding:0 20px}.project-header h1{font-size:24px;letter-spacing:4px;text-transform:uppercase;font-weight:400;margin-bottom:10px}.project-text{font-size:15px;line-height:1.6;color:var(--text-muted)}.contact-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;text-align:center;padding:100px 20px 40px;box-sizing:border-box}.say-hello{font-size:48px;letter-spacing:15px;margin-bottom:30px;font-weight:400;text-transform:uppercase}.contact-links{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:40px;margin-top:40px}.contact-links a{font-size:16px;letter-spacing:4px;text-transform:uppercase;opacity:.6;transition:opacity .3s,transform .25s}.contact-links a:hover{opacity:1;transform:scale(1.08)}.contact-form{width:100%;max-width:450px;display:flex;flex-direction:column;gap:30px;text-align:left;margin:0 auto}.form-group{position:relative;width:100%}.contact-form input,.contact-form textarea{width:100%;padding:12px 0;background:transparent;border:none;border-bottom:1px solid var(--input-border);color:var(--text-color);font-size:14px;letter-spacing:1.5px;text-transform:uppercase;outline:none;transition:border-color .3s ease}.contact-form textarea{resize:none;text-transform:none}.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--text-muted);opacity:.5;letter-spacing:1.5px}.contact-form input:focus,.contact-form textarea:focus{border-bottom:1px solid var(--input-focus)}.contact-form .submit-btn{align-self:center;margin-top:15px;font-size:14px;letter-spacing:4px;text-transform:uppercase;padding:10px 30px;border:1px solid var(--text-color);transition:background-color .3s,color .3s,transform .25s}.contact-form .submit-btn:hover{background-color:var(--text-color);color:var(--bg-color)}.form-disclaimer{font-size:10px;color:var(--text-muted);opacity:.5;text-align:center;margin-top:15px;letter-spacing:1.5px;text-transform:uppercase;line-height:1.4}.lightbox{position:fixed;top:0;left:0;width:100%;height:100%;background:var(--lightbox-bg);z-index:1100;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:.3s}.lightbox.active{opacity:1;visibility:visible}.lightbox img{max-width:90vw;max-height:85vh;transform:scale(.97);transition:.4s}.lightbox.active img{transform:scale(1)}.fade-in-image{opacity:0;transition:opacity .8s cubic-bezier(.25,.46,.45,.94)}.fade-in-image.loaded{opacity:1}@media (hover: hover){body{cursor:none}a,button,input,textarea,select,option,label,img,.slider-main,.slider-arrow,#portfolio-photo,[role=button]{cursor:none!important}.cursor-dot{width:6px;height:6px;background-color:var(--text-color);position:fixed;top:0;left:0;transform:translate(-50%,-50%);border-radius:50%;z-index:10000;pointer-events:none;transition:width .12s cubic-bezier(.25,1,.5,1),height .12s cubic-bezier(.25,1,.5,1),background-color .12s ease,opacity .4s ease}.cursor-outline{width:30px;height:30px;border:1px solid var(--text-color);position:fixed;top:0;left:0;transform:translate(-50%,-50%);border-radius:50%;z-index:9999;pointer-events:none;transition:width .15s cubic-bezier(.25,1,.5,1),height .15s cubic-bezier(.25,1,.5,1),border-color .15s ease,background-color .15s ease,opacity .4s ease}body.cursor-hover .cursor-dot{width:4px;height:4px;background-color:var(--bg-color)}body.cursor-hover .cursor-outline{width:50px;height:50px;border-color:transparent;background-color:#80808033}body.cursor-idle .cursor-dot,body.cursor-idle .cursor-outline{opacity:0}}@media (max-width: 900px){.grid-container{column-count:2}.projects-grid{grid-template-columns:1fr}}@media (max-width: 768px){.overlay-content a{font-size:24px;margin:15px;letter-spacing:4px}.theme-toggle{top:20px;left:20px}.close-btn{top:20px;right:20px}.audio-toggle{bottom:25px;left:20px}.menu-copyright{bottom:38px;left:75px;font-size:9px}.audio-status-label{bottom:75px!important;font-size:9px!important;letter-spacing:1.5px!important;left:50%!important;transform:translate(-50%)!important}.audio-volume-container{bottom:35px!important;right:auto!important;left:50%!important;transform:translate(-50%)!important}}
