:root{--bg-color: #fdfcfb;--text-main: #111111;--text-muted: #5a5a5a;--border-light: #bb8b11;--font-heading: "Playfair Display", serif;--font-body: "Lora", serif;--transition: all .5s cubic-bezier(.25, 1, .5, 1)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{background-color:var(--bg-color);color:var(--text-main);font-family:var(--font-body);line-height:1.8;font-size:1.125rem;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::selection{background:var(--text-main);color:var(--bg-color)}h1,h2,h3,.nav-brand{font-family:var(--font-heading);font-weight:400;line-height:1.2}h1{font-size:clamp(3rem,7vw,5.5rem);letter-spacing:-1px}h2.section-title{font-size:clamp(2rem,5vw,3.5rem);margin-bottom:4rem;text-align:center;position:relative;display:table;margin-left:auto;margin-right:auto}h2.section-title:after{content:"";position:absolute;bottom:-.8rem;left:50%;transform:translate(-50%);width:50px;height:1px;background-color:var(--text-main)}h3{font-size:1.6rem;margin-bottom:1rem;font-style:italic}p{margin-bottom:1.5rem;color:var(--text-muted)}.container{width:90%;max-width:1200px;margin:0 auto}.navbar{position:fixed;top:0;left:0;width:100%;padding:2rem 5%;display:flex;justify-content:space-between;align-items:center;z-index:1000;background:#fdfcfbf2;backdrop-filter:blur(8px);transition:var(--transition)}.nav-brand{font-size:2.2rem;font-weight:700;font-style:italic;text-decoration:none;color:var(--text-main)}.nav-links{list-style:none;display:flex;gap:3rem}.nav-links a{text-decoration:none;color:var(--text-main);font-size:.85rem;text-transform:uppercase;letter-spacing:2.5px;font-family:sans-serif;position:relative;padding-bottom:.4rem}.nav-links a:after{content:"";position:absolute;left:0;bottom:0;width:0;height:1px;background:var(--text-main);transition:var(--transition)}.nav-links a:hover:after{width:100%}section{padding:10rem 0}.hero{display:flex;align-items:center;padding:14rem 0 6rem}.hero-title{margin-bottom:2rem}.hero-title .line-1{font-style:italic;color:var(--text-muted)}.hero-subtitle{font-size:1.35rem;max-width:650px;margin-bottom:3.5rem}.hero-layout{display:flex;align-items:center;justify-content:space-between;gap:4rem}.hero-content{flex:1}.hero-image{flex:1;display:flex;justify-content:center}.hero-image img{max-width:100%;height:auto;border-radius:6px;box-shadow:0 40px 80px #0000001a;object-fit:cover;aspect-ratio:4/5;max-height:650px}.btn{display:inline-block;padding:1.1rem 2.5rem;border:1px solid var(--text-main);color:var(--text-main);text-decoration:none;text-transform:uppercase;letter-spacing:2px;font-family:sans-serif;font-size:.85rem;transition:var(--transition);position:relative;overflow:hidden;z-index:1}.btn:before{content:"";position:absolute;top:0;left:0;width:0;height:100%;background:var(--text-main);transition:var(--transition);z-index:-1}.btn:hover{color:var(--bg-color)}.btn:hover:before{width:100%}.services{background-color:#fff;border-top:1px solid var(--border-light)}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem}.service-card{padding:3rem;border:1px solid var(--border-light);background:var(--bg-color);transition:var(--transition);position:relative;z-index:1}.service-card:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;box-shadow:0 20px 40px #0000000f;opacity:0;transition:var(--transition);z-index:-1}.service-card:hover:after{opacity:1}.service-card:hover{transform:translateY(-8px);border-color:var(--text-main)}.split-text{max-width:800px;margin:0 auto;text-align:center}.split-text p{font-size:1.25rem}blockquote{font-family:var(--font-heading);font-size:2.2rem;font-style:italic;color:var(--text-main);margin:4rem 0;line-height:1.4;position:relative}.about{background-color:#fff;border-top:1px solid var(--border-light)}.about-layout{display:flex;align-items:center;justify-content:space-between;gap:4rem}.about-image{flex:1;display:flex;justify-content:center}.about-image img{max-width:100%;height:auto;border-radius:6px;box-shadow:0 40px 80px #0000001a;object-fit:cover;aspect-ratio:1/1;max-height:500px}.about-text{flex:1}.about-text .section-title{margin-left:0;left:0;transform:none;text-align:left;display:block}.about-text .section-title:after{left:0;transform:translate(0)}.contact{background-color:var(--text-main);color:var(--bg-color)}.contact .section-title{color:var(--bg-color)}.contact .section-title:after{background-color:var(--bg-color)}.contact-desc{font-size:1.3rem;margin-bottom:4rem;color:#adadad}.email-link{font-family:var(--font-heading);font-size:clamp(2rem,5vw,4rem);color:var(--bg-color);text-decoration:none;font-style:italic;transition:var(--transition);position:relative}.email-link:after{content:"";position:absolute;bottom:-5px;left:0;width:100%;height:2px;background-color:var(--bg-color);transition:var(--transition);transform-origin:right;transform:scaleX(1)}.email-link:hover:after{transform:scaleX(0);transform-origin:left}.text-center{text-align:center}footer{padding:3rem 0;background-color:var(--text-main);color:#888;font-family:sans-serif;font-size:.85rem}.flex-footer{display:flex;justify-content:space-between;align-items:center}.social-links a{margin-left:2rem;color:#fff;text-decoration:none;text-transform:uppercase;letter-spacing:1px;transition:color .3s ease}.social-links a:hover{color:#aeaeae}.fade-in-up{opacity:0;transform:translateY(30px);animation:fadeInUp 1.2s forwards cubic-bezier(.25,1,.5,1)}span.fade-in-up{display:inline-block}.delay-1{animation-delay:.2s}.delay-2{animation-delay:.4s}.delay-3{animation-delay:.6s}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}.reveal{opacity:0;transform:translateY(50px);transition:all 1s cubic-bezier(.25,1,.5,1)}.reveal.active{opacity:1;transform:translateY(0)}@media (max-width: 950px){.hero-layout,.about-layout{flex-direction:column-reverse;text-align:center;gap:3rem}.about-text .section-title{text-align:center;margin-left:auto;margin-right:auto;display:table}.about-text .section-title:after{left:50%;transform:translate(-50%)}.hero-subtitle{margin-left:auto;margin-right:auto}.hero{padding-top:8rem}.services-grid{grid-template-columns:1fr}.nav-links{display:none}.navbar{padding:1.5rem 5%}section{padding:6rem 0}.flex-footer{flex-direction:column;gap:1.5rem;text-align:center}.social-links a{margin:0 1rem}}
