/* CONTACT.CSS */
.contact-section{padding:3rem 0;}
/* .contact-container substituída por .cancun-container */
.contact-header{text-align:center;max-width:60rem;margin:0 auto 3rem;padding:0 1rem;}
.contact-headline{font-family:'Playfair Display',serif;font-size:1.875rem;font-weight:600;margin:0 0 1.5rem;letter-spacing:-.025em;color:hsl(var(--foreground));}
.contact-emphasis{font-style:italic;color:hsl(var(--primary));}
.contact-intro{font-size:1rem;line-height:1.75;color:hsl(var(--muted-foreground));}
.contact-grid{display:grid;gap:2rem;margin:0 1rem;}

@media (min-width: 640px) {
    .contact-section{padding:4.5rem 0;}
    .contact-header{margin:0 auto 4rem;padding:0;}
    .contact-headline{font-size:2.25rem;}
    .contact-intro{font-size:1.125rem;}
    .contact-grid{gap:2.5rem;margin:0;}
}

@media (min-width: 768px) {
    .contact-section{padding:6rem 0;}
    .contact-header{margin:0 auto 5rem;}
    .contact-grid{gap:3rem;}
}
@media(min-width:1024px){.contact-grid{grid-template-columns:1fr 1fr;align-items:start;}}
.contact-form{background:hsla(var(--card)/.85);backdrop-filter:blur(6px);border:1px solid hsl(var(--border));border-radius:1.5rem;padding:1.5rem 1rem;display:flex;flex-direction:column;gap:1.25rem;box-shadow:var(--shadow-gentle);}

@media (min-width: 640px) {
    .contact-form{padding:2rem 1.5rem;}
}

@media (min-width: 768px) {
    .contact-form{padding:2.25rem 2rem;}
}
.contact-row{display:grid;gap:1.1rem;}
@media(min-width:640px){.contact-row{grid-template-columns:1fr 1fr;}}
.contact-field label{display:flex;flex-direction:column;font-size:.8rem;font-weight:500;letter-spacing:.05em;color:hsl(var(--foreground));gap:.4rem;}
.contact-field input,.contact-field select,.contact-field textarea{width:100%;padding:.85rem 1rem;border:1px solid hsl(var(--border));border-radius:.75rem;background:hsl(var(--input));font-family:inherit;font-size:.9rem;resize:vertical;transition:border-color .25s,box-shadow .25s;}
.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{outline:none;border-color:hsl(var(--primary));box-shadow:0 0 0 3px hsl(var(--primary)/.25);}
.contact-submit{margin-top:.5rem;padding:1rem 1.25rem;border:none;border-radius:.9rem;background:var(--gradient-gold);font-weight:600;letter-spacing:.03em;color:hsl(var(--secondary));cursor:pointer;transition:.4s;box-shadow:var(--shadow-elegant);}
.contact-submit:hover{transform:scale(1.04);}
.contact-info{display:grid;gap:1.25rem;}
.contact-info-item{display:flex;gap:1rem;padding:1.1rem 1rem;border:1px solid hsl(var(--border));border-radius:1rem;background:hsla(var(--background)/.6);backdrop-filter:blur(4px);align-items:flex-start;box-shadow:var(--shadow-gentle);}
.contact-info-icon{width:3rem;height:3rem;border-radius:50%;background:hsl(var(--primary)/.12);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.contact-info-item h3{margin:0 0 .35rem;font-size:.95rem;font-weight:600;letter-spacing:.03em;color:hsl(var(--foreground));}
.contact-info-item p{margin:0;font-size:.8rem;line-height:1.3;color:hsl(var(--muted-foreground));}
.contact-feedback{margin-top:1rem;padding:.9rem 1rem;border-radius:.75rem;font-size:.8rem;line-height:1.4;font-weight:500}
.contact-feedback-success{background:hsl(var(--primary)/.15);color:hsl(var(--secondary));}
.contact-feedback-error,.contact-feedback-incomplete{background:hsla(var(--coral)/.15);color:hsl(var(--coral));}
@media(min-width:768px){.contact-headline{font-size:3.75rem}}
