/* ORWL – Formulaire de contact Asana (charte vkd_winston) */
.oca{max-width:760px}
.oca .oca-titre{font-family:"PP",Georgia,serif;font-size:clamp(26px,4vw,39px);font-style:italic;font-weight:200;line-height:110%;margin:0 0 16px}
.oca .oca-intro{margin:0 0 40px}
.oca .oca-sub{font-family:"PP",Georgia,serif;font-size:11px;text-transform:uppercase;letter-spacing:0.02em;line-height:160%;padding-bottom:8px;border-bottom:0.5px solid #D0D0D0;margin:40px 0 20px}
.oca .oca-sub:first-of-type{margin-top:0}
.oca .oca-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 30px}
@media only screen and (max-width:700px){.oca .oca-grid{grid-template-columns:1fr}}
.oca .oca-field{display:flex;flex-direction:column;justify-content:flex-end;margin:0 0 22px}
.oca .oca-field>label,.oca .oca-label{display:block;font-size:15px;font-weight:500;line-height:150%;margin:0 0 8px}
.oca .req{font-weight:400}
.oca .oca-help{display:block;font-size:12px;letter-spacing:0.3px;color:#313131;margin:-4px 0 8px}
.oca input[type=text],.oca input[type=email],.oca textarea{display:block;width:100%;box-sizing:border-box;border:1px solid #000;border-radius:0;background:#fff;padding:13px 16px;font:inherit;font-size:15px;font-weight:400;color:#000;-webkit-appearance:none;appearance:none;transition:border-color 200ms ease-out}
.oca textarea{resize:vertical;min-height:170px;line-height:160%}
.oca input:focus,.oca textarea:focus{outline:none;border-color:#000;box-shadow:inset 0 0 0 0.5px #000}
.oca .is-invalid input,.oca .is-invalid textarea{border-color:#000;box-shadow:inset 0 0 0 1px #000;background:#F2F2F2}
.oca .oca-field .oca-msg{font-size:12px;margin-top:6px;font-family:"PP",Georgia,serif;font-style:italic}
.oca .oca-drop{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:32px 20px;border:0.5px solid #000;border-radius:4px;background:#fff;cursor:pointer;text-align:center;transition:background 300ms ease-out}
.oca .oca-drop:hover,.oca .oca-drop.is-over{background:#F2F2F2}
.oca .oca-drop:focus-visible{outline:2px solid #000;outline-offset:2px}
.oca .oca-drop input[type=file]{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.oca .oca-drop-btn{display:inline-block;padding:10px 20px;border:0.5px solid #D0D0D0;border-radius:4px;background:#F2F2F2;font-size:14px;font-weight:500}
.oca .oca-drop-txt{font-size:13px;color:#313131}
.oca ul.oca-files{margin:10px 0 0;padding:0}
.oca ul.oca-files li{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0 !important;margin:0;border-bottom:0.5px solid #D0D0D0;font-size:14px}
.oca ul.oca-files li::before{content:none !important;display:none !important}
.oca ul.oca-files li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.oca ul.oca-files li small{color:#313131;margin-left:8px}
.oca ul.oca-files button{flex:none;width:30px;height:30px;border-radius:50%;border:0.5px solid #000;background:#fff;cursor:pointer;font-size:15px;line-height:1;padding:0;color:#000}
.oca ul.oca-files button:hover{background:#000;color:#fff}
.oca .oca-hp{position:absolute !important;left:-9999px !important;width:1px;height:1px;overflow:hidden}
.oca .oca-cta{margin-top:34px}
.oca .oca-go[disabled]{opacity:0.5;cursor:wait}
.oca .oca-err{font-family:"PP",Georgia,serif;font-style:italic;font-size:15px;margin-top:14px;min-height:1em}
.oca .oca-legal{font-size:12px;letter-spacing:0.3px;line-height:160%;color:#313131;margin-top:24px}
.oca .oca-legal a{color:inherit;text-decoration:underline}
.oca .oca-done{padding:40px 0}
.oca .oca-done:focus{outline:none}
