.contact-page{background:#f5f2ec;color:#181818}
.contact-hero{padding:clamp(6.6rem,9vw,8.2rem) 0 clamp(3.6rem,6vw,5.2rem);background:#171717;color:#fff}
.contact-hero-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.7fr);gap:clamp(3rem,7vw,7rem);align-items:end}
.contact-hero h1{max-width:860px;margin:.65rem 0 1.35rem}
.contact-lead{max-width:720px;margin:0;color:rgba(255,255,255,.7);line-height:1.65}
.contact-direct{padding:1.6rem 0 0;border-top:1px solid rgba(255,255,255,.24)}
.contact-direct-label{display:block;margin:0 0 .55rem;color:#c8a96b;font-size:.7rem;text-transform:uppercase;letter-spacing:.18em}
.contact-direct-label:not(:first-child){margin-top:1.35rem}
.contact-direct a{display:inline-block;color:#fff;font-size:clamp(1rem,1.5vw,1.28rem);text-decoration:none;border-bottom:1px solid rgba(255,255,255,.35)}
.contact-direct p{margin:1.25rem 0 0;color:rgba(255,255,255,.58);font-size:.9rem;line-height:1.65}
.contact-main{padding:clamp(4.8rem,8vw,7.5rem) 0}
.contact-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.76fr);gap:clamp(3rem,7vw,7rem);align-items:start}
.contact-info h2,.contact-form-card h2,.contact-process h2{margin:.6rem 0 1.15rem}
.contact-info>p{max-width:680px;color:#5a5751;font-size:1rem;line-height:1.75}
.contact-topics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:2.5rem;border-top:1px solid #cbc5bb}
.contact-topics article{padding:1.55rem 1.35rem 1.7rem 0;border-bottom:1px solid #cbc5bb}
.contact-topics article:nth-child(odd){border-right:1px solid #cbc5bb}
.contact-topics article:nth-child(even){padding-left:1.35rem}
.contact-topics span{display:block;margin-bottom:1rem;color:#8b7042;font-size:.7rem;letter-spacing:.14em}
.contact-topics h3{margin:0 0 .55rem;font-size:1.08rem;line-height:1.25}
.contact-topics p{margin:0;color:#66615a;font-size:.92rem;line-height:1.6}
.contact-form-card{position:sticky;top:108px;padding:clamp(1.8rem,3.4vw,3rem);background:#fff;border:1px solid rgba(16,20,26,.09);box-shadow:0 14px 38px rgba(30,25,20,.07)}
.contact-form{margin-top:1.6rem}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.form-row{margin-bottom:1.05rem}
.form-row label{display:block;margin-bottom:.42rem;font-size:.76rem;font-weight:700;letter-spacing:.03em}
.form-row input,.form-row select,.form-row textarea{width:100%;padding:.85rem .9rem;border:1px solid #d3cec5;background:#fbfaf8;color:#191919;font:inherit;font-size:.95rem;border-radius:0;transition:border-color .2s ease,box-shadow .2s ease}
.form-row textarea::placeholder{color:#98928a}.form-row input:focus,.form-row select:focus,.form-row textarea:focus{outline:none;border-color:#8f7548;box-shadow:0 0 0 3px rgba(154,123,67,.10)}
.form-row textarea{resize:vertical}.form-consent{display:grid;grid-template-columns:auto 1fr;gap:.65rem;align-items:start;margin:.9rem 0 1.35rem;color:#5e5a54;font-size:.79rem;line-height:1.5}.form-consent input{margin-top:.18rem}.form-consent a{text-decoration:underline;text-underline-offset:2px}
.contact-submit{width:100%;border:0;cursor:pointer}.contact-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.form-message{margin:1.25rem 0;padding:.9rem 1rem;font-size:.9rem;line-height:1.5}.form-message-success{background:#edf5ec;color:#294628;border-left:3px solid #507c4d}.form-message-error{background:#f8ecea;color:#6d2924;border-left:3px solid #a34f47}
.contact-process{padding:clamp(4rem,7vw,6.6rem) 0;background:#ddd7cd}.contact-process-grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(3rem,7vw,7rem)}
.contact-process ol{margin:0;padding:0;list-style:none;border-top:1px solid rgba(24,24,24,.22)}.contact-process li{display:grid;grid-template-columns:minmax(170px,.65fr) 1fr;gap:1.7rem;padding:1.35rem 0;border-bottom:1px solid rgba(24,24,24,.22)}.contact-process strong{font-size:.92rem}.contact-process span{color:#5d5952;font-size:.92rem;line-height:1.6}
@media(max-width:960px){.contact-hero-grid,.contact-layout,.contact-process-grid{grid-template-columns:1fr}.contact-form-card{position:static}.contact-hero h1{max-width:760px}}
@media(max-width:640px){.contact-hero{padding-top:5.6rem}.contact-topics,.form-grid{grid-template-columns:1fr}.contact-topics article:nth-child(odd){border-right:0}.contact-topics article:nth-child(even){padding-left:0}.contact-process li{grid-template-columns:1fr;gap:.4rem}.contact-form-card{padding:1.35rem}.contact-direct{margin-top:.5rem}}

/* Profili professionali — v3.2 */
.contact-social{margin-top:20px;padding-top:18px;border-top:1px solid rgba(255,255,255,.18)}
.contact-social-links{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:7px}
.contact-social-links a{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;font-weight:700;letter-spacing:.02em;color:#fff;border-bottom:1px solid rgba(255,255,255,.35);padding-bottom:2px}
.contact-social-links a:hover{border-color:var(--gold);color:#d7b873}
