/* "Partner with us" (university/institute) page - scoped under .uni-partner
   so it never collides with the global .hero/.field/.f-row rules already
   used by other public pages sharing certifyrecruit.css. Reuses the shared
   :root variables (--pine, --mint, --gold, --coral, --line, etc.) defined
   in certifyrecruit.css - this file doesn't redeclare them. Mirrors
   employer-interest.css's own structure/conventions. */

.uni-partner .uni-hero{background:linear-gradient(160deg,#04102E 0%,#012C8A 55%,#3650F1 100%);position:relative;overflow:hidden}
.uni-partner .uni-hero::after{content:"";position:absolute;right:-100px;top:-90px;width:380px;height:380px;border-radius:50%;border:46px solid rgba(7,226,250,.07)}
.uni-partner .uni-hero-in{max-width:900px;margin:0 auto;padding:70px 24px 74px;position:relative;z-index:1;color:#EAF1FF;text-align:center}
.uni-partner .uni-hero-kick{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:#3EE8FF;font-weight:700;margin-bottom:14px;display:flex;align-items:center;justify-content:center;gap:9px}
.uni-partner .uni-hero-in h1{font-size:clamp(30px,4.6vw,46px);font-weight:800;max-width:20ch;line-height:1.12;margin:0 auto}
.uni-partner .uni-hero-in h1 em{font-style:normal;color:#3EE8FF}
.uni-partner .uni-hero-in p{color:#9FB4E8;font-size:16.5px;max-width:56ch;margin:16px auto 0;line-height:1.65}
.uni-partner .uni-hero-cta{display:flex;gap:13px;justify-content:center;margin-top:28px;flex-wrap:wrap}
.uni-partner .btn-ghostw{border:1.5px solid rgba(255,255,255,.3);color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 26px;border-radius:13px;font-weight:700;font-size:14.5px}
.uni-partner .btn-ghostw:hover{background:rgba(255,255,255,.08)}
.uni-partner .btn-gold{background:var(--gold);color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 26px;border-radius:13px;font-weight:700;font-size:14.5px}
.uni-partner .btn-gold:hover{background:#067AAF}

.uni-partner .uni-section{max-width:1120px;margin:0 auto;padding:70px 24px}
.uni-partner .uni-section.tight{padding-top:0}
.uni-partner .uni-sec-kick{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--pine);font-weight:700;text-align:center;margin-bottom:12px}
.uni-partner .uni-sec-h{font-size:clamp(26px,3.6vw,34px);font-weight:800;text-align:center;max-width:26ch;margin:0 auto 12px}
.uni-partner .uni-sec-sub{text-align:center;color:var(--ink-soft);max-width:62ch;margin:0 auto 44px;font-size:15.5px}

.uni-partner .uni-audience-split{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.uni-partner .uni-aud-card{border-radius:22px;padding:30px;position:relative;overflow:hidden}
.uni-partner .uni-aud-card.students{background:linear-gradient(155deg,#0A1F52,#3650F1);color:#EAF1FF}
.uni-partner .uni-aud-card.institute{background:var(--card);border:1.5px solid var(--line);box-shadow:var(--shadow)}
.uni-partner .uni-aud-tag{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;padding:5px 12px;border-radius:99px;margin-bottom:14px}
.uni-partner .uni-aud-card.students .uni-aud-tag{background:rgba(7,226,250,.16);color:#3EE8FF}
.uni-partner .uni-aud-card.institute .uni-aud-tag{background:var(--mint);color:var(--pine)}
.uni-partner .uni-aud-card h3{font-size:21px;margin-bottom:20px}
.uni-partner .uni-aud-card.students h3{color:#fff}
.uni-partner .uni-benefit-row{display:flex;gap:12px;margin-bottom:17px}
.uni-partner .uni-benefit-row:last-child{margin-bottom:0}
.uni-partner .uni-benefit-row .bi{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:16px;flex:none}
.uni-partner .uni-aud-card.students .bi{background:rgba(255,255,255,.1)}
.uni-partner .uni-aud-card.institute .bi{background:var(--mint);color:var(--pine)}
.uni-partner .uni-benefit-row b{font-size:13.5px;display:block}
.uni-partner .uni-benefit-row span{font-size:12.5px;line-height:1.55}
.uni-partner .uni-aud-card.students .uni-benefit-row span{color:#9FB4E8}
.uni-partner .uni-aud-card.institute .uni-benefit-row span{color:var(--ink-soft)}

.uni-partner .uni-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.uni-partner .uni-step-card{background:var(--card);border:1px solid var(--line);border-radius:17px;padding:22px 20px;position:relative}
.uni-partner .uni-step-num{width:32px;height:32px;border-radius:10px;background:var(--pine);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-weight:700;font-size:13px;margin-bottom:14px}
.uni-partner .uni-step-card h4{font-size:14.5px;margin-bottom:7px}
.uni-partner .uni-step-card p{font-size:12.5px;color:var(--ink-soft);line-height:1.55}
@media(min-width:900px){
  .uni-partner .uni-step-card:not(:last-child)::after{content:"→";position:absolute;right:-19px;top:24px;color:var(--line);font-size:18px;font-weight:700}
}

.uni-partner .uni-trust-strip{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:26px 30px;display:flex;align-items:center;gap:26px;flex-wrap:wrap;box-shadow:var(--shadow)}
.uni-partner .uni-ts-item{flex:1;min-width:160px;display:flex;align-items:center;gap:12px}
.uni-partner .uni-ts-item .ti{font-size:22px}
.uni-partner .uni-ts-item b{font-size:13px;display:block}
.uni-partner .uni-ts-item span{font-size:11.5px;color:var(--ink-soft)}

.uni-partner .uni-form-section{background:var(--card);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.uni-partner .uni-form-shell{max-width:640px;margin:0 auto;padding:70px 24px}
.uni-partner .uni-form-card{background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:34px 36px;position:relative;overflow:hidden}
.uni-partner .uni-form-head h2{font-size:23px;margin-bottom:7px}
.uni-partner .uni-form-head p{color:var(--ink-soft);font-size:13.5px;margin-bottom:26px}
.uni-partner .uni-f-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.uni-partner .uni-field{margin-bottom:16px}
.uni-partner .uni-field label{display:block;font-size:12px;font-weight:700;margin-bottom:6px}
.uni-partner .uni-field label .req{color:var(--coral)}
.uni-partner .uni-field label .opt{color:var(--ink-soft);font-weight:500;font-family:var(--mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.04em}
.uni-partner .uni-field input,.uni-partner .uni-field select,.uni-partner .uni-field textarea{width:100%;border:1.5px solid var(--line);border-radius:11px;padding:11px 13px;font-size:14px;color:var(--ink);background:#fff;transition:border-color .15s}
.uni-partner .uni-field input:focus,.uni-partner .uni-field select:focus,.uni-partner .uni-field textarea:focus{border-color:var(--pine);outline:none}
.uni-partner .uni-field textarea{resize:vertical;min-height:76px}
.uni-partner .uni-field .err{display:none;color:var(--coral);font-size:11.5px;margin-top:5px;font-weight:600}
.uni-partner .uni-field.invalid input,.uni-partner .uni-field.invalid select,.uni-partner .uni-field.invalid textarea{border-color:var(--coral);background:var(--coral-soft)}
.uni-partner .uni-field.invalid .err{display:block}
.uni-partner .uni-consent{display:flex;gap:10px;align-items:flex-start;font-size:12px;color:var(--ink-soft);margin:6px 0 20px}
.uni-partner .uni-consent input{margin-top:2px;accent-color:var(--pine)}
.uni-partner .uni-submit-btn{width:100%;background:var(--pine);color:#fff;border-radius:13px;padding:15px;font-size:14.5px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:9px;border:none;cursor:pointer}
.uni-partner .uni-submit-btn:hover{background:var(--pine-deep)}
.uni-partner .uni-submit-btn:disabled{opacity:.65}
.uni-partner .uni-spinner{width:16px;height:16px;border-radius:50%;border:2.5px solid rgba(255,255,255,.4);border-top-color:#fff;animation:uni-spin .7s linear infinite;display:none}
.uni-partner .uni-submit-btn.loading .uni-spinner{display:inline-block}
.uni-partner .uni-form-fine{text-align:center;font-size:11.5px;color:var(--ink-soft);margin-top:12px}
.uni-partner .uni-form-error{display:none;text-align:center;font-size:12.5px;color:var(--coral);margin-top:12px;background:var(--coral-soft);border-radius:10px;padding:10px 14px}
.uni-partner .uni-form-error.on{display:block}
@keyframes uni-spin{to{transform:rotate(360deg)}}

.uni-partner .uni-success{display:none;text-align:center;padding:14px 4px 6px;animation:uni-fadeUp .4s ease}
.uni-partner .uni-success.on{display:block}
.uni-partner .uni-form-card.success-mode .uni-form-head,.uni-partner .uni-form-card.success-mode form{display:none}
.uni-partner .uni-success-ring{width:78px;height:78px;border-radius:50%;background:var(--mint);display:flex;align-items:center;justify-content:center;margin:0 auto 20px;animation:uni-pop .5s cubic-bezier(.3,1.4,.5,1) both}
.uni-partner .uni-success-ring svg{width:38px;height:38px}
.uni-partner .uni-success-ring path{stroke:var(--pine);stroke-width:3;fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:40;stroke-dashoffset:40;animation:uni-draw .5s ease .35s forwards}
.uni-partner .uni-success h2{font-size:22px;margin-bottom:9px}
.uni-partner .uni-success h2 em{font-style:normal;color:var(--pine)}
.uni-partner .uni-success p{color:var(--ink-soft);font-size:14px;max-width:42ch;margin:0 auto;line-height:1.6}
.uni-partner .uni-success-meta{display:flex;justify-content:center;gap:22px;margin-top:24px;flex-wrap:wrap}
.uni-partner .uni-sm-item{text-align:center}
.uni-partner .uni-sm-item b{font-family:var(--mono);font-size:13.5px;display:block;color:var(--ink)}
.uni-partner .uni-sm-item span{font-size:10.5px;color:var(--ink-soft)}
.uni-partner .uni-success-next{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px 18px;margin-top:24px;text-align:left}
.uni-partner .uni-success-next b{font-size:12.5px;display:block;margin-bottom:8px}
.uni-partner .uni-success-next ol{margin:0;padding-left:18px;font-size:12.5px;color:var(--ink-soft);line-height:1.9}
.uni-partner .uni-success-actions{display:flex;gap:10px;margin-top:22px;flex-wrap:wrap;justify-content:center}
@keyframes uni-fadeUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes uni-pop{0%{transform:scale(.5);opacity:0}60%{transform:scale(1.08)}100%{transform:scale(1);opacity:1}}
@keyframes uni-draw{to{stroke-dashoffset:0}}

@media(max-width:860px){
  .uni-partner .uni-audience-split{grid-template-columns:1fr}
  .uni-partner .uni-steps{grid-template-columns:1fr 1fr}
  .uni-partner .uni-step-card:not(:last-child)::after{display:none}
  .uni-partner .uni-f-row{grid-template-columns:1fr}
  .uni-partner .uni-trust-strip{flex-direction:column;align-items:stretch}
}
