
.contact-hero{min-height:680px;display:flex;align-items:flex-end;color:white;background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.62)),url("../images/katala-villas-gallery.webp") center/cover}
.contact-hero-content{padding:0 0 95px;max-width:820px}.contact-hero h1{font-size:clamp(50px,6vw,82px)}.contact-hero p{font-size:18px;max-width:650px;color:rgba(255,255,255,.9);margin:22px 0 0}
.contact-section{background:var(--ivory)}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start}.contact-info h2{font-size:clamp(36px,4vw,54px)}.contact-info>p{color:var(--muted);font-size:15px;max-width:520px}.contact-item{border-top:1px solid var(--line);padding:18px 0}.contact-item strong{display:block;font:21px Georgia,serif;margin-bottom:5px}.contact-item span,.contact-item a{font-size:13px;color:var(--muted)}.contact-item a:hover{color:var(--green)}
.contact-form{background:white;padding:42px;border:1px solid var(--line);box-shadow:0 18px 45px rgba(0,0,0,.06)}.contact-form h2{font-size:34px;margin-bottom:8px}.form-intro{color:var(--muted);font-size:13px;margin-bottom:25px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);background:#fff;padding:13px 14px;font:inherit;font-size:13px;color:var(--ink);outline:none}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--green)}.field textarea{min-height:145px;resize:vertical}.contact-form .btn{margin-top:20px}
.contact-trust{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:55px}.trust{border-top:1px solid var(--line);padding-top:18px}.trust strong{display:block;font:21px Georgia,serif}.trust span{font-size:12px;color:var(--muted)}
.contact-bottom{padding:95px 20px;text-align:center;background:var(--green);color:white}.contact-bottom p{max-width:620px;margin:20px auto 28px;color:rgba(255,255,255,.78)}.contact-bottom .eyebrow{color:#d7b39f}
@media(max-width:900px){.contact-grid{grid-template-columns:1fr}.contact-trust{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.contact-hero{min-height:620px}.contact-hero-content{padding-bottom:70px}.contact-form{padding:28px 20px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.contact-trust{grid-template-columns:1fr}.contact-section{padding-top:65px}}

.form-notice{padding:13px 15px;margin:0 0 20px;font-size:13px;line-height:1.5;border:1px solid var(--line);background:#f8f6f1;color:var(--ink)}
.form-notice-success{border-color:#b7cbbd;background:#f1f7f2;color:#244b35}
.form-notice-error{border-color:#dfb4ab;background:#fff5f2;color:#7b2e22}
.captcha-wrap{margin-top:20px;overflow-x:auto;max-width:100%}.form-privacy{font-size:11px;color:var(--muted);margin:12px 0 0}
.honeypot{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}
