/* Project request page — builds on assets/site.css */
.p-hero{padding:72px 0 36px;max-width:760px}
.p-title{font-size:clamp(40px,5vw,66px);margin:16px 0 20px}
.p-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:32px;align-items:start;padding-bottom:72px}
.p-form{background:linear-gradient(135deg,#202742b3,#11172d);border:1px solid #ffffff17;border-radius:22px;padding:34px}
.p-form fieldset{border:0;margin:0 0 26px;padding:0}
.p-form legend{font-size:12px;text-transform:uppercase;letter-spacing:2px;font-weight:700;color:#97e5f4;margin-bottom:14px;padding:0}
.p-form label{display:flex;flex-direction:column;gap:7px;font-size:14px;font-weight:700;margin-bottom:18px;color:#e8edff}
.p-form abbr{text-decoration:none;color:#86e8ff}
.p-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.p-form input,.p-form select,.p-form textarea{font:inherit;font-weight:400;font-size:16px;color:#f2f5ff;background:#0b1226;border:1px solid #3a4262;border-radius:10px;padding:12px 14px;width:100%}
.p-form textarea{resize:vertical;min-height:150px;line-height:1.5}
.p-form select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#86e8ff 50%),linear-gradient(135deg,#86e8ff 50%,transparent 50%);background-position:calc(100% - 20px) 52%,calc(100% - 14px) 52%;background-size:6px 6px;background-repeat:no-repeat;padding-right:40px}
.p-form select option{background:#0b1226;color:#f2f5ff}
.p-form input:focus-visible,.p-form select:focus-visible,.p-form textarea:focus-visible{outline:3px solid #86e8ff80;outline-offset:2px;border-color:#86e8ff}
.p-form [aria-invalid="true"]{border-color:#ff8a9a}
.p-error{font-size:13px;font-weight:400;color:#ffb3bd}
.p-hint{font-size:13px;font-weight:400;color:#b8c5dd}
.p-count{font-size:12px;font-weight:400;color:#8f9bb8;align-self:flex-end}
.p-consent{flex-direction:row!important;align-items:flex-start;gap:12px!important;font-weight:400!important;line-height:1.5}
.p-consent input{width:20px!important;height:20px;flex:0 0 20px;margin-top:2px;accent-color:#86e8ff}
.p-consent a{color:#86e8ff}
.p-turnstile{min-height:70px;margin:6px 0 18px}
.p-actions{display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.p-form button{font:inherit;font-weight:700;cursor:pointer}
.p-form button[disabled]{opacity:.6;cursor:progress}
.p-hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.p-status{border-radius:14px;padding:16px 18px;margin-bottom:24px;font-size:15px;line-height:1.5}
.p-status.ok{background:#1d4a3f;border:1px solid #7fe0b9}
.p-status.err{background:#4a1d2a;border:1px solid #ff8a9a}
.p-status:focus{outline:none}
.p-side{display:grid;gap:20px}
.p-side .card p{margin:0}
.p-side a{color:#86e8ff}
.p-steps{margin:16px 0 0;padding-left:20px;color:#b8c5dd;display:grid;gap:10px}
.p-steps strong{color:#f2f5ff}
.p-privacy{border-top:1px solid #ffffff20;padding:48px 0 72px;max-width:820px;color:#b8c5dd;font-size:14px}
.p-privacy h2{font-size:28px;color:#f2f5ff}
.p-privacy a{color:#86e8ff}
@media(max-width:900px){.p-layout{grid-template-columns:1fr}.p-hero{padding:48px 0 24px}}
@media(max-width:600px){.p-row{grid-template-columns:1fr;gap:0}.p-form{padding:22px;border-radius:18px}}
.p-consent + .p-error{display:block;margin:-8px 0 14px 32px}
