@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Playfair+Display:wght@400;600;700&display=swap";*{margin:0;padding:0;box-sizing:border-box}:root{--charcoal: #2d2d2d;--warm-gray: #5a5a5a;--light-gray: #d4d4d4;--off-white: #f7f7f5;--cream: #faf9f6;--accent-bronze: #b8956a;--accent-dark: #8b7355;--black: #1a1a1a;--white: #ffffff;--font-display: "Playfair Display", serif;--font-body: "Inter", sans-serif;--transition: all .4s cubic-bezier(.4, 0, .2, 1);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .08);--shadow-md: 0 4px 16px rgba(0, 0, 0, .12);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .16)}html{scroll-behavior:smooth}body{font-family:var(--font-body);font-size:16px;line-height:1.6;color:var(--charcoal);background-color:var(--cream);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{text-decoration:none;color:inherit}.app{position:relative;overflow-x:hidden}.scroll-progress{position:fixed;top:0;left:0;height:3px;background:linear-gradient(90deg,var(--accent-bronze),var(--accent-dark));z-index:1000;transition:width .1s ease}.navigation{position:fixed;top:0;left:0;right:0;z-index:999;padding:1.5rem 0;transition:var(--transition)}.navigation.scrolled{background-color:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-sm);padding:1rem 0}.nav-container{max-width:1400px;margin:0 auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:center}.nav-logo{display:flex;gap:.5rem;font-family:var(--font-display);font-size:1.5rem;font-weight:700;cursor:pointer}.nav-logo img{color:var(--charcoal);height:48px;width:auto}.logo-accent{color:var(--accent-bronze)}.nav-links{display:flex;gap:2.5rem}.nav-link{background:none;border:none;color:var(--warm-gray);font-size:.95rem;font-weight:500;cursor:pointer;position:relative;transition:var(--transition);font-family:var(--font-body)}.nav-link:after{content:"";position:absolute;bottom:-5px;left:0;width:0;height:2px;background-color:var(--accent-bronze);transition:var(--transition)}.nav-link:hover,.nav-link.active{color:var(--charcoal)}.nav-link:hover:after,.nav-link.active:after{width:100%}.mobile-menu-toggle{display:none;background:none;border:none;color:var(--charcoal);cursor:pointer}.hero{position:relative;height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden}.hero-background{position:absolute;top:0;left:0;right:0;bottom:0;background:var(--black)}.hero-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 50%,rgba(184,149,106,.1) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(184,149,106,.15) 0%,transparent 50%)}.hero-content{position:relative;margin-top:2rem;z-index:2;text-align:center;padding:0 2rem;max-width:1200px;animation:fadeInUp 1s ease}.hero-subtitle{color:var(--accent-bronze);font-size:.9rem;letter-spacing:3px;text-transform:uppercase;font-weight:500;margin-bottom:1.5rem;display:flex;justify-content:center;gap:1rem}.hero-title{font-family:var(--font-display);font-size:clamp(3rem,8vw,6rem);font-weight:700;color:var(--white);line-height:1.1;margin-bottom:1.5rem;display:flex;flex-direction:column;gap:.5rem}.title-line{display:block}.hero-description{color:var(--light-gray);font-size:1.25rem;line-height:1.8;max-width:700px;margin:0 auto 3rem}.hero-cta{display:flex;gap:1.5rem;justify-content:center;flex-wrap:wrap;margin-bottom:2rem}.btn{padding:1rem 2.5rem;font-size:1rem;font-weight:600;font-family:var(--font-body);border:none;border-radius:2px;cursor:pointer;transition:var(--transition);display:inline-flex;align-items:center;gap:.5rem}.btn-primary{background-color:var(--accent-bronze);color:var(--white)}.btn-primary:hover{background-color:var(--accent-dark);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-secondary{background-color:transparent;color:var(--white);border:2px solid var(--white)}.btn-secondary:hover{background-color:var(--white);color:var(--charcoal);transform:translateY(-2px)}.scroll-indicator{position:absolute;bottom:3rem;left:50%;transform:translate(-50%);background:none;border:none;color:var(--white);cursor:pointer;animation:bounce 2s infinite}.story{padding:8rem 2rem;background-color:var(--off-white)}.story-container{max-width:1200px;margin:0 auto}.story-content{opacity:0;transform:translateY(40px);transition:all .8s ease}.story-content.visible{opacity:1;transform:translateY(0)}.section-label{display:inline-block;color:var(--accent-bronze);font-size:.85rem;letter-spacing:2px;text-transform:uppercase;font-weight:600;margin-bottom:1rem}.section-title{font-family:var(--font-display);font-size:clamp(2rem,5vw,3.5rem);font-weight:700;color:var(--charcoal);line-height:1.2;margin-bottom:2rem}.section-subtitle{font-size:1.15rem;color:var(--warm-gray);line-height:1.7;max-width:700px}.story-text{margin-bottom:4rem}.story-paragraphs p{color:var(--warm-gray);font-size:1.1rem;line-height:1.8;margin-bottom:1.5rem}.story-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:3rem;padding:3rem 0;border-top:1px solid var(--light-gray)}.stat-item{text-align:center}.stat-number{font-family:var(--font-display);font-size:3.5rem;font-weight:700;color:var(--accent-bronze);margin-bottom:.5rem}.stat-label{color:var(--warm-gray);font-size:.95rem;text-transform:uppercase;letter-spacing:1px}.services{padding:8rem 2rem;background-color:var(--cream)}.services-container{max-width:1400px;margin:0 auto}.services-header{text-align:center;margin-bottom:5rem}.services-header .section-subtitle{margin:0 auto}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem}.service-card{background-color:var(--white);padding:2.5rem;border-radius:4px;transition:var(--transition);cursor:pointer;border:1px solid transparent}.service-card:hover,.service-card.active{transform:translateY(-8px);box-shadow:var(--shadow-lg);border-color:var(--accent-bronze)}.service-icon{width:70px;height:70px;background-color:var(--off-white);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--accent-bronze);margin-bottom:1.5rem;transition:var(--transition)}.service-card:hover .service-icon,.service-card.active .service-icon{background-color:var(--accent-bronze);color:var(--white);transform:scale(1.1)}.service-title{font-family:var(--font-display);font-size:1.5rem;font-weight:600;color:var(--charcoal);margin-bottom:1rem}.service-description{color:var(--warm-gray);line-height:1.7;margin-bottom:1rem}.service-process{color:var(--accent-bronze);font-size:.95rem;font-style:italic}.portfolio{padding:8rem 2rem;background-color:var(--off-white)}.portfolio-container{max-width:1400px;margin:0 auto}.portfolio-header{text-align:center;margin-bottom:3rem}.portfolio-header .section-subtitle{margin:0 auto}.portfolio-filters{display:flex;gap:1rem;justify-content:center;margin-bottom:4rem;flex-wrap:wrap}.filter-btn{padding:.75rem 1.5rem;background-color:transparent;border:2px solid var(--light-gray);color:var(--warm-gray);font-size:.95rem;font-weight:500;font-family:var(--font-body);cursor:pointer;border-radius:2px;transition:var(--transition)}.filter-btn:hover,.filter-btn.active{background-color:var(--accent-bronze);border-color:var(--accent-bronze);color:var(--white)}.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2.5rem}.portfolio-item{background-color:var(--white);border-radius:4px;overflow:hidden;transition:var(--transition);animation:fadeIn .6s ease forwards;opacity:0}.portfolio-item:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg)}.portfolio-image{height:280px;overflow:hidden}.image-placeholder{width:100%;height:100%;background:linear-gradient(135deg,var(--light-gray) 0%,var(--off-white) 100%);transition:var(--transition)}.portfolio-item:hover .image-placeholder{transform:scale(1.05)}.portfolio-info{padding:2rem}.portfolio-year{display:inline-block;color:var(--accent-bronze);font-size:.85rem;font-weight:600;margin-bottom:.5rem}.portfolio-title{font-family:var(--font-display);font-size:1.5rem;font-weight:600;color:var(--charcoal);margin-bottom:.75rem}.portfolio-description{color:var(--warm-gray);line-height:1.7}.process{padding:8rem 2rem;background-color:var(--cream)}.process-container{max-width:1200px;margin:0 auto}.process-header{text-align:center;margin-bottom:5rem}.process-header .section-subtitle{margin:0 auto}.process-timeline{display:flex;flex-direction:column;gap:4rem}.process-step{display:grid;grid-template-columns:120px 1fr;gap:3rem;position:relative}.step-connector{position:absolute;left:60px;top:120px;bottom:-60px;width:2px;background:linear-gradient(180deg,var(--accent-bronze) 0%,var(--light-gray) 100%)}.process-step:last-child .step-connector{display:none}.step-icon-wrapper{position:relative;display:flex;flex-direction:column;align-items:center;gap:1rem}.step-number{font-family:var(--font-display);font-size:1rem;font-weight:700;color:var(--accent-bronze);letter-spacing:2px}.step-icon{width:80px;height:80px;background-color:var(--white);border:2px solid var(--accent-bronze);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--accent-bronze);transition:var(--transition);z-index:1}.process-step:hover .step-icon{background-color:var(--accent-bronze);color:var(--white);transform:scale(1.1)}.step-content{padding-top:1rem}.step-title{font-family:var(--font-display);font-size:2rem;font-weight:600;color:var(--charcoal);margin-bottom:1rem}.step-description{color:var(--warm-gray);font-size:1.1rem;line-height:1.8}.contact{padding:8rem 2rem;background-color:var(--off-white)}.contact-container{max-width:1200px;margin:0 auto}.contact-content{display:grid;grid-template-columns:1fr 1.2fr;gap:5rem}.contact-intro{color:var(--warm-gray);font-size:1.1rem;line-height:1.8;margin-bottom:3rem}.contact-details{display:flex;flex-direction:column;gap:2rem}.contact-item{display:flex;gap:1.5rem}.contact-icon{width:50px;height:50px;background-color:var(--cream);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--accent-bronze);flex-shrink:0}.contact-text{padding-top:.5rem}.contact-label{color:var(--warm-gray);font-size:.9rem;margin-bottom:.25rem}.contact-value{color:var(--charcoal);font-weight:500;font-size:1.05rem}.contact-form-wrapper{background-color:var(--white);padding:3rem;border-radius:4px;box-shadow:var(--shadow-md)}.contact-form{display:flex;flex-direction:column;gap:1.5rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{color:var(--charcoal);font-weight:500;font-size:.95rem}.form-group input,.form-group select,.form-group textarea{padding:.875rem 1rem;border:2px solid var(--light-gray);border-radius:2px;font-family:var(--font-body);font-size:1rem;color:var(--charcoal);transition:var(--transition);background-color:var(--white)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--accent-bronze)}.form-group textarea{resize:vertical;min-height:120px}.submit-btn{padding:1rem 2rem;background-color:var(--accent-bronze);color:var(--white);border:none;border-radius:2px;font-size:1rem;font-weight:600;font-family:var(--font-body);cursor:pointer;transition:var(--transition);display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:1rem}.submit-btn:hover:not(:disabled){background-color:var(--accent-dark);transform:translateY(-2px);box-shadow:var(--shadow-md)}.submit-btn:disabled{opacity:.6;cursor:not-allowed}.submit-success{padding:1rem;background-color:#d4edda;color:#155724;border-radius:2px;text-align:center;font-weight:500}.footer{background-color:var(--charcoal);color:var(--light-gray);padding:4rem 2rem 2rem}.footer-container{max-width:1400px;margin:0 auto}.footer-content{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:3rem;margin-bottom:3rem}.footer-logo{display:flex;gap:.5rem;font-family:var(--font-display);font-size:1.5rem;font-weight:700;margin-bottom:1rem}.footer-logo .logo-text{color:var(--white)}.footer-tagline{color:var(--light-gray);line-height:1.7;margin-bottom:1.5rem;max-width:300px}.footer-social{display:flex;gap:1rem}.social-link{width:40px;height:40px;background-color:#ffffff1a;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--light-gray);transition:var(--transition);text-decoration:none}.social-link:hover{background-color:var(--accent-bronze);color:var(--white);transform:translateY(-3px)}.footer-heading{font-family:var(--font-display);font-size:1.1rem;color:var(--white);margin-bottom:1.5rem;font-weight:600}.footer-links{list-style:none;display:flex;flex-direction:column;gap:.75rem}.footer-links li{color:var(--light-gray);font-size:.95rem}.footer-links button{background:none;border:none;color:var(--light-gray);font-family:var(--font-body);font-size:.95rem;cursor:pointer;transition:var(--transition);text-align:left;padding:0}.footer-links button:hover{color:var(--accent-bronze)}.footer-bottom{padding-top:2rem;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;align-items:center;font-size:.9rem}.footer-credit{color:var(--accent-bronze);font-style:italic}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{to{opacity:1}}@keyframes bounce{0%,20%,50%,80%,to{transform:translate(-50%) translateY(0)}40%{transform:translate(-50%) translateY(-10px)}60%{transform:translate(-50%) translateY(-5px)}}@media (max-width: 1024px){.services-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.portfolio-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.footer-content{grid-template-columns:repeat(2,1fr)}.contact-content{grid-template-columns:1fr;gap:3rem}.process-step{grid-template-columns:100px 1fr;gap:2rem}}@media (max-width: 768px){.nav-links{position:fixed;top:0;right:-100%;width:70%;height:100vh;background-color:var(--white);flex-direction:column;padding:6rem 2rem 2rem;box-shadow:var(--shadow-lg);transition:var(--transition)}.nav-links.mobile-open{right:0}.mobile-menu-toggle{display:block}.hero-title{font-size:clamp(2.5rem,10vw,4rem)}.hero-description{font-size:1.1rem}.hero-cta{flex-direction:column}.story,.services,.portfolio,.process,.contact{padding:5rem 1.5rem}.section-title{font-size:clamp(1.75rem,6vw,2.5rem)}.story-stats{grid-template-columns:1fr;gap:2rem}.services-grid,.portfolio-grid{grid-template-columns:1fr}.process-step{grid-template-columns:1fr;gap:1rem}.step-connector{display:none}.step-icon-wrapper{flex-direction:row}.form-row{grid-template-columns:1fr}.contact-form-wrapper{padding:2rem}.footer-content{grid-template-columns:1fr;gap:2rem}.footer-bottom{flex-direction:column;gap:1rem;text-align:center}}@media (max-width: 480px){.hero-subtitle{flex-direction:column;gap:.5rem}.p2{display:none}}
