.contact{position:relative;padding:8rem 0;overflow:hidden}.contact-bg{position:absolute;inset:0;z-index:0}.contact-glow{position:absolute;inset:0;background:radial-gradient(ellipse 60% 50% at 50% 100%,rgba(201,165,90,.06) 0,transparent 50%)}.contact-header{text-align:center;margin-bottom:4rem}.contact-header .section-subtitle{margin:0 auto}.contact-cards{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1.5rem;gap:1.5rem;margin-bottom:4rem}.contact-info-card{padding:2rem;background:var(--bg-card);border-radius:20px;border:1px solid rgba(201,165,90,.08);text-align:center;transition:all .4s ease}.contact-info-card:hover{border-color:rgba(201,165,90,.2);transform:translateY(-8px);box-shadow:0 20px 40px rgba(0,0,0,.2)}.card-icon{width:60px;height:60px;display:flex;align-items:center;justify-content:center;background:rgba(201,165,90,.1);border-radius:16px;color:var(--accent-primary);margin:0 auto 1rem}.card-icon svg{width:28px;height:28px}.contact-info-card h4{font-family:Playfair Display,serif;font-size:1.25rem;font-weight:600;margin-bottom:.75rem;color:var(--text-primary)}.contact-info-card p{font-size:.95rem;color:var(--text-secondary);line-height:1.6;margin-bottom:.5rem}.card-note{font-size:.8rem;color:var(--accent-primary);font-weight:500}.contact-main{display:grid;grid-template-columns:1fr 1fr;grid-gap:3rem;gap:3rem;align-items:start}.contact-form-wrapper{perspective:1000px}.contact-form{background:var(--bg-card);padding:2.5rem;border-radius:24px;border:1px solid rgba(201,165,90,.08);transform-style:preserve-3d;transition:box-shadow .3s,border-color .3s}.contact-form:hover{border-color:rgba(201,165,90,.2);box-shadow:0 25px 50px rgba(0,0,0,.3)}.contact-form h3{font-family:Playfair Display,serif;font-size:1.5rem;font-weight:600;margin-bottom:2rem;color:var(--text-primary)}.form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}.form-group{margin-bottom:1.25rem}.form-group label{display:block;font-size:.85rem;font-weight:500;color:var(--text-secondary);margin-bottom:.5rem}.form-group input,.form-group textarea{width:100%;padding:.875rem 1rem;background:var(--bg-secondary);border:1px solid rgba(201,165,90,.1);border-radius:12px;color:var(--text-primary);font-size:.95rem;font-family:inherit;transition:all .3s ease}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-muted)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 20px rgba(201,165,90,.1)}.form-group textarea{resize:vertical;min-height:120px}.submit-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:.75rem;padding:1rem 2rem;background:var(--gradient-premium);color:#0c0c0c;border:none;border-radius:12px;font-family:Space Grotesk,sans-serif;font-size:1rem;font-weight:600;cursor:pointer;transition:all .4s ease;box-shadow:0 4px 20px rgba(201,165,90,.25)}.submit-btn:hover{transform:translateY(-3px);box-shadow:0 10px 30px rgba(201,165,90,.4)}.submit-btn svg{width:18px;height:18px;transition:transform .3s}.submit-btn:hover svg{transform:translateX(5px) rotate(15deg)}.contact-map{border-radius:24px}.contact-map,.map-container{overflow:hidden;height:100%;min-height:400px}.map-container{width:100%;border-radius:16px}.map-container iframe,.map-placeholder{width:100%;height:100%;min-height:400px}.map-placeholder{background:var(--bg-card);border:1px solid rgba(201,165,90,.1);border-radius:24px;display:flex;align-items:center;justify-content:center}.map-content{text-align:center;padding:2rem}.map-content svg{width:60px;height:60px;color:var(--accent-primary);margin-bottom:1rem}.map-content h4{font-family:Playfair Display,serif;font-size:1.5rem;font-weight:600;margin-bottom:.5rem;color:var(--text-primary)}.map-content p{font-size:.95rem;color:var(--text-secondary);margin-bottom:1.5rem}.map-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:transparent;border:1px solid rgba(201,165,90,.3);border-radius:100px;color:var(--accent-primary);text-decoration:none;font-family:Space Grotesk,sans-serif;font-weight:600;font-size:.9rem;transition:all .3s ease}.map-btn:hover{background:var(--gradient-premium);border-color:transparent;color:#0c0c0c}@media (max-width:968px){.contact-main{grid-template-columns:1fr}.contact-map{order:-1;min-height:300px}}@media (max-width:768px){.contact{padding:5rem 0}.contact-cards{gap:1rem}.contact-cards,.form-row{grid-template-columns:1fr}.contact-form{padding:1.75rem}}