:root{--bg-primary:#faf9f6;--bg-secondary:#f5f2ec;--bg-card:#fff;--accent:#b8976c;--accent-rgb:184, 151, 108;--accent-hover:#9e7f55;--text-main:#2c2a27;--text-muted:#7a7570;--text-inverse:#faf9f6;--border-color:#2c2a2714;--font-heading:"Cormorant Garamond", serif;--font-body:"Outfit", sans-serif;--container-max-width:1200px;--transition-smooth:all .4s cubic-bezier(.25, .46, .45, .94);--transition-fast:all .2s ease-in-out}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;background-color:var(--bg-primary);color:var(--text-main);font-family:var(--font-body);font-size:16px;line-height:1.6}body{background-color:var(--bg-primary);overflow-x:hidden}img{max-width:100%;height:auto;display:block}a{color:inherit;transition:var(--transition-fast);text-decoration:none}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit;background:0 0;border:none;outline:none}.container{max-width:var(--container-max-width);margin:0 auto;padding:0 2rem}.max-width-md{max-width:800px}.bg-secondary{background-color:var(--bg-secondary)}.text-center{text-align:center}.section-tag{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.15em;color:var(--accent);margin-bottom:.5rem;font-size:.8rem;font-weight:600;display:block}.section-title{font-family:var(--font-heading);color:var(--text-main);margin-bottom:2rem;font-size:3rem;font-weight:400;line-height:1.15}@media (width<=768px){.section-title{font-size:2.2rem}}.section-subtitle{color:var(--text-muted);margin-bottom:2.5rem;font-size:1.1rem;font-weight:300}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--bg-secondary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--accent)}.btn{letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:var(--transition-smooth);justify-content:center;align-items:center;padding:.8rem 2rem;font-size:.85rem;font-weight:500;display:inline-flex}.btn-primary{background-color:var(--accent);color:var(--text-inverse);border:1px solid var(--accent)}.btn-primary:hover{background-color:var(--accent-hover);border-color:var(--accent-hover);transform:translateY(-2px);box-shadow:0 4px 15px #b8976c33}.btn-secondary{color:var(--text-main);border:1px solid #2c2a2733}.btn-secondary:hover{background-color:var(--text-main);color:var(--bg-primary);border-color:var(--text-main);transform:translateY(-2px)}.btn-link{color:var(--accent);letter-spacing:.05em;cursor:pointer;border-bottom:1px solid #0000;padding-bottom:2px;font-size:.9rem;font-weight:500}.btn-link:hover{color:var(--accent-hover);border-color:var(--accent-hover)}.btn-block{width:100%}.navbar{z-index:100;-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-color);width:100%;transition:var(--transition-smooth);background-color:#faf9f6b3;position:fixed;top:0;left:0}.navbar.scrolled{background-color:#faf9f6f2;padding:.8rem 0;box-shadow:0 4px 30px #2c2a270d}.nav-container{max-width:var(--container-max-width);transition:var(--transition-smooth);justify-content:space-between;align-items:center;margin:0 auto;padding:1.2rem 2rem;display:flex}.navbar.scrolled .nav-container{padding:.6rem 2rem}.logo-wrapper{flex-direction:column;align-items:flex-start;line-height:1;text-decoration:none;display:inline-flex}.logo{font-family:var(--font-body);letter-spacing:.08em;color:var(--text-main);font-size:1.55rem;font-weight:700;line-height:1}.logo span{color:var(--accent)}.logo-subtitle{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.24em;color:#6a4f2e;opacity:1;margin-top:.3rem;font-size:.68rem;font-weight:600;line-height:1.1}.nav-links{gap:2.5rem;display:flex}.nav-link{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-size:.85rem;font-weight:400}.nav-link:hover,.nav-link.active{color:var(--text-main)}.nav-actions{align-items:center;gap:1.5rem;display:flex}.mobile-menu-toggle{cursor:pointer;flex-direction:column;justify-content:space-between;width:24px;height:18px;display:none}.mobile-menu-toggle span{background-color:var(--text-main);width:100%;height:2px;transition:var(--transition-fast);display:block}.mobile-drawer{background-color:var(--bg-secondary);z-index:99;width:75%;max-width:320px;height:100%;padding:6rem 2rem 2rem;transition:all .5s cubic-bezier(.77,.2,.05,1);position:fixed;top:0;right:-100%;box-shadow:-5px 0 30px #2c2a270d}.mobile-drawer.open{right:0}.mobile-nav-links{flex-direction:column;gap:2rem;display:flex}.mobile-nav-link{letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-size:1.1rem;font-weight:400}.mobile-nav-link:hover{color:var(--text-main)}@media (width<=992px){.nav-links,.navbar .btn{display:none}.mobile-menu-toggle{display:flex}.mobile-drawer .btn{margin-top:1rem;display:flex}}.hero-section{flex-direction:column;justify-content:center;height:100vh;min-height:650px;display:flex;position:relative;overflow:hidden}.hero-slider{z-index:1;width:100%;height:100%;position:absolute;top:0;left:0}.slide{opacity:0;z-index:1;align-items:center;width:100%;height:100%;padding:0 4rem;transition:opacity 1.2s ease-in-out;display:flex;position:absolute;top:0;left:0}.slide.active{opacity:1;z-index:2}.slide-bg{background-position:50%;background-size:cover;width:100%;height:100%;transition:transform 8s ease-out;position:absolute;top:0;left:0;transform:scale(1.05)}.slide.active .slide-bg{transform:scale(1)}.slide-content{z-index:3;text-align:center;max-width:650px;margin-top:4rem;margin-left:auto;margin-right:auto;position:relative}.slide-subtitle{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.25em;color:var(--accent);opacity:0;margin-bottom:1rem;font-size:.9rem;font-weight:600;transition:all .8s .3s;display:inline-block;transform:translateY(20px)}.slide-title{font-family:var(--font-heading);color:var(--text-main);opacity:0;margin-bottom:1.5rem;font-size:4.5rem;font-weight:400;line-height:1.1;transition:all .8s .5s;transform:translateY(30px)}.slide-desc{color:var(--text-muted);opacity:0;margin-bottom:2.5rem;font-size:1.15rem;font-weight:400;line-height:1.6;transition:all .8s .7s;transform:translateY(30px)}.slide-actions{opacity:0;justify-content:center;gap:1.2rem;transition:all .8s .9s;display:flex;transform:translateY(30px)}.slide.active .slide-subtitle,.slide.active .slide-title,.slide.active .slide-desc,.slide.active .slide-actions{opacity:1;transform:translateY(0)}@media (width<=768px){.slide{padding:0 1.5rem}.slide-title{font-size:2.8rem}.slide-desc{font-size:1rem}.slide-actions{flex-direction:column;gap:.8rem}}.slider-controls{z-index:5;align-items:center;gap:2rem;display:flex;position:absolute;bottom:2.5rem;left:50%;transform:translate(-50%)}.slider-btn{color:var(--text-main);cursor:pointer;width:45px;height:45px;transition:var(--transition-fast);background:0 0;border:1px solid #2c2a2726;border-radius:50%;justify-content:center;align-items:center;display:flex}.slider-btn:hover{background-color:var(--text-main);color:var(--bg-primary);border-color:var(--text-main)}.slider-dots{gap:.8rem;display:flex}.dot{cursor:pointer;width:8px;height:8px;transition:var(--transition-fast);background-color:#2c2a2733;border-radius:50%}.dot.active{background-color:var(--accent);transform:scale(1.3)}.hero-stats{z-index:5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--border-color);background-color:#fffc;border-radius:4px;gap:3rem;padding:1rem 2rem;display:flex;position:absolute;bottom:2rem;left:2rem}.stat-item{flex-direction:column;display:flex}.stat-num{font-family:var(--font-heading);color:var(--accent);font-size:1.8rem;line-height:1}.stat-lbl{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-top:.25rem;font-size:.75rem}@media (width<=1024px){.hero-stats{display:none}}.about-section{padding:8rem 2rem}.about-grid{grid-template-columns:1fr 1fr;align-items:center;gap:5rem;display:grid}.about-visual{position:relative}.about-image-wrapper{border-radius:2px;position:relative;overflow:hidden;box-shadow:0 20px 40px #2c2a270d}.about-img-main{object-fit:cover;width:100%;height:520px;transition:transform 6s ease-out}.about-image-wrapper:hover .about-img-main{transform:scale(1.05)}.about-badge{background-color:var(--bg-primary);border-left:3px solid var(--accent);flex-direction:column;padding:1.2rem 1.8rem;display:flex;position:absolute;bottom:2rem;left:2rem;box-shadow:0 10px 25px #2c2a270d}.badge-title{font-family:var(--font-body);color:var(--accent);letter-spacing:.05em;font-size:.9rem;font-weight:600}.badge-desc{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-top:.2rem;font-size:.75rem}.about-text{flex-direction:column;display:flex}.about-description{color:var(--text-muted);margin-bottom:1.5rem;font-size:1.05rem;font-weight:300;line-height:1.7}.about-quote{font-family:var(--font-heading);color:var(--accent);border-left:2px solid var(--accent);margin-top:2rem;padding-left:1.5rem;font-size:2rem;font-style:italic;font-weight:300}.about-quote cite{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin-top:.5rem;font-size:.8rem;font-style:normal;display:block}@media (width<=992px){.about-grid{grid-template-columns:1fr;gap:3.5rem}.about-img-main{height:380px}}.portfolio-section{padding:8rem 0}.portfolio-header{justify-content:space-between;align-items:flex-end;margin-bottom:4rem;padding:0 2rem;display:flex}.portfolio-filters{gap:1rem;display:flex}.filter-btn{border:1px solid var(--border-color);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:var(--transition-fast);background:0 0;padding:.6rem 1.4rem;font-size:.8rem;font-weight:500}.filter-btn:hover,.filter-btn.active{color:var(--text-inverse);background-color:var(--accent);border-color:var(--accent)}@media (width<=768px){.portfolio-header{flex-direction:column;align-items:flex-start;gap:1.5rem}.portfolio-filters{width:100%;padding-bottom:.5rem;overflow-x:auto}}.portfolio-grid{grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:2rem;padding:0 2rem;display:grid}.portfolio-item{transition:var(--transition-smooth);border-radius:2px;position:relative;overflow:hidden;box-shadow:0 10px 30px #2c2a2708}.portfolio-item.hidden{opacity:0;display:none}.portfolio-img-wrapper{height:280px;position:relative;overflow:hidden}.portfolio-item img{object-fit:cover;width:100%;height:100%;transition:transform .6s cubic-bezier(.25,.46,.45,.94)}.portfolio-item:hover img{transform:scale(1.08)}.portfolio-overlay{opacity:0;width:100%;height:100%;transition:var(--transition-smooth);z-index:2;background:linear-gradient(#faf9f6a6 0%,#faf9f6fa 90%);flex-direction:column;justify-content:flex-end;padding:2.2rem;display:flex;position:absolute;top:0;left:0}.portfolio-item:hover .portfolio-overlay{opacity:1}.project-category{text-transform:uppercase;color:var(--accent);letter-spacing:.1em;margin-bottom:.5rem;font-size:.75rem;font-weight:600}.project-title{font-family:var(--font-heading);color:var(--text-main);margin-bottom:1rem;font-size:1.8rem;font-weight:400;line-height:1.2}.project-link{text-transform:uppercase;letter-spacing:.08em;color:var(--accent);align-items:center;gap:.5rem;margin-top:.5rem;font-size:.8rem;font-weight:600;display:inline-flex}.project-link svg{transition:transform .3s}.project-link:hover svg{transform:translate(5px)}@media (width<=480px){.portfolio-grid{grid-template-columns:1fr}}.process-section{padding:8rem 2rem}.process-steps{grid-template-columns:repeat(4,1fr);gap:2rem;margin-top:5rem;display:grid;position:relative}.process-steps:before{content:"";background:var(--border-color);z-index:1;width:75%;height:1px;position:absolute;top:2rem;left:12.5%}.process-card{background-color:var(--bg-card);border:1px solid var(--border-color);text-align:center;z-index:2;transition:var(--transition-smooth);border-radius:4px;padding:2.5rem 2rem;position:relative;box-shadow:0 10px 30px #2c2a2705}.process-card:hover{border-color:#b8976c4d;transform:translateY(-8px);box-shadow:0 15px 35px #2c2a270f}.step-num{font-family:var(--font-heading);color:var(--accent);background-color:var(--bg-secondary);border:1px solid #b8976c1a;border-radius:50%;justify-content:center;align-items:center;width:4rem;height:4rem;margin:0 auto 2rem;font-size:1.5rem;display:flex;box-shadow:inset 0 0 10px #b8976c0d}.step-title{font-family:var(--font-body);margin-bottom:1rem;font-size:1.1rem;font-weight:500}.step-desc{color:var(--text-muted);font-size:.85rem;line-height:1.6}@media (width<=992px){.process-steps{grid-template-columns:repeat(2,1fr);gap:3rem}.process-steps:before{display:none}}@media (width<=576px){.process-steps{grid-template-columns:1fr}}.quiz-section{padding:8rem 2rem}.quiz-container{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:6px;margin-top:3.5rem;padding:4rem;box-shadow:0 20px 50px #2c2a2708}.quiz-steps-indicator{justify-content:center;gap:1.2rem;margin-bottom:3.5rem;display:flex}.step-dot{background-color:var(--bg-secondary);width:2.2rem;height:2.2rem;color:var(--text-muted);border:1px solid var(--border-color);transition:var(--transition-fast);border-radius:50%;justify-content:center;align-items:center;font-size:.85rem;font-weight:500;display:flex}.step-dot.active{background-color:var(--accent);color:var(--text-inverse);border-color:var(--accent);box-shadow:0 0 12px #b8976c4d}.step-dot.completed{color:var(--accent);border-color:var(--accent);background-color:#b8976c1a}.quiz-question-slide{opacity:0;transition:opacity .5s ease-in-out;display:none}.quiz-question-slide.active{opacity:1;display:block}.question-title{font-family:var(--font-heading);text-align:center;color:var(--text-main);margin-bottom:3rem;font-size:2.2rem;font-weight:400}.quiz-options{grid-template-columns:repeat(3,1fr);gap:2rem;display:grid}.quiz-option{background-color:var(--bg-secondary);border:1px solid var(--border-color);text-align:center;cursor:pointer;transition:var(--transition-smooth);border-radius:4px;padding:2rem 1.5rem}.quiz-option:hover{border-color:var(--accent);transform:translateY(-5px);box-shadow:0 10px 25px #2c2a270a}.quiz-option.selected{border-color:var(--accent);background-color:#b8976c0d;box-shadow:0 0 20px #b8976c1a}.option-preview{border-radius:3px;width:100%;height:120px;margin-bottom:1.5rem}.option-preview-img{background-position:50%;background-size:cover;border-radius:3px;width:100%;height:120px;margin-bottom:1.5rem}.option-title{color:var(--text-main);margin-bottom:.5rem;font-size:1rem;font-weight:500;display:block}.option-desc{color:var(--text-muted);font-size:.8rem;line-height:1.4}.quiz-navigation{border-top:1px solid var(--border-color);justify-content:space-between;margin-top:4rem;padding-top:2rem;display:flex}.quiz-results{grid-template-columns:1.2fr 1fr;align-items:center;gap:4rem;animation:.8s ease-in-out forwards fadeIn;display:none}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.results-visual{border-radius:4px;height:350px;overflow:hidden;box-shadow:0 15px 35px #2c2a270d}.results-visual img{object-fit:cover;width:100%;height:100%}.results-info{flex-direction:column;display:flex}.results-tag{text-transform:uppercase;letter-spacing:.1em;color:var(--accent);margin-bottom:.5rem;font-size:.8rem}.results-style-name{font-family:var(--font-heading);color:var(--text-main);margin-bottom:1.5rem;font-size:3rem;font-weight:400;line-height:1.15}.results-desc{color:var(--text-muted);margin-bottom:2.5rem;font-size:1rem;font-weight:300;line-height:1.7}.results-cta{align-items:center;gap:2rem;display:flex}@media (width<=992px){.quiz-container{padding:2.5rem 1.5rem}.quiz-options{grid-template-columns:1fr;gap:1.2rem}.quiz-results{grid-template-columns:1fr;gap:2.5rem}.results-visual{height:260px}}.testimonials-section{padding:8rem 2rem}.testimonials-wrapper{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:4px;max-width:760px;margin:4.5rem auto 0;padding:4rem;position:relative;box-shadow:0 15px 35px #2c2a2708}.testimonial-carousel{min-height:200px;position:relative}.testimonial-slide{opacity:0;z-index:1;visibility:hidden;width:100%;transition:opacity .6s ease-in-out,visibility .6s;position:absolute;top:0;left:0}.testimonial-slide.active{opacity:1;z-index:2;visibility:visible;position:relative}.stars{color:var(--accent);letter-spacing:2px;margin-bottom:1.5rem;font-size:1.1rem}.testimonial-text{font-family:var(--font-heading);color:var(--text-main);margin-bottom:2rem;font-size:1.7rem;font-weight:300;line-height:1.45}.client-info{flex-direction:column;display:flex}.client-name{letter-spacing:.02em;font-size:.95rem;font-weight:600}.client-project{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin-top:.2rem;font-size:.8rem}.testimonial-arrows{gap:1rem;display:flex;position:absolute;bottom:4rem;right:4rem}.testimonial-arrow{cursor:pointer;width:40px;height:40px;transition:var(--transition-fast);color:var(--text-main);border:1px solid #2c2a2726;border-radius:50%;justify-content:center;align-items:center;display:flex}.testimonial-arrow:hover{background-color:var(--accent);color:var(--text-inverse);border-color:var(--accent)}@media (width<=768px){.testimonials-wrapper{padding:2.5rem 1.5rem}.testimonial-text{font-size:1.3rem}.testimonial-arrows{justify-content:flex-end;margin-top:2rem;position:static}}.contact-section{padding:8rem 2rem}.contact-grid{max-width:var(--container-max-width);grid-template-columns:1fr 1.2fr;gap:6rem;margin:0 auto;display:grid}.contact-info{flex-direction:column;display:flex}.contact-desc{color:var(--text-muted);margin-bottom:3.5rem;font-size:1.05rem;font-weight:300;line-height:1.7}.contact-details{flex-direction:column;gap:2.2rem;display:flex}.detail-item{align-items:flex-start;gap:1.5rem;display:flex}.detail-icon{background-color:var(--bg-card);border:1px solid var(--border-color);width:3rem;height:3rem;color:var(--accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.detail-item h4{text-transform:uppercase;letter-spacing:.05em;margin-bottom:.3rem;font-size:.95rem;font-weight:500}.detail-item p{color:var(--text-muted);font-size:.9rem}.contact-form-wrapper{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:4px;padding:3.5rem;box-shadow:0 20px 40px #2c2a2705}.contact-form{flex-direction:column;gap:1.8rem;display:flex}.form-row{gap:1.5rem;display:flex}.form-group{flex-direction:column;width:100%;display:flex}.form-group label{text-transform:uppercase;letter-spacing:.1em;color:var(--accent);margin-bottom:.6rem;font-size:.75rem;font-weight:600}.form-group input,.form-group select,.form-group textarea{background-color:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-main);transition:var(--transition-fast);border-radius:2px;padding:.9rem 1.2rem;font-size:.9rem}.form-group input::placeholder,.form-group textarea::placeholder{color:#2c2a2759}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--accent);background-color:var(--bg-card);box-shadow:0 0 10px #b8976c14}.form-group select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23B8976C' stroke-width='2' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 1.2rem center;background-repeat:no-repeat;background-size:1.2rem;padding-right:3rem}.form-message{text-align:center;margin-top:.5rem;font-size:.85rem;display:none}.form-message.success{color:#4caf50;font-weight:500;display:block}.form-message.error{color:#f44336;display:block}@media (width<=992px){.contact-grid{grid-template-columns:1fr;gap:4.5rem}}@media (width<=576px){.contact-form-wrapper{padding:2rem 1.5rem}}.footer{border-top:1px solid var(--border-color);background-color:#eceae4;padding:6rem 0 3rem}.footer-grid{grid-template-columns:2fr 1fr 1.5fr;gap:5rem;margin-bottom:4.5rem;padding:0 2rem;display:grid}.footer-brand .logo-wrapper{margin-bottom:1.2rem;display:inline-flex}.brand-tagline{color:var(--text-muted);max-width:320px;font-size:.95rem;line-height:1.6}.footer-links{flex-direction:column;display:flex}.footer-links h4,.footer-newsletter h4{text-transform:uppercase;letter-spacing:.1em;color:var(--accent);margin-bottom:1.5rem;font-size:.8rem;font-weight:600}.footer-links a{color:var(--text-muted);margin-bottom:1rem;font-size:.9rem}.footer-links a:hover{color:var(--text-main);transform:translate(3px)}.footer-newsletter p{color:var(--text-muted);margin-bottom:1.5rem;font-size:.9rem}.newsletter-form{transition:var(--transition-fast);border-bottom:1px solid #2c2a2726;padding-bottom:.5rem;display:flex}.newsletter-form:focus-within{border-color:var(--accent)}.newsletter-form input{color:var(--text-main);flex-grow:1;padding:.5rem .2rem;font-size:.85rem}.newsletter-form input::placeholder{color:#2c2a2766}.newsletter-form button{background-color:var(--accent);color:var(--text-inverse);text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:var(--transition-fast);padding:.4rem 1.2rem;font-size:.75rem;font-weight:600}.newsletter-form button:hover{background-color:var(--accent-hover)}.footer-bottom{color:var(--text-muted);border-top:1px solid #2c2a270f;justify-content:space-between;align-items:center;padding:2rem 2rem 0;font-size:.8rem;display:flex}.footer-socials{gap:2rem;display:flex}.footer-socials a:hover{color:var(--accent)}.credit-link{color:var(--accent);transition:var(--transition-fast);border-bottom:1px solid #0000;font-weight:500}.credit-link:hover{color:var(--accent-hover);border-bottom-color:var(--accent-hover)}@media (width<=992px){.footer-grid{grid-template-columns:1fr;gap:3.5rem}}@media (width<=576px){.footer-bottom{text-align:center;flex-direction:column;gap:1.2rem}}.portfolio-modal{z-index:200;opacity:0;visibility:hidden;width:100%;height:100%;transition:var(--transition-smooth);justify-content:center;align-items:center;display:flex;position:fixed;top:0;left:0}.portfolio-modal.open{opacity:1;visibility:visible}.modal-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-color:#faf9f6e6;width:100%;height:100%;position:absolute;top:0;left:0}.modal-content{background-color:var(--bg-primary);border:1px solid var(--border-color);z-index:2;width:90%;max-width:1050px;transition:var(--transition-smooth);border-radius:4px;position:relative;overflow:hidden;transform:translateY(30px)scale(.95);box-shadow:0 30px 60px #2c2a2714}.portfolio-modal.open .modal-content{transform:translateY(0)scale(1)}.modal-close{cursor:pointer;color:var(--text-main);z-index:10;transition:var(--transition-fast);background:0 0;border:none;position:absolute;top:1.5rem;right:1.5rem}.modal-close:hover{color:var(--accent);transform:rotate(90deg)}.modal-body{grid-template-columns:1.2fr 1fr;min-height:500px;display:grid}.modal-visual{background-color:var(--bg-secondary);height:100%}.modal-visual img{object-fit:cover;width:100%;height:100%}.modal-info{flex-direction:column;justify-content:center;padding:3.5rem;display:flex}.modal-tag{text-transform:uppercase;letter-spacing:.1em;color:var(--accent);margin-bottom:.8rem;font-size:.75rem;display:block}.modal-title{font-family:var(--font-heading);color:var(--text-main);margin-bottom:1.5rem;font-size:2.5rem;font-weight:400;line-height:1.15}.modal-desc{color:var(--text-muted);margin-bottom:2rem;font-size:.95rem;line-height:1.6}.modal-metadata{border-top:1px solid var(--border-color);flex-direction:column;gap:.8rem;margin-bottom:2.5rem;padding-top:1.5rem;display:flex}.meta-item{color:var(--text-muted);font-size:.85rem}.meta-item strong{color:var(--text-main);width:80px;font-weight:500;display:inline-block}@media (width<=992px){.modal-body{grid-template-columns:1fr}.modal-visual{height:250px}.modal-info{padding:2.2rem}}.transformations-section{padding:8rem 0}.split-slider-wrapper{margin-top:4.5rem;padding:0 2rem}.split-slider-container{cursor:ew-resize;-webkit-user-select:none;user-select:none;border:1px solid var(--border-color);border-radius:4px;width:100%;height:600px;position:relative;overflow:hidden;box-shadow:0 25px 60px #2c2a270f}@media (width<=768px){.split-slider-container{height:380px}}.slider-image{background-position:50%;background-size:cover;width:100%;height:100%;position:absolute;top:0;left:0}.img-before{z-index:2;width:50%}.slider-handle{background-color:var(--accent);cursor:ew-resize;z-index:10;flex-direction:column;justify-content:center;align-items:center;width:2px;height:100%;display:flex;position:absolute;top:0;left:50%;transform:translate(-50%)}.handle-button{background-color:var(--accent);width:46px;height:46px;color:var(--text-inverse);border:3px solid var(--bg-primary);border-radius:50%;justify-content:center;align-items:center;transition:transform .2s;display:flex;box-shadow:0 4px 15px #00000026}.slider-handle:hover .handle-button{transform:scale(1.1)}.handle-line{background-color:var(--accent);flex-grow:1;width:2px}.reveal{opacity:0;transition:opacity .9s cubic-bezier(.25,.46,.45,.94),transform .9s cubic-bezier(.25,.46,.45,.94);transform:translateY(40px)}.reveal.revealed{opacity:1;transform:translateY(0)}.reveal-stagger{opacity:0;transition:opacity .6s cubic-bezier(.25,.46,.45,.94),transform .6s cubic-bezier(.25,.46,.45,.94);transform:translateY(20px)}.reveal-stagger.revealed{opacity:1;transform:translateY(0)}.modal-slider-wrapper{flex-direction:column;width:100%;height:450px;display:flex;position:relative}.modal-slider{width:100%;height:100%;position:relative;overflow:hidden}.modal-slider img{object-fit:cover;width:100%;height:100%;transition:opacity .3s ease-in-out}.modal-slider img.fade-out{opacity:0}.modal-slider-btn{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid var(--border-color);color:var(--text-main);cursor:pointer;z-index:5;width:38px;height:38px;transition:var(--transition-fast);background-color:#faf9f6d9;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.modal-slider-btn:hover{background-color:var(--accent);color:var(--text-inverse);border-color:var(--accent)}.modal-slider-btn.prev{left:1rem}.modal-slider-btn.next{right:1rem}.modal-slider-dots{z-index:5;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#faf9f6cc;border-radius:10px;gap:.5rem;padding:.3rem .6rem;display:flex;position:absolute;bottom:1rem;left:50%;transform:translate(-50%)}.modal-slider-dot{cursor:pointer;width:6px;height:6px;transition:var(--transition-fast);background-color:#2c2a2733;border-radius:50%}.modal-slider-dot.active{background-color:var(--accent);transform:scale(1.3)}@media (width<=992px){.modal-slider-wrapper{height:300px}}.blueprint-reveal-section{background-color:var(--bg-primary);height:250vh;position:relative}.blueprint-reveal-section .sticky-container{justify-content:center;align-items:center;width:100%;height:100vh;display:flex;position:sticky;top:0;overflow:hidden}.reveal-content-wrapper{flex-direction:column;justify-content:space-between;width:100%;height:100vh;padding:8rem 0 4rem;display:flex;position:relative}.reveal-text-overlay{text-align:center;z-index:10;background:linear-gradient(to bottom, var(--bg-primary) 60%, transparent);pointer-events:none;padding:0 2rem}.reveal-images-container{z-index:1;width:100%;height:100vh;position:absolute;top:0;left:0}.reveal-bg-sketch,.reveal-fg-render{width:100%;height:100%;position:absolute;top:0;left:0}.reveal-bg-sketch img,.reveal-fg-render img{object-fit:cover;width:100%;height:100%}.reveal-bg-sketch img{filter:sepia(.35)brightness(1.02)contrast(.9)grayscale(20%)}.reveal-fg-render{width:0%;transition:width 80ms ease-out;overflow:hidden}.reveal-fg-render img{width:100vw;max-width:none}.reveal-scroll-divider{background-color:var(--accent);z-index:5;pointer-events:none;width:2px;height:100%;transition:left 80ms ease-out;position:absolute;top:0;left:0%;transform:translate(-50%)}.divider-line-glow{width:100%;height:100%;box-shadow:0 0 10px var(--accent-faint)}.reveal-scroll-divider .divider-tag{border:1px solid var(--accent);color:var(--text-main);font-family:var(--font-accent);letter-spacing:.15em;text-transform:uppercase;box-shadow:var(--shadow-sm);white-space:nowrap;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#faf9f6e6;border-radius:4px;padding:.4rem .8rem;font-size:.72rem;position:absolute;top:50%;transform:translateY(-50%)}.reveal-scroll-divider .tag-left{right:15px}.reveal-scroll-divider .tag-right{left:15px}.lighting-toggle-widget{z-index:100;-webkit-backdrop-filter:blur(12px);background:#faf9f6b3;border:1px solid #d4af3733;border-radius:30px;padding:.3rem;display:flex;position:absolute;bottom:30px;right:40px;box-shadow:0 8px 32px #2c2a2714}.lighting-toggle-btn{color:var(--text-muted);font-family:var(--font-accent);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background:0 0;border:none;border-radius:20px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.7rem;transition:all .3s;display:flex}.lighting-toggle-btn.active{background:var(--text-main);color:var(--bg-primary);box-shadow:0 4px 12px #2c2a2726}.modal-lighting-control{border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;margin:1.5rem 0 1rem;padding:.8rem 0;display:flex}.modal-lighting-control .control-label{font-family:var(--font-accent);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-size:.75rem}.modal-lighting-control .control-switch{background:#2c2a270d;border-radius:20px;padding:.2rem;display:flex}.modal-lighting-btn{color:var(--text-muted);font-family:var(--font-accent);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background:0 0;border:none;border-radius:15px;padding:.4rem .8rem;font-size:.65rem;transition:all .3s}.modal-lighting-btn.active{background:var(--text-main);color:var(--bg-primary)}.slide-bg,.modal-slider img{transition:filter .8s cubic-bezier(.25,.46,.45,.94),background .8s}.ambient-evening .slide-bg{filter:brightness(.45)sepia(.35)contrast(1.15)saturate(1.1)}.ambient-evening .modal-slider img{filter:brightness(.5)sepia(.35)contrast(1.15)saturate(1.1)}.slide:after,.modal-slider-wrapper:after{content:"";pointer-events:none;opacity:0;z-index:2;width:100%;height:100%;transition:opacity .8s;position:absolute;top:0;left:0}.slide:after{background:radial-gradient(circle at 75% 70%,#d4af3740 0%,#0000 50%),radial-gradient(circle at 20% 30%,#d4af3726 0%,#0000 40%)}.modal-slider-wrapper:after{background:radial-gradient(circle,#d4af3738 0%,#0000 60%)}.ambient-evening .slide:after,.ambient-evening.portfolio-modal .modal-slider-wrapper:after{opacity:1}.map-section{padding:6rem 0}.map-header{margin-bottom:3rem}.map-container{background:var(--bg-primary);box-shadow:var(--shadow-md);border:1px solid #d4af3726;border-radius:12px;padding:1.5rem;position:relative;overflow:hidden}.pune-svg-map{width:100%;height:auto;max-height:500px;display:block}.map-region-path{fill:#faf9f699;stroke:#d4af3740;stroke-width:1.5px;cursor:pointer;transition:all .4s}.map-region-path:hover{fill:#d4af370d;stroke:var(--accent)}.map-region-label{font-family:var(--font-accent);letter-spacing:.12em;fill:var(--text-muted);pointer-events:none;text-anchor:middle;font-size:9px;font-weight:500}.map-hotspot{cursor:pointer}.hotspot-pulse{fill:none;stroke:var(--accent);stroke-width:2.5px;transform-origin:50%;animation:2.2s infinite pulse-gold}.hotspot-core{fill:var(--accent);transition:transform .3s,fill .3s}.map-hotspot:hover .hotspot-core{fill:var(--text-main);transform:scale(1.4)}@keyframes pulse-gold{0%{r:4px;opacity:1}to{r:20px;opacity:0}}.map-tooltip{border:1px solid var(--accent);z-index:10;opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#faf9f6f5;border-radius:8px;flex-direction:column;width:280px;transition:opacity .3s,transform .3s;display:flex;position:absolute;top:0;left:0;overflow:hidden;transform:translate(-50%,-105%);box-shadow:0 10px 30px #2c2a271f}.map-tooltip.active{opacity:1;pointer-events:auto}.tooltip-img{background-position:50%;background-size:cover;border-bottom:1px solid #d4af3726;width:100%;height:120px}.tooltip-info{padding:1rem}.tooltip-loc{font-family:var(--font-accent);letter-spacing:.15em;text-transform:uppercase;color:var(--accent);margin-bottom:.2rem;font-size:.65rem;display:block}.tooltip-title{font-family:var(--font-main);color:var(--text-main);margin-bottom:.4rem;font-size:.9rem;font-weight:500}.tooltip-desc{color:var(--text-muted);margin-bottom:.8rem;font-size:.75rem;line-height:1.4}.tooltip-action{font-family:var(--font-accent);letter-spacing:.1em;text-transform:uppercase;color:var(--text-main);border-bottom:1px solid var(--text-main);cursor:pointer;font-size:.65rem;display:inline-block}
