.contact-page{min-height:100vh;background:#faf2e9;color:#34201b}.contact-header{display:flex;width:min(1180px,calc(100% - 48px));height:104px;margin:auto;align-items:center;justify-content:space-between}.contact-header img{width:126px;height:78px;object-fit:contain;mix-blend-mode:multiply}.contact-header>a:last-child{font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.contact-intro{padding:90px max(24px,calc((100vw - 1180px)/2));background:linear-gradient(90deg,rgba(59,22,17,.96),rgba(107,43,36,.66)),url(/images/villa39-exterior.webp) 50%/cover;color:#fff}.contact-form-kicker,.contact-kicker{color:#d09657;font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase}.contact-intro h1{max-width:900px;margin-top:16px;font:400 clamp(62px,8vw,108px)/.96 var(--display);letter-spacing:-.035em}.contact-intro p{max-width:780px;margin-top:22px;color:rgba(255,255,255,.78);font-size:17px}.contact-layout{display:grid;width:min(1180px,calc(100% - 48px));margin:100px auto;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:clamp(28px,4vw,56px);gap:clamp(28px,4vw,56px);align-items:stretch}.contact-layout>*{min-width:0}.contact-details{display:flex;flex-direction:column;padding-top:28px}.contact-details .contact-benefits{flex:1 1}.contact-details h2{margin-bottom:35px;font:400 clamp(44px,5vw,68px)/1 var(--display)}.contact-detail{display:grid;grid-template-columns:44px 1fr;grid-gap:15px;gap:15px;margin-bottom:25px}.contact-detail>span{display:grid;width:38px;height:38px;border:1px solid rgba(107,43,36,.18);border-radius:50%;color:#a9624d;place-items:center}.contact-detail small{display:block;margin-bottom:5px;color:#a9624d;font-size:8px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.contact-detail address,.contact-detail p{color:#78645d;font-size:14px;font-style:normal}.contact-detail a{font-size:14px;overflow-wrap:anywhere}.contact-detail>div{grid-column:2;min-width:0}.contact-benefits{margin-top:38px;padding:30px;border:1px solid rgba(107,43,36,.18)}.contact-benefits h3{color:#a9624d;font-size:10px;letter-spacing:.16em;text-transform:uppercase}.contact-benefits ul{display:grid;grid-gap:11px;gap:11px;margin-top:20px;list-style:none;color:#78645d;font-size:13px}.contact-benefits li:before{margin-right:10px;color:#d09657;content:"✓"}.contact-form{padding:clamp(28px,3.5vw,54px);background:#fffaf4;box-shadow:0 24px 70px rgba(79,31,25,.11)}.contact-form h2{margin-top:12px;color:#6b2b24;font:500 clamp(46px,5vw,66px)/1 var(--display)}.contact-form>p{margin-top:15px;color:#78645d}.contact-fields{display:grid;grid-template-columns:1fr 1fr;grid-gap:20px 16px;gap:20px 16px;margin-top:35px}.contact-fields label{display:grid;grid-gap:7px;gap:7px}.contact-fields label>span{font-size:8px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.contact-wide{grid-column:1/-1}.contact-fields input,.contact-fields select,.contact-fields textarea{width:100%;border:1px solid rgba(107,43,36,.22);background:transparent;color:#34201b;padding:13px 14px;outline:none}.contact-fields textarea{resize:vertical}.contact-fields input:focus,.contact-fields select:focus,.contact-fields textarea:focus{border-color:#a9624d}.contact-honeypot{position:absolute!important;left:-9999px!important}.contact-privacy{display:flex;gap:10px;margin:22px 0 18px;color:#78645d;font-size:11px}.contact-privacy input{margin-top:4px}.contact-privacy a{text-decoration:underline}.contact-submit{min-height:52px;margin-top:22px;padding:0 24px;border:0;background:#6b2b24;color:#fff;cursor:pointer;font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.contact-submit:disabled{cursor:not-allowed;opacity:.5}.contact-message{margin-top:18px;padding:12px 14px;font-size:13px}.contact-message.success{background:#e3efe4;color:#295d31}.contact-message.error{background:#f4dfdc;color:#7a2019}@media(max-width:820px){.contact-layout{grid-template-columns:1fr;gap:45px}.contact-intro{padding-block:72px}.contact-form{padding:38px}}@media(max-width:560px){.contact-header{width:calc(100% - 28px);height:84px}.contact-header img{width:98px;height:62px}.contact-header>a:last-child{max-width:150px;text-align:right}.contact-intro{padding:60px 18px}.contact-intro h1{font-size:clamp(54px,16vw,72px)}.contact-intro p{font-size:15px}.contact-layout{width:calc(100% - 28px);margin:62px auto}.contact-form{padding:30px 22px}.contact-fields{grid-template-columns:1fr}.contact-wide{grid-column:auto}.contact-form h2{font-size:46px}.contact-submit{width:100%}}