:root{--purple:#a9218e;--purple-dark:#8a1b74;--purple-light:rgba(169,33,142,.1);--gray:#717073;--gray-light:#9a999b;--charcoal:#2c2c2c;--gold:#fff;--gold-light:#f0d48a;--cream:#fffef9;--champagne:#f5e6d3}*{margin:0;padding:0;box-sizing:border-box}body,html{overflow-x:hidden;width:100%}html{scroll-behavior:smooth}body{font-family:Montserrat,sans-serif;background:var(--cream);color:var(--charcoal)}section[id]{scroll-margin-top:100px}nav{position:fixed;top:0;left:0;right:0;z-index:1000;padding:1.5rem 4rem;background:transparent;display:flex;justify-content:space-between;align-items:center;transition:all .4s ease}nav.scrolled{background:rgba(255,254,249,.97);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1rem 4rem;box-shadow:0 2px 30px rgba(169,33,142,.08)}.logo-container{display:flex;align-items:center}.logo-svg{height:52.5px;width:auto;transition:all .3s}.logo-svg path{fill:#fff;transition:fill .3s}nav.scrolled .logo-svg path{fill:#717073}nav.scrolled .logo-svg path:first-child,nav.scrolled .logo-svg path:nth-child(2){fill:#a9218e}.nav-links{display:flex;gap:2.5rem;list-style:none}.nav-links a{font-size:.805rem;font-weight:500;letter-spacing:.2em;color:#fff;text-decoration:none;position:relative;transition:color .3s}nav.scrolled .nav-links a{color:#717073}.nav-links a:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:1px;background:var(--gold);transition:width .3s}.nav-links a:hover:after{width:100%}.nav-links a:hover{color:var(--gold)}nav.scrolled .nav-links a:hover{color:var(--purple)}.menu-toggle{display:none;background:none;border:none;cursor:pointer;padding:.5rem;position:absolute;right:2rem;top:50%;transform:translateY(-50%);z-index:10}.menu-toggle span{display:block;width:24px;height:1.5px;background:#fff;margin:6px 0;transition:all .3s ease}nav.scrolled .menu-toggle span{background:#717073}.menu-toggle.open span:first-child{transform:rotate(45deg) translate(5px,5px)}.menu-toggle.open span:nth-child(2){opacity:0}.menu-toggle.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.mobile-menu{position:fixed;inset:0;background:hsla(0,0%,100%,.5);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);z-index:1500;display:flex;flex-direction:column;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .4s ease,visibility .4s ease}.mobile-menu.active{opacity:1;visibility:visible}.mobile-menu-close{position:absolute;top:calc(1.5rem + 27.5px);right:2rem;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:.5rem}.mobile-menu-close span{display:block;width:24px;height:1.5px;background:var(--charcoal)}.mobile-menu-close span:first-child{transform:rotate(45deg) translate(1px)}.mobile-menu-close span:last-child{transform:rotate(-45deg) translate(1px)}.mobile-menu-links{list-style:none;text-align:center;padding:0}.mobile-menu-links li{margin:2rem 0;opacity:0;transform:translateY(20px);transition:opacity .4s ease,transform .4s ease}.mobile-menu.active .mobile-menu-links li{opacity:1;transform:translateY(0)}.mobile-menu.active .mobile-menu-links li:first-child{transition-delay:.1s}.mobile-menu.active .mobile-menu-links li:nth-child(2){transition-delay:.15s}.mobile-menu.active .mobile-menu-links li:nth-child(3){transition-delay:.2s}.mobile-menu.active .mobile-menu-links li:nth-child(4){transition-delay:.25s}.mobile-menu.active .mobile-menu-links li:nth-child(5){transition-delay:.3s}.mobile-menu-links a{font-family:Cormorant Garamond,serif;font-size:2rem;font-weight:300;color:var(--charcoal);text-decoration:none;letter-spacing:.1em;transition:color .3s}.mobile-menu-links a:hover{color:var(--purple)}.mobile-menu-logo{width:58px;height:auto;margin-bottom:40px}.hero{height:100vh;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.hero:before{content:"";position:absolute;top:0;left:0;right:0;height:200px;background:linear-gradient(180deg,rgba(0,0,0,.6) 0,rgba(0,0,0,.3) 50%,transparent);z-index:5;pointer-events:none}.hero-slide,.hero-slider{position:absolute;inset:0}.hero-slide{opacity:0;transition:opacity 1.5s ease;background-size:cover;background-position:50%}.hero-slide.active{opacity:1}.hero-slide:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(169,33,142,.55),hsla(260,1%,45%,.6) 50%,rgba(44,44,44,.7))}.hero-content{position:relative;z-index:10;text-align:center;color:#fff;padding:2rem}.hero-logo{height:50px;width:auto;margin-bottom:2rem}.hero-logo path{fill:#fff}.hero-content h1{font-family:Cormorant Garamond,serif;font-size:clamp(2.5rem,6vw,5rem);font-weight:300;letter-spacing:.05em;margin-bottom:1rem;line-height:1.2}.hero-content h1 span{display:block;font-style:italic;font-weight:300}.hero-locations{font-size:.8625rem;letter-spacing:.35em;font-weight:400;margin-top:2rem;opacity:.9}.scroll-indicator{position:absolute;bottom:3rem;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:.5rem;color:#fff;font-size:.7475rem;letter-spacing:.2em;animation:float 2s ease-in-out infinite}.scroll-indicator .line{width:1px;height:40px;background:linear-gradient(180deg,#fff,transparent)}@keyframes float{0%,to{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(10px)}}.parallax-banner{height:60vh;position:relative;overflow:hidden}.parallax-banner:before{top:20px;left:0;background:linear-gradient(90deg,hsla(0,0%,100%,.7),hsla(0,0%,100%,0)) no-repeat 0 0 /100% 1px,linear-gradient(90deg,hsla(0,0%,100%,.5),hsla(0,0%,100%,0)) no-repeat left 8px /92% 1px}.parallax-banner:after,.parallax-banner:before{content:"";position:absolute;width:95%;height:20px;z-index:10}.parallax-banner:after{bottom:20px;right:0;background:linear-gradient(270deg,hsla(0,0%,100%,.7),hsla(0,0%,100%,0)) no-repeat 100% 100% /100% 1px,linear-gradient(270deg,hsla(0,0%,100%,.5),hsla(0,0%,100%,0)) no-repeat right calc(100% - 8px) /92% 1px}.parallax-bg{position:absolute;top:-20%;left:0;right:0;height:140%;background-size:cover;background-position:50%;will-change:transform}.parallax-overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(169,33,142,.5),hsla(260,1%,45%,.6))}.parallax-text{position:absolute;inset:0;color:#fff;font-family:Cormorant Garamond,serif;font-size:clamp(1.5rem,3vw,2.5rem);font-style:italic;text-align:center;padding:2rem;letter-spacing:.05em}.parallax-text,.quote-banner{display:flex;align-items:center;justify-content:center}.quote-banner{padding:6rem 4rem;background:linear-gradient(135deg,rgba(169,33,142,.9),hsla(260,1%,45%,.85) 50%,rgba(44,44,44,.95));position:relative;overflow:hidden}.quote-banner:before{top:20px;left:0;background:linear-gradient(90deg,hsla(0,0%,100%,.7),hsla(0,0%,100%,0)) no-repeat 0 0 /100% 1px,linear-gradient(90deg,hsla(0,0%,100%,.5),hsla(0,0%,100%,0)) no-repeat left 8px /92% 1px}.quote-banner:after,.quote-banner:before{content:"";position:absolute;width:95%;height:20px}.quote-banner:after{bottom:20px;right:0;background:linear-gradient(270deg,hsla(0,0%,100%,.7),hsla(0,0%,100%,0)) no-repeat 100% 100% /100% 1px,linear-gradient(270deg,hsla(0,0%,100%,.5),hsla(0,0%,100%,0)) no-repeat right calc(100% - 8px) /92% 1px}.quote-text{color:#fff;font-family:Cormorant Garamond,serif;font-size:clamp(1.5rem,3vw,2.5rem);font-style:italic;text-align:center;max-width:900px;letter-spacing:.05em;line-height:1.6}.about{padding:8rem 4rem;max-width:1400px;margin:0 auto}.about-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:6rem;gap:6rem;align-items:start}.about-image{position:relative}.about-image img{width:100%;height:600px;object-fit:cover}.about-image:before{content:"";position:absolute;top:-20px;left:-20px;width:100%;height:100%;border:1px solid var(--gold);z-index:-1}.about-image:after{content:"";position:absolute;bottom:-20px;right:-20px;width:60%;height:60%;background:var(--purple-light);z-index:-2}.about-content h2{font-size:.98rem;letter-spacing:.3em;color:var(--purple);margin-bottom:1rem;font-weight:500}.about-content h2,.about-content h3{font-family:Cormorant Garamond,serif}.about-content h3{font-size:clamp(2rem,4vw,3rem);font-weight:300;margin-bottom:2rem;line-height:1.3;color:var(--charcoal)}.about-content p{font-size:1.09rem;line-height:1.9;color:var(--gray);margin-bottom:1.5rem;font-weight:300}.services{padding:8rem 4rem;color:#fff;position:relative;overflow:hidden}.services-bg{position:absolute;inset:0;background:linear-gradient(135deg,rgba(169,33,142,.9),rgba(156,45,138,.88) 10%,rgba(143,57,134,.87) 20%,rgba(130,69,130,.86) 30%,rgba(121,78,125,.85) 40%,hsla(260,1%,45%,.85) 50%,rgba(98,98,100,.87) 60%,rgba(83,83,86,.89) 70%,rgba(68,68,70,.91) 80%,rgba(56,56,58,.93) 90%,rgba(44,44,44,.95))}.services-inner{max-width:1200px;margin:0 auto;text-align:center;position:relative;z-index:1}.services h2{font-size:.98rem;letter-spacing:.3em;color:#e8d0e6;margin-bottom:1rem}.services h2,.services h3{font-family:Cormorant Garamond,serif}.services h3{font-size:clamp(2rem,4vw,3rem);font-weight:300;margin-bottom:2rem}.services-intro{max-width:700px;margin:0 auto 4rem;font-size:1.15rem;line-height:1.8;opacity:.95;font-weight:300}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1.5rem 2rem;gap:1.5rem 2rem;margin-bottom:4rem;max-width:1100px;margin-left:auto;margin-right:auto}.service-item{padding:1rem;border-bottom:1px solid #e8d0e6;background:transparent}.service-item h4{font-family:Montserrat,sans-serif;font-size:1.05rem;font-weight:400;letter-spacing:.15em;text-transform:uppercase}.scope-toggle{margin-top:3rem}.scope-btn{background:transparent;border:1px solid var(--gold);color:#fff;padding:1rem 2.5rem;font-size:.805rem;letter-spacing:.2em;cursor:pointer;transition:all .3s;font-family:Montserrat,sans-serif;display:inline-flex;align-items:center;gap:.75rem}.scope-caret{transition:transform .3s ease}.scope-btn.open .scope-caret{transform:rotate(180deg)}.scope-btn:hover{background:var(--gold);color:var(--charcoal)}.scope-content{max-height:0;overflow:hidden;transition:max-height .5s ease,padding .5s ease;text-align:left;max-width:800px;margin:0 auto}.scope-content.open{max-height:600px;padding-top:3rem}.scope-content h4{font-family:Cormorant Garamond,serif;font-size:1.725rem;margin-bottom:1.5rem;font-weight:400}.scope-list{column-count:2;column-gap:3rem;list-style:none}.scope-list li{padding:.75rem 0;border-bottom:1px solid hsla(0,0%,100%,.15);font-size:1.035rem;font-weight:300}.scope-note{margin-top:2rem;font-style:italic;font-size:1.035rem;color:#e8d0e6}.portfolio{padding:8rem 4rem}.portfolio-header{text-align:center;margin-bottom:4rem}.portfolio-header h2{font-family:Cormorant Garamond,serif;font-size:.98rem;letter-spacing:.3em;color:var(--purple);margin-bottom:1rem}.portfolio-header h3{font-family:Cormorant Garamond,serif;font-size:clamp(2rem,4vw,3rem);font-weight:300}.portfolio-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem;max-width:1400px;margin:0 auto}.portfolio-item{position:relative;width:calc(33.333% - 1rem);aspect-ratio:4/5;overflow:hidden;cursor:pointer}.portfolio-item img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.portfolio-item:hover img{transform:scale(1.05)}.portfolio-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.85) 0,transparent 60%);display:flex;flex-direction:column;justify-content:flex-end;padding:2rem;opacity:0;transition:opacity .4s}.portfolio-item:hover .portfolio-overlay{opacity:1}.portfolio-overlay h4{font-family:Cormorant Garamond,serif;font-size:1.5rem;color:#fff;font-weight:400}.portfolio-overlay p{color:hsla(0,0%,100%,.85);font-size:.92rem;margin-top:.5rem}.press{background:var(--champagne);padding:6rem 4rem}.press-inner{max-width:1200px;margin:0 auto;text-align:center}.press h2{font-family:Cormorant Garamond,serif;font-size:.98rem;letter-spacing:.3em;color:var(--gray);margin-bottom:3rem}.press-logos{flex-wrap:wrap;gap:3rem 4rem}.press-logo,.press-logos{display:flex;justify-content:center;align-items:center}.press-logo{opacity:.75;transition:all .3s;text-decoration:none;background:none;border:none;cursor:pointer;padding:.5rem}.press-logo:hover{opacity:1;transform:scale(1.05)}.press-logo img{height:28px;width:auto}.press-logo.brides img,.press-logo.carats-cake img,.press-logo.house-beautiful img,.press-logo.inside-weddings img,.press-logo.nyt img,.press-logo.over-the-moon img,.press-logo.partyslate img,.press-logo.people img,.press-logo.town-country img,.press-logo.wezoree img{height:28px}.press-modal{position:fixed;inset:0;background:rgba(0,0,0,.3);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:2000;display:none;align-items:center;justify-content:center;padding:2rem;opacity:0;transition:opacity .3s ease}.press-modal.active{display:flex;opacity:1}.press-modal-content{background:hsla(0,0%,100%,.75);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid hsla(0,0%,100%,.8);border-radius:20px;box-shadow:0 8px 32px rgba(0,0,0,.1),inset 0 0 0 1px hsla(0,0%,100%,.3);max-width:660px;width:100%;max-height:80vh;overflow-y:auto;position:relative}.press-modal-header{padding:2.5rem 2.5rem 2rem;text-align:center;border-bottom:1px solid hsla(0,0%,100%,.5)}.press-modal-logo{margin-bottom:.75rem}.press-modal-logo img{height:31px;width:auto}.press-modal-header p{font-size:.96rem;color:var(--gray);font-weight:400;letter-spacing:.05em}.press-modal-close{position:absolute;top:1.25rem;right:1.25rem;background:hsla(0,0%,100%,.5);border:1px solid hsla(0,0%,100%,.6);border-radius:50%;width:32px;height:32px;cursor:pointer;color:var(--gray);transition:all .3s;display:flex;align-items:center;justify-content:center}.press-modal-close:hover{background:hsla(0,0%,100%,.8);color:var(--charcoal)}.press-articles{padding:1.5rem 2rem 2rem}.press-article{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.25rem 1.5rem;border:1px solid hsla(0,0%,100%,.6);border-radius:12px;margin-bottom:.75rem;text-decoration:none;transition:all .3s;background:hsla(0,0%,100%,.4)}.press-article:last-child{margin-bottom:0}.press-article:hover{background:hsla(0,0%,100%,.7);border-color:rgba(169,33,142,.3);transform:translateX(4px)}.press-article-title{font-family:Cormorant Garamond,serif;font-size:1.5rem;font-style:italic;color:var(--charcoal);font-weight:400;line-height:1.5;flex:1 1}.press-article-arrow{flex-shrink:0;width:20px;height:20px;stroke:var(--gray);transition:all .3s}.press-article:hover .press-article-arrow{stroke:var(--purple);transform:translateX(4px)}@media (max-width:768px){.press-modal-content{margin:1rem;max-height:90vh;border-radius:16px}.press-modal-header{padding:2rem 1.5rem 1.5rem}.press-modal-logo img{height:auto;max-width:80%;max-height:28px}.press-articles{padding:1rem 1.5rem 1.5rem}.press-article-title{font-size:1.3rem}}.contact-wrapper{background:#fff;box-shadow:inset 0 -200px 200px -100px rgba(169,33,142,.15)}.contact{position:relative;padding:8rem 4rem;max-width:1000px;margin:0 auto}.contact-header{text-align:center;margin-bottom:4rem}.contact-header h2{font-family:Cormorant Garamond,serif;font-size:clamp(2rem,4vw,3rem);font-weight:300;margin-bottom:1rem}.contact-header p{font-size:1.15rem;color:var(--gray);font-weight:300}.contact-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:4rem;gap:4rem}.contact-info h3{font-family:Cormorant Garamond,serif;font-size:1.5rem;margin-bottom:2rem;font-weight:400}.contact-item{margin-bottom:1.5rem}.contact-item label{display:block;font-size:.805rem;letter-spacing:.2em;color:var(--purple);margin-bottom:.5rem}.contact-item a,.contact-item span{color:var(--charcoal);text-decoration:none;font-size:1.09rem}.contact-item a:hover{color:var(--purple)}.contact-form input,.contact-form select,.contact-form textarea{width:100%;max-width:100%;box-sizing:border-box;padding:1rem;border:1px solid #ddd;background:#fff;font-family:Montserrat,sans-serif;font-size:1.035rem;margin-bottom:1rem;transition:border-color .3s}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:none;border-color:var(--purple)}.contact-form textarea{min-height:120px;resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}.submit-btn{width:100%;padding:1.2rem;background:var(--purple);color:#fff;border:none;font-size:.8625rem;letter-spacing:.2em;cursor:pointer;transition:background .3s;font-family:Montserrat,sans-serif}.submit-btn:hover{background:#7b1768}footer{background:var(--gray);color:#fff;padding:4rem;text-align:center}.footer-logo{width:160px;height:auto;margin-bottom:2rem}.footer-links{display:flex;justify-content:center;gap:2rem;margin-bottom:2rem}.footer-links a{color:#fff;text-decoration:none;font-size:.805rem;letter-spacing:.15em;opacity:.8;transition:all .3s}.footer-links a:hover{opacity:1;color:var(--gold)}.footer-copy{font-size:.8625rem;opacity:.6}.lightbox{position:fixed;inset:0;background:hsla(0,0%,8%,.98);z-index:2000;display:none;flex-direction:column;opacity:0;transition:opacity .4s ease}.lightbox.active{display:block;opacity:1}.lightbox-header{position:absolute;top:0;left:0;right:0;padding:3rem 4rem 8rem;text-align:center;color:#fff;z-index:10;background:linear-gradient(180deg,rgba(0,0,0,.8) 0,rgba(0,0,0,.6) 40%,rgba(0,0,0,.3) 70%,transparent)}.lightbox-header h3{font-family:Cormorant Garamond,serif;font-size:clamp(1.8rem,4vw,2.5rem);font-weight:300;margin-bottom:.5rem;letter-spacing:.05em}.lightbox-header p{font-size:1rem;opacity:.7;font-weight:300}.lightbox-close{position:absolute;top:2rem;right:2rem;color:#fff;font-size:1.5rem;cursor:pointer;background:none;border:none;transition:all .3s;width:50px;height:50px;display:flex;align-items:center;justify-content:center;border-radius:50%;z-index:20}.lightbox-close:hover{color:var(--gold);background:hsla(0,0%,100%,.1)}.lightbox-main{position:absolute;inset:0;overflow:hidden}.lightbox-main-image{width:100%;height:100%;object-fit:cover;transition:opacity 2s ease}.lightbox-arrow{position:absolute;top:50%;transform:translateY(-50%);background:rgba(0,0,0,.4);border:1px solid hsla(0,0%,100%,.3);color:#fff;width:60px;height:60px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s;font-size:1.5rem;z-index:10}.lightbox-arrow:hover{background:var(--purple);border-color:var(--purple)}.lightbox-arrow.prev{left:2rem}.lightbox-arrow.next{right:2rem}.lightbox-progress-container{position:absolute;bottom:0;left:0;right:0;height:3px;background:hsla(0,0%,100%,.2)}.lightbox-progress-bar{height:100%;background:linear-gradient(90deg,var(--purple),var(--gold));width:0;animation:progressFill 4s linear forwards}@keyframes progressFill{0%{width:0}to{width:100%}}@media (max-width:768px){.lightbox-progress-bar{animation-duration:9s}}.lightbox-footer{position:absolute;bottom:0;left:0;right:0;padding:4rem 2rem 2rem;z-index:10;background:linear-gradient(0deg,rgba(0,0,0,.7) 0,rgba(0,0,0,.4) 60%,transparent)}.lightbox-event-nav{display:flex;align-items:center;justify-content:space-between;gap:1rem}.lightbox-event-btn{display:flex;align-items:center;gap:.5rem;background:none;border:none;color:#fff;cursor:pointer;font-family:Montserrat,sans-serif;font-size:.75rem;letter-spacing:.1em;opacity:.7;transition:all .3s;padding:.5rem;white-space:nowrap;min-width:150px}.lightbox-event-btn.prev{justify-content:flex-start}.lightbox-event-btn.next{justify-content:flex-end}.lightbox-event-btn:hover{opacity:1;color:var(--gold)}.lightbox-event-btn span{max-width:120px;overflow:hidden;text-overflow:ellipsis}.lightbox-thumbs{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap;flex:1 1;max-width:1000px}.lightbox-thumb{width:70px;height:50px;object-fit:cover;cursor:pointer;opacity:.4;transition:all .3s;border:2px solid transparent}.lightbox-thumb:hover{opacity:.8}.lightbox-thumb.active{opacity:1;border-color:var(--gold)}@keyframes panLandscape{0%{object-position:20% center}56%{object-position:80% center}89%{object-position:50% center}to{object-position:50% center}}@media (max-width:768px){.lightbox-header{padding:1.5rem 3.5rem 5rem}.lightbox-main{padding:0}.lightbox-main-image{animation:panLandscape 9s ease-in-out infinite;transition:opacity 9s ease}.lightbox-arrow{width:45px;height:45px;font-size:1.2rem}.lightbox-arrow.prev{left:.5rem}.lightbox-arrow.next{right:.5rem}.lightbox-footer{padding:2rem 1rem 1.5rem}.lightbox-event-nav{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto;grid-gap:1rem;gap:1rem}.lightbox-thumbs{grid-column:1/-1;grid-row:1;display:flex;flex-wrap:nowrap;overflow-x:auto;justify-content:center;width:calc(100% + 2rem);margin:0 -1rem;padding:.5rem 1rem;-webkit-overflow-scrolling:touch;scrollbar-width:none}.lightbox-thumbs::-webkit-scrollbar{display:none}.lightbox-thumb{width:60px;height:42px;flex-shrink:0}.lightbox-event-btn.prev{grid-column:1;grid-row:2}.lightbox-event-btn.next{grid-column:2;grid-row:2}.lightbox-event-btn span{font-size:.75rem}}@media (max-width:1024px){.about-grid{grid-template-columns:1fr;gap:3rem}.portfolio-item{width:calc(50% - .75rem)}.contact-grid{grid-template-columns:1fr}.scope-list{column-count:1}}@media (max-width:768px){nav{justify-content:center;background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;box-shadow:none!important}nav,nav.scrolled{padding:1.5rem 2rem}nav.scrolled{background:rgba(255,254,249,.97)!important;backdrop-filter:blur(10px)!important;-webkit-backdrop-filter:blur(10px)!important}.nav-links{display:none}.menu-toggle{display:block}.logo-svg{height:55px}.hero{height:100vh;min-height:100vh}.about,.contact,.portfolio,.services{padding:4rem 2rem}.services-grid{grid-template-columns:1fr;gap:1rem}.service-item{padding:1rem 1.25rem}.service-item h4{font-size:1.15rem}.services-intro{font-size:1rem;margin-bottom:2.5rem}.scope-list li{font-size:.9rem;padding:.5rem 0}.contact-grid{display:flex;flex-direction:column}.contact-form{order:1}.contact-info{order:2;margin-top:3rem}footer{padding:3rem 2rem}.footer-links{flex-direction:column;gap:0;width:100%;margin:0 0 2rem}.footer-links a{display:block;padding:1rem 0;border-bottom:1px solid hsla(0,0%,100%,.2);font-size:.9rem;letter-spacing:.2em}.footer-links a:last-child{border-bottom:none}.portfolio-item{width:100%}.form-row{grid-template-columns:1fr}nav{justify-content:flex-start!important}.logo-container{margin-right:auto}.parallax-banner{height:40vh}.portfolio-item .portfolio-overlay{opacity:1;background:linear-gradient(0deg,rgba(169,33,142,.85) 0,transparent 70%)}.portfolio-item img{transform:scale(1);transition:transform 1.5s ease-out}.portfolio-item.zoom-active img{animation:mobileZoom 3s ease-out forwards}@keyframes mobileZoom{0%{transform:scale(1)}to{transform:scale(1.08)}}}.fade-in{opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s ease}.fade-in.visible{opacity:1;transform:translateY(0)}