/* Villa Talent application form — storefront language, theme-independent */
.vtp-form{--gold:#C5A059;--gold-deep:#B08D3B;--noir:#1A1A1A;--cream:#F7F3EC;--line:#E2D9C8;--muted:#8A7E68;--ink:#3A3A3A;--bad:#B91C1C;background:var(--cream);color:var(--ink);border:1px solid var(--line);max-width:760px;margin:0 auto;font-size:15px;line-height:1.6;font-family:"Hanken Grotesk",system-ui,-apple-system,"Segoe UI",sans-serif}
.vtp-form *{box-sizing:border-box}
.vtp-top{background:var(--noir);color:#fff;padding:18px 28px;display:flex;align-items:center;gap:12px}
.vtp-top i{width:18px;height:18px;background:var(--gold);display:inline-block;clip-path:polygon(0 0,50% 60%,100% 0,100% 40%,50% 100%,0 40%)}
.vtp-top b{letter-spacing:.3em;font-weight:500;font-size:16px}
.vtp-top span{margin-left:auto;font-size:12px;color:#C9C4BA}
.vtp-prog{display:flex;height:4px;background:var(--line)}
.vtp-prog i{display:block;background:var(--gold);transition:width .3s}
.vtp-bd{padding:26px 28px 30px;background:#fff}
.vtp-form h2{font-family:"Bodoni Moda",Georgia,"Times New Roman",serif;font-weight:500;font-size:26px;color:var(--noir);margin:0 0 4px;line-height:1.2}
.vtp-form h3{font-family:Georgia,serif;font-weight:500;font-size:19px;color:var(--noir);margin:14px 0 8px}
.vtp-sec{font-size:12px;color:var(--muted);margin-bottom:18px}
.vtp-form p{margin:0 0 12px}
.vtp-sub{font-size:13px;color:var(--muted)}
.vtp-intro ul{padding-left:0;list-style:none;margin:12px 0}
.vtp-intro li{padding-left:22px;position:relative;margin:4px 0}
.vtp-intro li::before{content:"";position:absolute;left:0;top:9px;width:10px;height:10px;background:var(--gold);clip-path:polygon(0 0,50% 60%,100% 0,100% 40%,50% 100%,0 40%)}
.vtp-q{margin-bottom:16px}
.vtp-q.vtp-hidden{display:none}
.vtp-q label,.vtp-q .vtp-lbl{display:block;font-weight:600;font-size:14px;color:var(--noir);margin-bottom:5px}
.vtp-req{color:var(--gold-deep)}
.vtp-q small.vtp-em{font-style:italic}
.vtp-q small{display:block;color:var(--muted);font-size:12px;margin-top:3px}
.vtp-form input[type=text],.vtp-form input[type=email],.vtp-form input[type=tel],.vtp-form input[type=number],.vtp-form select,.vtp-form textarea{width:100%;border:1px solid var(--line);border-radius:0;background:#fff;color:var(--noir);height:44px;padding:0 12px;font-size:15px;font-family:inherit;line-height:1.4}
.vtp-form textarea{height:auto;min-height:96px;padding:10px 12px}
.vtp-form input:focus,.vtp-form select:focus,.vtp-form textarea:focus{outline:2px solid var(--gold);outline-offset:0;border-color:var(--gold)}
.vtp-q.has-err input,.vtp-q.has-err select,.vtp-q.has-err textarea,.vtp-consent.has-err{border-color:var(--bad)}
.vtp-opts{display:flex;flex-wrap:wrap;gap:8px}
.vtp-opts label{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);padding:9px 12px;font-weight:400;font-size:14px;cursor:pointer;background:#fff;margin:0;min-height:44px;color:var(--ink)}
.vtp-opts label:has(input:checked){border-color:var(--noir);background:var(--noir);color:#fff}
.vtp-opts input{width:auto;height:auto;margin:0;accent-color:var(--gold)}
.vtp-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.vtp-nav{display:flex;gap:10px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}
.vtp-cta{height:48px;padding:0 22px;background:var(--noir);color:#fff;border:0;border-radius:0;font-size:15px;font-weight:500;margin-left:auto;cursor:pointer;font-family:inherit}
.vtp-cta:hover{background:var(--gold);color:var(--noir)}
.vtp-back{height:48px;padding:0 18px;border:1px solid var(--line);border-radius:0;background:#fff;color:var(--noir);cursor:pointer;font-size:15px;font-family:inherit}
.vtp-back:hover{border-color:var(--noir)}
.vtp-save{height:48px;padding:0 14px;border:0;border-radius:0;background:none;color:var(--gold-deep);cursor:pointer;font-size:14px;font-family:inherit;text-decoration:underline;text-underline-offset:3px}
.vtp-save:hover{color:var(--noir)}
@media (max-width:640px){.vtp-nav{flex-wrap:wrap}.vtp-save{order:3;width:100%;text-align:left;padding:0;height:36px}}
.vtp-file{border:1px dashed var(--line);padding:14px;display:flex;flex-wrap:wrap;align-items:center;gap:10px;background:var(--cream)}
.vtp-file.ok{border-style:solid;border-color:var(--noir)}
.vtp-file input[type=file]{font-size:13px;max-width:100%}
.vtp-file-chip{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--line);padding:4px 8px;font-size:13px}
.vtp-x{border:0;background:none;color:var(--bad);font-size:16px;cursor:pointer;line-height:1;padding:0 2px}
.vtp-review dl{display:grid;grid-template-columns:200px 1fr;gap:6px 12px;font-size:14px;margin:0}
.vtp-review dt{color:var(--muted)}.vtp-review dd{margin:0}
.vtp-consent{border:1px solid var(--line);padding:14px;background:var(--cream);display:flex;gap:10px;align-items:flex-start;font-size:14px;margin-top:14px}
.vtp-consent input{width:auto;height:auto;margin-top:5px;accent-color:var(--gold);flex:none}
.vtp-consent label{font-weight:400;margin:0;color:var(--ink)}
.vtp-done{text-align:center;padding:30px 10px}
.vtp-ref{font-family:ui-monospace,Menlo,monospace;font-size:22px;letter-spacing:.1em;border:1px solid var(--line);display:inline-block;padding:10px 20px;margin:14px 0}
.vtp-err{color:var(--bad);font-size:13px;margin-top:4px}
.vtp-err-top{border:1px solid var(--bad);padding:10px 12px;margin-bottom:14px}
.vtp-notice{border-left:3px solid var(--gold);background:var(--cream);padding:10px 12px;margin-bottom:14px;font-size:14px}
.vtp-hp{position:absolute;left:-9999px;top:-9999px;height:0;overflow:hidden}
.vtp-update{margin-top:18px;border-top:1px solid var(--line);padding-top:12px;font-size:14px}
.vtp-update summary{cursor:pointer;color:var(--gold-deep);font-weight:600}
.vtp-update form{margin-top:10px}
.cf-turnstile{margin-top:14px}
@media (max-width:640px){.vtp-bd{padding:18px 16px}.vtp-row,.vtp-review dl{grid-template-columns:1fr}.vtp-top{padding:14px 16px}}
@media (prefers-reduced-motion:reduce){.vtp-prog i{transition:none}}
.vtp-stop{border:1px solid var(--bad);border-left-width:4px;background:#FFF5F5;color:var(--bad);padding:12px 14px;font-size:14px;font-weight:500}
