.contact{min-height:100vh;padding-top:100px;position:relative}.contact-hero{text-align:left;opacity:0;padding:6rem 8rem 4rem;animation:.8s ease-out .1s forwards fadeUp}.contact-hero h1{color:#2c2c2c;letter-spacing:.03em;font-size:4.5rem;font-weight:400}.contact-section{padding:4rem 8rem}.contact-grid{grid-template-columns:1fr 1fr;gap:4rem;margin-bottom:4rem;display:grid}.contact-info h2,.booking-card h2{color:#2c2c2c;margin-bottom:1.5rem;font-size:2rem;font-weight:400}.contact-intro{color:#000;opacity:0;margin-bottom:2rem;font-size:1.1rem;font-weight:300;line-height:1.8;animation:.8s ease-out .2s forwards fadeUp}.contact-details{flex-direction:column;gap:2rem;display:flex}.contact-item{opacity:0;align-items:start;gap:1rem;animation:.8s ease-out forwards fadeUp;display:grid}.contact-item:first-child{animation-delay:.2s}.contact-item:nth-child(2){animation-delay:.3s}.contact-item:nth-child(3){animation-delay:.4s}.contact-item:nth-child(4){animation-delay:.5s}.contact-item:nth-child(5){animation-delay:.6s}.contact-item h3{color:#2c2c2c;margin-bottom:.5rem;font-size:1.2rem;font-weight:400}.contact-item p{color:#5a5a5a;margin:0;font-size:1rem;font-weight:300;line-height:1.6}.contact-item a{color:#2c2c2c;font-weight:400;text-decoration:none;transition:opacity .3s}.contact-item a:hover{opacity:.6}.contact-note{color:#999;margin-top:.3rem;font-size:.9rem;font-style:italic}.booking-section{flex-direction:column;gap:2rem;display:flex}.booking-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);text-align:center;opacity:0;background:#ffffffb3;border-radius:16px;padding:2.5rem;animation:.8s ease-out .3s forwards fadeUp;box-shadow:0 4px 16px #00000014}.booking-card p{color:#5a5a5a;margin-bottom:2rem;font-size:1.05rem;font-weight:300;line-height:1.6}.booking-note{color:#999;margin-top:1.5rem;margin-bottom:0;font-size:.95rem;font-style:italic}.location-placeholder{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;background:#ffffffb3;border-radius:16px;animation:.8s ease-out .4s forwards fadeUp;overflow:hidden;box-shadow:0 4px 16px #00000014}.community-note{text-align:left;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;background:#ffffffb3;border-radius:16px;margin:4rem 0 0;padding:2.5rem;animation:.8s ease-out .6s forwards fadeUp}.community-note h3{color:#2c2c2c;margin-bottom:1rem;font-size:1.5rem;font-weight:400}.community-note p{color:#5a5a5a;margin:0;font-size:1.05rem;font-weight:300;line-height:1.8}.contact-form{flex-direction:column;gap:1.25rem;margin-top:1.5rem;display:flex}.form-group{flex-direction:column;display:flex}.contact-form input,.contact-form textarea{color:#2c2c2c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffc;border:1.5px solid #2c2c2c33;border-radius:12px;outline:none;width:100%;padding:1rem 1.25rem;font-family:inherit;font-size:1rem;font-weight:300;transition:all .3s}.contact-form input:focus,.contact-form textarea:focus{background:#fffffff2;border-color:#2c2c2c;box-shadow:0 0 0 3px #2c2c2c0d}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#999;font-weight:300}.contact-form textarea{resize:vertical;min-height:120px;line-height:1.6}.contact-form button[type=submit]{letter-spacing:.08em;width:100%;margin-top:.5rem;padding:1rem 2rem;font-size:.95rem;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.contact-form button[type=submit]:hover{transform:translateY(-2px);box-shadow:0 6px 20px #2c2c2c26}.contact-form button[type=submit]:active{transform:translateY(0);box-shadow:0 2px 8px #2c2c2c1a}@media (max-width:968px){.contact-grid{grid-template-columns:1fr;gap:3rem}}@media (max-width:768px){.contact-hero{padding:4rem 2rem}.contact-hero h1{font-size:3rem}.contact-section{padding:3rem 2rem}.contact-form input,.contact-form textarea{padding:.875rem 1rem;font-size:.95rem}.contact-form button[type=submit]{padding:.875rem 1.75rem;font-size:.9rem}}
