
/* page-specific CSS only (contact page) */
.contact-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(40px,6vw,88px);align-items:start}

/* left column: contact form with VISIBLE labels above each field */
.contact-form{max-width:none;margin-top:0;flex-direction:column}
.contact-form .field{display:flex;flex-direction:column;width:100%;margin-bottom:22px}
.contact-form label{position:static;left:auto;display:block;font-family:"IBM Plex Mono",monospace;font-size:12.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--sand);margin-bottom:9px}
.contact-form select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M1 1l6 6 6-6' fill='none' stroke='%23C6B9A2' stroke-width='1.6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:44px;cursor:pointer;color:var(--bone)}
.contact-form select option{background:var(--ink-2);color:var(--bone)}
.contact-form textarea{resize:vertical;min-height:140px;line-height:1.6}
.contact-form .send{margin-top:6px}
.contact-form .note{color:var(--stone);font-size:12.5px;margin-top:16px;max-width:44ch}

/* right column: contact details + rights block */
.contact-side{border-left:1px solid var(--line);padding-left:clamp(24px,3vw,44px)}
.contact-side .kicker{margin-bottom:16px;display:block}
.contact-side h2{font-family:"Newsreader",serif;font-weight:400;font-size:clamp(26px,3.4vw,40px);letter-spacing:-.015em;line-height:1.08;margin-bottom:18px}
.contact-side p{color:var(--sand);max-width:44ch}
.contact-side .rights-lead{margin-bottom:28px}
.contact-lines{list-style:none;border-top:1px solid var(--line);margin-top:4px}
.contact-lines li{display:flex;flex-direction:column;gap:4px;padding:18px 0;border-bottom:1px solid var(--line)}
.contact-lines .k{font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--stone)}
.contact-lines .v{color:var(--bone);font-size:16px}
.contact-lines a.v{color:var(--ember);transition:color .3s var(--ease)}
.contact-lines a.v:hover{color:var(--ember-hi)}

/* native Odoo form: thank-you banner + result line; keep the redesign look and block Bootstrap .form-control bleed */
.form-thanks{background:rgba(180,112,47,.12);border:1px solid var(--ember);border-radius:var(--r);color:var(--bone);padding:15px 20px;margin-bottom:34px;font-size:15px;line-height:1.5}
.contact-form .s_website_form_input{box-shadow:none;margin:0}
.contact-form #s_website_form_result{width:100%;color:var(--ember);font-size:13px}
.contact-form #s_website_form_result:empty{display:none}
.contact-form .note a{color:var(--ember);transition:color .3s var(--ease)}
.contact-form .note a:hover{color:var(--ember-hi)}
.contact-form .form-control{background:var(--ink-2);border:1px solid var(--line);color:var(--bone);border-radius:var(--r);font-size:15px}
.contact-form .form-control:focus{border-color:var(--ember);box-shadow:none}
.contact-form .s_website_form_input.is-invalid,.contact-form .is-invalid{border-color:#c0563a;background-image:none}

@media(max-width:820px){
  .contact-grid{grid-template-columns:1fr;gap:52px}
  .contact-side{border-left:0;padding-left:0;border-top:1px solid var(--line);padding-top:40px}
}
