@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400&display=swap";:root{--color-primary: #0f172a;--color-secondary: #d4af37;--color-bg: #f8fafc;--color-surface: #ffffff;--color-text: #334155;--color-text-light: #64748b;--font-heading: "Playfair Display", serif;--font-body: "Inter", sans-serif;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--radius: .5rem;--max-width: 1200px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);color:var(--color-text);background-color:var(--color-bg);line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-primary);line-height:1.2;margin-bottom:1rem}h1{font-size:3.5rem}h2{font-size:2.5rem}h3{font-size:1.75rem}a{text-decoration:none;color:inherit;transition:color .3s ease}img{max-width:100%;height:auto;display:block}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 1.5rem}header{position:absolute;top:0;left:0;width:100%;z-index:10;padding:1.5rem 0;transition:background .3s ease}header.scrolled{background:#fffffff2;box-shadow:var(--shadow-sm);position:fixed}header.scrolled nav a{color:var(--color-primary)}.nav-container{display:flex;justify-content:space-between;align-items:center}.logo{font-family:var(--font-heading);font-size:1.5rem;font-weight:700;color:var(--color-surface)}header.scrolled .logo{color:var(--color-primary)}nav ul{display:flex;gap:2rem;list-style:none}nav a{color:var(--color-surface);font-weight:500;font-size:1rem}.hero{height:100vh;position:relative;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--color-surface);overflow:hidden}.hero-bg{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:-1}.hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(to bottom,#0f172a66,#0f172ab3);z-index:1}.hero-content{position:relative;z-index:2;max-width:800px;padding:0 1rem}.hero h1,.page-header h1{margin-bottom:1.5rem;color:#eec04b;text-shadow:2px 2px 8px rgba(0,0,0,.9);font-weight:700;letter-spacing:-.02em}.hero p,.page-header p{font-size:1.25rem;margin-bottom:2rem;max-width:600px;margin-left:auto;margin-right:auto;color:var(--color-surface);text-shadow:1px 1px 3px rgba(0,0,0,.9);font-weight:500}.btn{display:inline-block;padding:1rem 2rem;background-color:var(--color-secondary);color:#fff;font-weight:600;border-radius:var(--radius);text-transform:uppercase;letter-spacing:1px;transition:transform .2s,background-color .2s}.btn:hover{transform:translateY(-2px);background-color:#bfa030}.btn-outline{background:transparent;border:2px solid var(--color-surface);margin-left:1rem}.btn-outline:hover{background:var(--color-surface);color:var(--color-primary)}.features{padding:5rem 0;background-color:var(--color-surface)}.section-header{text-align:center;margin-bottom:4rem}.section-header h2{font-size:2.5rem;margin-bottom:1rem}.grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.feature-card{text-align:center;padding:2rem;border-radius:var(--radius);transition:transform .3s}.feature-card:hover{transform:translateY(-5px)}.feature-icon{font-size:3rem;color:var(--color-secondary);margin-bottom:1.5rem}.apartments{padding:5rem 0;background-color:var(--color-bg)}.apartment-card{background:var(--color-surface);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-md);transition:box-shadow .3s,transform .3s}.apartment-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-5px)}.card-image{height:250px;overflow:hidden}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.apartment-card:hover .card-image img{transform:scale(1.05)}.card-content{padding:2rem}.card-meta{display:flex;justify-content:space-between;margin-bottom:1rem;font-size:.875rem;color:var(--color-text-light)}.card-price{color:var(--color-secondary);font-weight:600;font-size:1.1rem}.card-actions{margin-top:1.5rem;text-align:right}.btn-sm{padding:.5rem 1rem;font-size:.875rem}.page-header{height:60vh;position:relative;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff}.gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:3rem}@media(min-width:768px){.gallery-grid{grid-template-columns:repeat(4,1fr)}.gallery-grid img:first-child{grid-column:span 2;grid-row:span 2}}.gallery-grid img{width:100%;height:100%;object-fit:cover;border-radius:var(--radius);aspect-ratio:4/3;cursor:pointer}.amenities-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;list-style:none;margin-top:2rem}.amenities-list li{display:flex;align-items:center;gap:.5rem}.contact-form{max-width:600px;margin:0 auto;background:var(--color-surface);padding:2rem;border-radius:var(--radius);box-shadow:var(--shadow-sm)}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500}.form-group input,.form-group textarea{width:100%;padding:.75rem;border:1px solid #e2e8f0;border-radius:var(--radius);font-family:inherit}.form-group textarea{height:150px;resize:vertical}.map-container{width:100%;height:400px;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-md);margin-top:2rem}.map-container iframe{width:100%;height:100%;border:0}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.lightbox{display:none;position:fixed;z-index:1000;top:0;left:0;width:100%;height:100%;background-color:#000000f2;justify-content:center;align-items:center}.lightbox.active{display:flex}.lightbox-img{max-height:90vh;max-width:90vw;object-fit:contain;box-shadow:0 0 20px #00000080}.lightbox-close{position:absolute;top:20px;right:30px;color:#fff;font-size:40px;cursor:pointer;z-index:1001}.lightbox-prev,.lightbox-next{position:absolute;top:50%;transform:translateY(-50%);color:#fff;font-size:30px;cursor:pointer;padding:20px;background:#ffffff1a;border-radius:50%;transition:background .3s;-webkit-user-select:none;user-select:none}.lightbox-prev:hover,.lightbox-next:hover{background:#ffffff4d}.lightbox-prev{left:20px}.lightbox-next{right:20px}footer{background-color:var(--color-primary);color:#fff;padding:3rem 0;text-align:center}footer a{color:#ffffffb3}footer a:hover{color:#fff}
