@import url("fonts.css");
:root{--blue:#0E4F8D;--blue-dark:#083a69;--ice:#E5F3F9;--ink:#17324a;--muted:#5c7285;--line:#d7e3ea;--white:#fff;--danger:#a93434;--success:#26724b;--radius:16px;--shadow:0 20px 55px rgba(14,79,141,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:"Poppins",sans-serif;line-height:1.6}a{color:var(--blue);text-underline-offset:3px}button,input,textarea,select{font:inherit}.public-page{min-height:100vh;background:linear-gradient(90deg,var(--ice) 0 7px,#fff 7px 100%)}
.public-header{max-width:1060px;margin:0 auto;padding:34px 40px 26px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.tapv-logo{display:block;width:148px;height:auto}.program-tag{color:var(--blue);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.form-shell{max-width:860px;margin:0 auto;padding:70px 40px 100px}.form-intro{max-width:750px;margin-bottom:54px}.eyebrow{display:block;color:var(--blue);font-weight:800;font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;margin-bottom:10px}.form-intro h1,.success-shell h1{margin:0;color:var(--blue-dark);font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.15rem,5vw,4rem);font-weight:500;line-height:1.08;letter-spacing:-.035em}.form-intro p{font-size:1.08rem;color:var(--muted);max-width:680px;margin:22px 0 0}.application-form{background:#fff}.form-section{border:0;padding:0;margin:0 0 62px}.form-section>legend{width:100%;display:flex;align-items:center;gap:14px;padding:0 0 14px;margin-bottom:28px;border-bottom:2px solid var(--blue);color:var(--blue-dark);font-family:Georgia,serif;font-size:1.35rem}.form-section>legend span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--ice);color:var(--blue);font-family:"Poppins",sans-serif;font-size:.68rem;font-weight:800}.field{margin:0 0 26px}.field>label,.choice-group>legend{display:block;color:var(--ink);font-weight:700;margin-bottom:8px}.field b{color:var(--blue)}.field-help{margin:-4px 0 9px;color:var(--muted);font-size:.88rem}.field input[type=text],.field input[type=email],.field input[type=tel],.field input[type=number],.field input[type=date],.field textarea,.field select{width:100%;border:1px solid #b8cbd7;background:#fff;border-radius:9px;color:var(--ink);padding:13px 14px;outline:none;transition:border-color .18s,box-shadow .18s}.field textarea{min-height:132px;resize:vertical}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(14,79,141,.12)}.choice-group{border:0;margin:0;padding:0}.choices{display:flex;flex-wrap:wrap;gap:10px}.choice{position:relative;cursor:pointer}.choice input{position:absolute;opacity:0}.choice span{display:block;border:1px solid #b8cbd7;border-radius:9px;padding:10px 17px;background:#fff;transition:.18s}.choice input:focus+span{outline:3px solid rgba(14,79,141,.18);outline-offset:2px}.choice input:checked+span{border-color:var(--blue);background:var(--ice);color:var(--blue-dark);font-weight:700}.check-line{display:flex!important;align-items:flex-start;gap:12px;font-weight:500!important;cursor:pointer}.check-line input{width:20px;height:20px;margin:3px 0 0;accent-color:var(--blue);flex:none}.field-error{color:var(--danger);font-size:.86rem;font-weight:600;margin:7px 0 0}.has-error input,.has-error textarea,.has-error select{border-color:var(--danger)!important}.alert{padding:14px 17px;border-radius:9px;margin:0 0 24px}.alert-error{background:#fff0f0;color:#812828;border-left:4px solid var(--danger)}.submit-row{border-top:1px solid var(--line);padding-top:28px;display:flex;align-items:center;justify-content:space-between;gap:20px}.submit-row p{font-size:.85rem;color:var(--muted)}.submit-row b{color:var(--blue)}.button{appearance:none;border:0;border-radius:9px;padding:14px 23px;font-weight:800;cursor:pointer;transition:transform .18s,box-shadow .18s,background .18s}.button-primary{background:var(--blue);color:#fff;box-shadow:0 10px 24px rgba(14,79,141,.2)}.button-primary:hover{background:var(--blue-dark);transform:translateY(-1px)}.button:focus-visible{outline:3px solid rgba(14,79,141,.28);outline-offset:3px}.button:disabled{opacity:.5;cursor:not-allowed}.honeypot{position:absolute;left:-9999px}.closed-card{padding:38px;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.closed-card h2{font-family:Georgia,serif;font-size:1.7rem;margin:12px 0 4px}.closed-card p{margin:0;color:var(--muted)}.status-dot{display:block;width:12px;height:12px;border-radius:50%;background:#d5a13c}.public-footer{max-width:1060px;margin:0 auto;padding:28px 40px;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:var(--muted);font-size:.83rem}.success-shell{max-width:720px;margin:0 auto;padding:100px 40px 140px;text-align:center}.success-mark{width:62px;height:62px;margin:0 auto 28px;display:grid;place-items:center;border-radius:50%;background:var(--ice);color:var(--blue);font-size:1.7rem;font-weight:800}.success-shell p{color:var(--muted);max-width:560px;margin:22px auto}.reference-card{display:inline-flex;flex-direction:column;gap:4px;margin:16px auto;padding:20px 42px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:var(--shadow)}.reference-card span{text-transform:uppercase;letter-spacing:.13em;color:var(--muted);font-size:.68rem;font-weight:700}.reference-card strong{font-size:1.4rem;color:var(--blue);letter-spacing:.04em}.preview-bar{position:sticky;top:0;z-index:20;text-align:center;padding:8px;background:#f5c65c;color:#392d0c;font-size:.82rem;font-weight:800}.muted{font-size:.85rem!important}
@media(max-width:700px){.public-page{background:#fff}.public-header{padding:24px 22px}.tapv-logo{width:118px}.program-tag{max-width:130px;text-align:right;font-size:.65rem}.form-shell{padding:42px 22px 70px}.form-intro{margin-bottom:40px}.form-intro h1{font-size:2.35rem}.form-section{margin-bottom:48px}.choices{display:grid;grid-template-columns:1fr}.choice span{width:100%}.choice{width:100%}.submit-row{align-items:stretch;flex-direction:column}.submit-row .button{width:100%}.public-footer{padding:24px 22px;flex-direction:column;gap:5px}.success-shell{padding:70px 22px}.reference-card{padding:18px 25px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.turnstile-field{display:flex;flex-direction:column;gap:7px;min-height:65px;margin:0 0 28px}.turnstile-field .cf-turnstile{width:100%}
.field input[type=file]{width:100%;border:1px dashed #9eb9ca;border-radius:10px;background:var(--ice);padding:10px;color:var(--muted)}.field input[type=file]::file-selector-button{margin-right:12px;border:0;border-radius:7px;background:var(--blue);color:#fff;padding:9px 13px;font:inherit;font-weight:700;cursor:pointer}.field input[type=file]:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(14,79,141,.12)}.file-help{margin:7px 0 0}
