.nav{position:fixed;top:0;left:0;right:0;z-index:1000;padding:1.5rem 0;transition:all var(--transition-smooth)}.nav--scrolled{background:#7a1e0cf2;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:1rem 0}.nav__container{max-width:1400px;margin:0 auto;padding:0 var(--space-md);display:flex;justify-content:space-between;align-items:center}.nav__logo{font-family:var(--font-body);font-size:1rem;font-weight:300;color:var(--white);letter-spacing:.02em}.nav__toggle{display:flex;flex-direction:column;gap:6px;padding:8px;cursor:pointer;position:absolute;left:50%;transform:translate(-50%)}.nav__toggle span{width:28px;height:2px;background:var(--white);transition:all var(--transition-fast)}.nav__toggle--active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.nav__toggle--active span:nth-child(2){opacity:0}.nav__toggle--active span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.nav__cta{font-family:var(--font-body);font-size:.9rem;font-weight:300;color:var(--white);letter-spacing:.02em;transition:color var(--transition-fast)}.nav__cta:hover{color:var(--sky-blue)}.nav__menu{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--burgundy);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:var(--space-lg);opacity:0;visibility:hidden;transition:all var(--transition-smooth);z-index:999}.nav__menu--open{opacity:1;visibility:visible}.nav__menu a{font-family:var(--font-display);font-size:3rem;font-weight:300;color:var(--white);transition:color var(--transition-fast)}.nav__menu a:hover{color:var(--sky-blue)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:1rem 2.5rem;font-family:var(--font-body);font-size:.9rem;font-weight:400;letter-spacing:.05em;border-radius:var(--radius-sm);transition:all var(--transition-fast);cursor:pointer}.btn--primary{background:var(--white);color:var(--burgundy);border:none}.btn--primary:hover{background:var(--cream);transform:translateY(-2px)}.btn--outline{background:transparent;color:var(--white);border:1px solid var(--white)}.btn--outline:hover{background:var(--white);color:var(--burgundy)}.hero{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:var(--space-2xl) var(--space-md);background:var(--burgundy);position:relative}.hero__logo{font-family:var(--font-display);font-size:clamp(3rem,10vw,8rem);font-weight:300;color:var(--sky-blue);line-height:1;margin-bottom:var(--space-md);animation:fadeInUp 1s var(--transition-slow) forwards;opacity:0}.hero__subtitle{font-family:var(--font-body);font-size:clamp(1rem,2vw,1.25rem);font-weight:300;color:var(--white);letter-spacing:.1em;animation:fadeInUp 1s var(--transition-slow) .2s forwards;opacity:0}.hero__scroll{position:absolute;bottom:3rem;left:50%;transform:translate(-50%);width:48px;height:48px;display:flex;align-items:center;justify-content:center;color:var(--sky-blue);opacity:0;animation:fadeIn 1s var(--transition-slow) .6s forwards,bounce 2s ease-in-out 1.5s infinite;cursor:pointer;transition:color var(--transition-fast)}.hero__scroll:hover{color:var(--white)}.hero__scroll svg{width:32px;height:32px}@keyframes bounce{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(10px)}}.intro{min-height:100vh;position:relative;display:flex;align-items:center;overflow:hidden}.intro__image{position:absolute;top:0;left:0;right:0;bottom:0;z-index:1}.intro__image img{width:100%;height:100%;object-fit:cover}.intro__content{position:relative;z-index:2;background:var(--burgundy);padding:var(--space-xl);max-width:500px;margin:0 auto;text-align:center}.intro__title{font-family:var(--font-display);font-size:clamp(3rem,6vw,5rem);font-weight:300;color:var(--sky-blue);margin-bottom:var(--space-md);line-height:1}.intro__text{font-family:var(--font-body);font-size:1.1rem;font-weight:300;color:var(--white);margin-bottom:var(--space-lg);line-height:1.8}.services{padding:var(--space-2xl) 0;background:var(--burgundy)}.services__header{text-align:left;margin-bottom:var(--space-xl);padding:0 var(--space-md)}.services__title{font-family:var(--font-display);font-size:clamp(4rem,10vw,8rem);font-weight:400;color:var(--sky-blue);letter-spacing:.02em}.services__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-lg);max-width:1200px;margin:0 auto;padding:0 var(--space-md)}.service-card{text-align:center;padding:var(--space-lg) var(--space-md);border:2px solid rgba(255,255,255,.4)}.service-card__image{width:280px;height:280px;border-radius:50%;overflow:hidden;margin:0 auto var(--space-lg)}.service-card__image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-smooth)}.service-card:hover .service-card__image img{transform:scale(1.1)}.service-card__title{font-family:var(--font-display);font-size:1.5rem;font-weight:400;color:var(--white);margin-bottom:var(--space-xs)}.service-card__link{font-family:var(--font-body);font-size:.9rem;color:var(--white);text-decoration:underline;text-underline-offset:4px;margin-bottom:var(--space-md);display:inline-block;transition:color var(--transition-fast)}.service-card__link:hover{color:var(--sky-blue)}.service-card__duration{font-family:var(--font-body);font-size:.9rem;color:#ffffffb3;margin-bottom:var(--space-md)}.service-detail{display:grid;grid-template-columns:1fr 1fr;min-height:80vh}.service-detail__image{position:relative;overflow:hidden}.service-detail__image img{width:100%;height:100%;object-fit:cover}.service-detail__content{background:var(--burgundy);display:flex;flex-direction:column;justify-content:center;padding:var(--space-xl)}.service-detail__title{font-family:var(--font-display);font-size:clamp(2.5rem,5vw,4rem);font-weight:400;color:var(--white);margin-bottom:var(--space-md)}.service-detail__duration{font-family:var(--font-body);font-size:1.4rem;color:#fffc;margin-bottom:var(--space-xs)}.service-detail__price{font-family:var(--font-body);font-size:1.4rem;color:#fffc;margin-bottom:var(--space-lg)}.service-detail__content .btn{max-width:320px}.portfolio{padding:var(--space-2xl) 0;background:var(--burgundy)}.portfolio__header{padding:0 var(--space-md);margin-bottom:var(--space-xl)}.portfolio__title{font-family:var(--font-display);font-size:clamp(4rem,10vw,8rem);font-weight:400;color:var(--sky-blue);letter-spacing:.02em}.portfolio__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:4px;max-width:900px;margin:0 auto;padding:0 var(--space-md)}.portfolio__item{position:relative;aspect-ratio:4/5;overflow:hidden;cursor:pointer}.portfolio__item img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-smooth)}.portfolio__item:hover img{transform:scale(1.05)}.portfolio__overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#7a1e0cb3;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity var(--transition-smooth)}.portfolio__item:hover .portfolio__overlay{opacity:1}.portfolio__overlay-text{font-family:var(--font-body);font-size:1rem;font-weight:400;color:var(--white);letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--white);padding:.75rem 1.5rem}.portfolio__item--large{grid-row:span 2}.testimonials{padding:var(--space-2xl) 0;background:var(--burgundy);text-align:center}.testimonials__container{max-width:800px;margin:0 auto;padding:0 var(--space-md)}.testimonials__header{margin-bottom:var(--space-xl)}.testimonials__title{font-family:var(--font-display);font-size:clamp(2.5rem,6vw,4.5rem);font-weight:400;color:var(--sky-blue);letter-spacing:.02em}.testimonial{padding:var(--space-lg) 0;min-height:150px;display:flex;flex-direction:column;align-items:center;justify-content:center}.testimonial__text{font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2rem);font-weight:300;font-style:italic;color:var(--white);line-height:1.6;margin-bottom:var(--space-md);animation:fadeInUp .5s ease-out forwards}.testimonial__author{font-family:var(--font-body);font-size:1rem;color:#ffffffb3}.testimonials__dots{display:flex;justify-content:center;gap:var(--space-sm);margin-top:var(--space-lg)}.testimonials__dot{width:10px;height:10px;border-radius:50%;background:#ffffff4d;border:none;cursor:pointer;transition:all var(--transition-fast)}.testimonials__dot--active{background:var(--sky-blue);transform:scale(1.2)}.footer{padding:var(--space-2xl) 0 var(--space-lg);background:var(--burgundy)}.footer__container{max-width:1400px;margin:0 auto;padding:0 var(--space-md)}.footer__main{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-xl);padding-bottom:var(--space-xl);border-bottom:1px solid rgba(255,255,255,.1)}.footer__branding{font-family:var(--font-body);font-size:1rem;font-weight:300;color:var(--white);margin-bottom:var(--space-xl)}.footer__title{font-family:var(--font-display);font-size:clamp(2.5rem,5vw,4rem);font-weight:300;font-style:italic;color:var(--white);line-height:1.2}.footer__info{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-sm)}.footer__contact{font-family:var(--font-body);font-size:1rem;font-weight:300;color:var(--white)}.footer__contact a{transition:color var(--transition-fast)}.footer__contact a:hover{color:var(--sky-blue)}.footer__social{display:flex;gap:var(--space-md);margin-top:var(--space-md)}.footer__social-link{width:40px;height:40px;display:flex;align-items:center;justify-content:center;color:var(--white);transition:color var(--transition-fast)}.footer__social-link:hover{color:var(--sky-blue)}.footer__social-link svg{width:20px;height:20px}.footer__links{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-xs)}.footer__link{font-family:var(--font-body);font-size:.9rem;color:var(--white);text-decoration:underline;text-underline-offset:4px;transition:color var(--transition-fast)}.footer__link:hover{color:var(--sky-blue)}.footer__bottom{display:flex;justify-content:center;padding-top:var(--space-lg)}.footer__copyright{font-family:var(--font-body);font-size:.85rem;color:#ffffff80}@media (max-width: 1024px){.services__grid{grid-template-columns:repeat(2,1fr)}.service-detail{grid-template-columns:1fr}.service-detail__image{height:50vh}.footer__main{grid-template-columns:1fr;gap:var(--space-lg)}.footer__links{align-items:flex-start}}@media (max-width: 768px){.nav__logo,.nav__cta{font-size:.85rem}.hero{padding:var(--space-xl) var(--space-sm)}.intro__content{margin:var(--space-md);padding:var(--space-lg);max-width:none}.services__grid{grid-template-columns:1fr;gap:var(--space-xl)}.service-card__image{width:220px;height:220px}.portfolio__grid{grid-template-columns:1fr}.footer__title{font-size:2rem}}@media (max-width: 480px){:root{--space-lg: 3rem;--space-xl: 4rem;--space-2xl: 6rem}.hero__logo,.intro__title,.services__title,.portfolio__title{font-size:2.5rem}.btn{padding:.875rem 2rem;font-size:.85rem}}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;background:#000000f2;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease-out forwards}.lightbox__close{position:absolute;top:1.5rem;right:1.5rem;width:48px;height:48px;display:flex;align-items:center;justify-content:center;color:var(--white);background:transparent;border:none;cursor:pointer;transition:color var(--transition-fast),transform var(--transition-fast);z-index:10}.lightbox__close:hover{color:var(--sky-blue);transform:scale(1.1)}.lightbox__close svg{width:32px;height:32px}.lightbox__nav{position:absolute;top:50%;transform:translateY(-50%);width:56px;height:56px;display:flex;align-items:center;justify-content:center;color:var(--white);background:#ffffff1a;border:none;border-radius:50%;cursor:pointer;transition:all var(--transition-fast);z-index:10}.lightbox__nav:hover{background:#fff3;color:var(--sky-blue)}.lightbox__nav svg{width:28px;height:28px}.lightbox__nav--prev{left:1.5rem}.lightbox__nav--next{right:1.5rem}.lightbox__content{max-width:90vw;max-height:90vh;display:flex;align-items:center;justify-content:center}.lightbox__image{max-width:100%;max-height:90vh;object-fit:contain;animation:scaleIn .3s ease-out forwards}.lightbox__counter{position:absolute;bottom:1.5rem;left:50%;transform:translate(-50%);font-family:var(--font-body);font-size:.9rem;color:#ffffffb3;letter-spacing:.1em}@media (max-width: 768px){.lightbox__nav{width:44px;height:44px}.lightbox__nav svg{width:24px;height:24px}.lightbox__nav--prev{left:.75rem}.lightbox__nav--next{right:.75rem}.lightbox__close{top:1rem;right:1rem;width:40px;height:40px}.lightbox__close svg{width:28px;height:28px}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--burgundy: #7A1E0C;--burgundy-dark: #5A1608;--burgundy-light: #8B2810;--burgundy-hover: #6A1A0A;--sky-blue: #B7E5FF;--sky-blue-light: #D4EFFF;--sky-blue-dark: #8FD4F8;--white: #FFFFFF;--cream: #F5F5F5;--off-white: #FAFAFA;--black: #1A1A1A;--gray-light: #E8E8E8;--gray: #888888;--font-display: "Fraunces", Georgia, serif;--font-body: "Nunito Sans", "Avenir", -apple-system, sans-serif;--space-xs: .5rem;--space-sm: 1rem;--space-md: 2rem;--space-lg: 4rem;--space-xl: 6rem;--space-2xl: 10rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 16px;--radius-full: 9999px;--transition-fast: .2s ease;--transition-smooth: .4s cubic-bezier(.4, 0, .2, 1);--transition-slow: .6s cubic-bezier(.25, .1, .25, 1)}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-body);background-color:var(--burgundy);color:var(--white);line-height:1.6;font-weight:300;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:300;line-height:1.1;font-optical-sizing:auto}a{text-decoration:none;color:inherit;transition:all var(--transition-fast)}img{max-width:100%;height:auto;display:block}button{font-family:var(--font-body);cursor:pointer;border:none;background:none}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--burgundy-dark)}::-webkit-scrollbar-thumb{background:var(--sky-blue);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--sky-blue-dark)}::selection{background-color:var(--sky-blue);color:var(--burgundy)}.container{width:100%;max-width:1400px;margin:0 auto;padding:0 var(--space-md)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-60px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(60px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes subtleFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes letterReveal{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in-up{animation:fadeInUp .8s var(--transition-smooth) forwards;opacity:0}.animate-fade-in{animation:fadeIn 1s var(--transition-smooth) forwards;opacity:0}.animate-slide-left{animation:slideInLeft .8s var(--transition-smooth) forwards;opacity:0}.animate-slide-right{animation:slideInRight .8s var(--transition-smooth) forwards;opacity:0}.animate-scale-in{animation:scaleIn .6s var(--transition-smooth) forwards;opacity:0}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.delay-4{animation-delay:.4s}.delay-5{animation-delay:.5s}.delay-6{animation-delay:.6s}.delay-7{animation-delay:.7s}.delay-8{animation-delay:.8s}.accent{color:var(--sky-blue)}
