:root{--color-bg: #0a0a0a;--color-bg-elevated: #111111;--color-bg-card: #161616;--color-bg-input: #1a1a1a;--color-border: rgba(255, 255, 255, .08);--color-border-hover: rgba(255, 255, 255, .15);--color-accent: #d4a574;--color-accent-hover: #e0b88a;--color-text: #f0f0f0;--color-text-secondary: rgba(255, 255, 255, .55);--color-text-muted: rgba(255, 255, 255, .35);--font-display: "Libre Baskerville", Georgia, serif;--font-body: "Work Sans", -apple-system, sans-serif;--space-xs: .5rem;--space-sm: 1rem;--space-md: 1.5rem;--space-lg: 2.5rem;--space-xl: 4rem;--space-2xl: 6rem;--ease-out: cubic-bezier(.22, 1, .36, 1);--duration: .4s}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);font-size:16px;line-height:1.6;color:var(--color-text);background-color:var(--color-bg)}h1,h2,h3,h4{font-family:var(--font-display);font-weight:400;line-height:1.2}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}button{font-family:inherit;cursor:pointer;border:none;background:none}::selection{background-color:var(--color-accent);color:var(--color-bg)}.app{min-height:100vh;display:flex;flex-direction:column}.header{position:fixed;top:0;left:0;right:0;z-index:100;background:#0a0a0ad9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border);transition:box-shadow var(--duration) var(--ease-out)}.header.scrolled{box-shadow:0 2px 20px #0006}.header-inner{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) var(--space-md);max-width:1200px;margin:0 auto}.logo{display:flex;align-items:center;gap:var(--space-sm)}.logo-icon{width:52px;height:40px}.logo-text{font-family:var(--font-display);font-size:1.25rem;color:var(--color-text);letter-spacing:-.02em}.nav{display:flex;align-items:center;gap:var(--space-lg)}.nav-link{font-size:.9rem;font-weight:500;color:var(--color-text-secondary);transition:color var(--duration) var(--ease-out);position:relative}.nav-link:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:1px;background:var(--color-accent);transition:width var(--duration) var(--ease-out)}.nav-link:hover{color:var(--color-text)}.nav-link:hover:after{width:100%}.header-cta{display:none}@media(min-width:768px){.header-cta{display:block;padding:.6rem 1.2rem;background:var(--color-accent);color:var(--color-bg);font-size:.875rem;font-weight:600;border-radius:4px;transition:all var(--duration) var(--ease-out)}.header-cta:hover{background:var(--color-accent-hover);transform:translateY(-1px)}}.mobile-menu-btn{display:flex;flex-direction:column;gap:5px;padding:8px}.mobile-menu-btn span{display:block;width:24px;height:2px;background:var(--color-text);transition:all .3s ease}@media(min-width:768px){.mobile-menu-btn{display:none}}@media(max-width:767px){.nav{display:none}}.hero{padding:calc(80px + var(--space-2xl)) var(--space-md) var(--space-2xl);background:var(--color-bg);position:relative;overflow:hidden}.hero:before{content:"";position:absolute;top:0;right:0;width:50%;height:100%;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M30 0L30 60M0 30L60 30' stroke='%23ffffff' stroke-opacity='0.02' stroke-width='1'/%3E%3C/svg%3E");pointer-events:none}.hero-content{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr;gap:var(--space-xl);align-items:center}@media(min-width:900px){.hero-content{grid-template-columns:1fr 1fr}}.hero-text{position:relative;z-index:1}.hero-badge{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);background:#d4a5741f;color:var(--color-accent);font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;border-radius:2px;border:1px solid rgba(212,165,116,.2);margin-bottom:var(--space-md);animation:fadeInUp .6s var(--ease-out) both}.hero-title{font-size:clamp(2.5rem,5vw,4rem);color:var(--color-text);margin-bottom:var(--space-md);animation:fadeInUp .6s var(--ease-out) .1s both}.hero-title span{color:var(--color-accent)}.hero-description{font-size:1.125rem;color:var(--color-text-secondary);max-width:480px;margin-bottom:var(--space-lg);animation:fadeInUp .6s var(--ease-out) .2s both}.hero-actions{display:flex;flex-wrap:wrap;gap:var(--space-sm);animation:fadeInUp .6s var(--ease-out) .3s both}.btn{display:inline-flex;align-items:center;gap:var(--space-xs);padding:1rem 1.75rem;font-size:.9375rem;font-weight:500;border-radius:4px;transition:all var(--duration) var(--ease-out)}.btn-icon{display:inline-flex;width:18px;height:18px;flex-shrink:0}.btn-icon svg{width:100%;height:100%}.btn-primary{background:var(--color-accent);color:var(--color-bg);font-weight:600}.btn-primary:hover{background:var(--color-accent-hover);transform:translateY(-2px);box-shadow:0 8px 24px #d4a57433}.btn-secondary{background:transparent;color:var(--color-text);border:1px solid var(--color-border-hover)}.btn-secondary:hover{background:#ffffff0d;border-color:var(--color-text-secondary)}.hero-image{position:relative;animation:fadeInUp .8s var(--ease-out) .3s both}.hero-image-wrapper{position:relative;border-radius:8px;overflow:hidden;background:var(--color-bg-card);aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;border:1px solid var(--color-border)}.hero-image-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#111,#1a1a1a,#222);display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--color-text-secondary);padding:var(--space-lg);text-align:center}.hero-image-placeholder>span{display:inline-flex;margin-bottom:var(--space-md)}.hero-image-placeholder svg{width:80px;height:80px;opacity:.6}.hero-image-placeholder p{font-family:var(--font-display);font-style:italic;font-size:1.125rem;opacity:.7}.hero-stats{position:absolute;bottom:-20px;right:-20px;background:var(--color-bg-elevated);padding:var(--space-md);border-radius:8px;box-shadow:0 8px 32px #0006;border:1px solid var(--color-border);display:flex;gap:var(--space-lg)}.stat{text-align:center}.stat-number{font-family:var(--font-display);font-size:1.75rem;color:var(--color-accent);display:block}.stat-label{font-size:.75rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.services{padding:var(--space-2xl) var(--space-md);background:var(--color-bg-elevated)}.section-header{text-align:center;max-width:600px;margin:0 auto var(--space-xl)}.section-label{font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--space-sm)}.section-title{font-size:clamp(1.75rem,3vw,2.5rem);color:var(--color-text);margin-bottom:var(--space-sm)}.section-description{color:var(--color-text-secondary)}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-md);max-width:1200px;margin:0 auto}.service-card{background:var(--color-bg-card);padding:var(--space-lg);border-radius:8px;border:1px solid var(--color-border);transition:all var(--duration) var(--ease-out);position:relative;overflow:hidden}.service-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:0;background:var(--color-accent);transition:height var(--duration) var(--ease-out)}.service-card:hover{background:#1c1c1c;box-shadow:0 8px 32px #0000004d;transform:translateY(-4px);border-color:var(--color-border-hover)}.service-card:hover:before{height:100%}.service-icon{display:block;width:48px;height:48px;margin-bottom:var(--space-md);color:var(--color-accent)}.service-icon svg{width:100%;height:100%}.service-title{font-size:1.25rem;color:var(--color-text);margin-bottom:var(--space-xs)}.service-description{font-size:.9375rem;color:var(--color-text-secondary)}.areas{padding:var(--space-2xl) var(--space-md);background:var(--color-bg);color:var(--color-text);overflow:hidden}.areas-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr;gap:var(--space-xl);align-items:center}@media(min-width:900px){.areas-inner{grid-template-columns:1fr 1.2fr}}.areas-label{font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--space-sm)}.areas-title{font-size:clamp(2rem,4vw,3rem);color:#fff;margin-bottom:var(--space-md);line-height:1.15}.areas-title span{color:var(--color-accent)}.areas-description{color:var(--color-text-secondary);font-size:1.05rem;margin-bottom:var(--space-lg)}.areas-checklist{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:.75rem 1.5rem}@media(max-width:480px){.areas-checklist{grid-template-columns:1fr}}.areas-checklist-item{display:flex;align-items:center;gap:.6rem;font-size:.95rem;color:#ffffffbf;transition:color .3s ease}.areas-checklist-item:hover{color:#fff}.check-icon{width:18px;height:18px;flex-shrink:0;color:var(--color-accent)}.areas-map{position:relative}.map-container{position:relative;width:100%;aspect-ratio:1 / 1;max-width:560px;margin:0 auto;border-radius:16px;background:#0f1318;border:1px solid var(--color-border);overflow:hidden}.map-img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:contain;transform:scale(2.25);transform-origin:60% 50%;opacity:.7}.map-marker{position:absolute;transform:translate(-50%,-50%);z-index:2;display:flex;align-items:center;gap:6px}.marker-dot-wrapper{position:relative;width:10px;height:10px;flex-shrink:0}.marker-dot{width:10px;height:10px;border-radius:50%;background:var(--color-accent);box-shadow:0 0 8px #d4a57499;position:relative;z-index:2}.marker-pulse{position:absolute;width:24px;height:24px;border-radius:50%;background:#d4a57426;top:50%;left:50%;transform:translate(-50%,-50%);animation:pulse 3s ease-in-out infinite;z-index:1}.map-marker:nth-of-type(2) .marker-pulse{animation-delay:.4s}.map-marker:nth-of-type(3) .marker-pulse{animation-delay:.8s}.map-marker:nth-of-type(4) .marker-pulse{animation-delay:1.2s}.map-marker:nth-of-type(5) .marker-pulse{animation-delay:1.6s}.map-marker:nth-of-type(6) .marker-pulse{animation-delay:2s}.map-marker:nth-of-type(7) .marker-pulse{animation-delay:2.4s}.map-marker:nth-of-type(8) .marker-pulse{animation-delay:2.8s}.map-marker:nth-of-type(9) .marker-pulse{animation-delay:3.2s}@keyframes pulse{0%,to{transform:translate(-50%,-50%) scale(1);opacity:.4}50%{transform:translate(-50%,-50%) scale(1.8);opacity:0}}.marker-label{font-size:.65rem;font-weight:600;letter-spacing:.03em;color:#ffffffb3;white-space:nowrap;text-shadow:0 1px 4px rgba(0,0,0,.8);pointer-events:none}@media(min-width:600px){.marker-label{font-size:.7rem}}.contact{padding:var(--space-2xl) var(--space-md);background:var(--color-bg-elevated)}.contact-content{max-width:1000px;margin:0 auto;display:grid;grid-template-columns:1fr;gap:var(--space-xl)}@media(min-width:768px){.contact-content{grid-template-columns:1fr 1fr}}.contact-info h2{font-size:clamp(1.75rem,3vw,2.25rem);color:var(--color-text);margin-bottom:var(--space-sm)}.contact-info>p{color:var(--color-text-secondary);margin-bottom:var(--space-lg)}.contact-methods{display:flex;flex-direction:column;gap:var(--space-md)}.contact-method{display:flex;align-items:flex-start;gap:var(--space-md);padding:var(--space-md);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;transition:all var(--duration) var(--ease-out)}.contact-method:hover{transform:translate(8px);border-color:var(--color-border-hover);box-shadow:0 4px 16px #0000004d}.contact-method-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#d4a5741a;color:var(--color-accent);border-radius:8px;border:1px solid rgba(212,165,116,.15);flex-shrink:0}.contact-method-icon span{display:inline-flex}.contact-method-icon svg{width:24px;height:24px}.contact-method-content h3{font-family:var(--font-body);font-size:.875rem;font-weight:500;color:var(--color-text-muted);margin-bottom:4px}.contact-method-content a,.contact-method-content span{font-size:1.125rem;font-weight:500;color:var(--color-text)}.contact-method-content a:hover{color:var(--color-accent)}.contact-form-wrapper{background:var(--color-bg-card);padding:var(--space-lg);border-radius:8px;border:1px solid var(--color-border)}.contact-form{display:flex;flex-direction:column;gap:var(--space-md)}.form-group{display:flex;flex-direction:column;gap:var(--space-xs)}.form-group label{font-size:.875rem;font-weight:500;color:var(--color-text-secondary)}.form-group input,.form-group textarea{padding:var(--space-sm);border:1px solid var(--color-border);border-radius:4px;font-family:var(--font-body);font-size:1rem;color:var(--color-text);background:var(--color-bg-input);transition:all var(--duration) var(--ease-out)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--color-accent);background:#1e1e1e}.form-group textarea{min-height:120px;resize:vertical}.form-submit{width:100%;padding:var(--space-sm) var(--space-lg);background:var(--color-accent);color:var(--color-bg);font-size:1rem;font-weight:600;border-radius:4px;transition:all var(--duration) var(--ease-out)}.form-submit:hover{background:var(--color-accent-hover);transform:translateY(-2px);box-shadow:0 8px 24px #d4a57433}.form-success{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--space-xl);min-height:300px}.form-success h3{font-size:1.5rem;color:var(--color-accent);margin-bottom:var(--space-sm)}.form-success p{color:var(--color-text-secondary);margin-bottom:var(--space-lg)}.footer{padding:var(--space-lg) var(--space-md);background:#050505;color:var(--color-text-muted);border-top:1px solid var(--color-border)}.footer-content{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:var(--space-md);text-align:center}@media(min-width:768px){.footer-content{flex-direction:row;justify-content:space-between;text-align:left}}.footer-logo{display:flex;align-items:center;gap:var(--space-xs);color:var(--color-text-secondary)}.footer-logo span:first-child{display:inline-flex}.footer-logo svg{width:32px;height:32px}.footer-logo span{font-family:var(--font-display);font-size:1rem}.footer-text{font-size:.875rem}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-on-scroll{opacity:0;transform:translateY(30px);transition:all .6s var(--ease-out)}.animate-on-scroll.visible{opacity:1;transform:translateY(0)}
