/* Ortak başvuru formu (İlk / Uzatma / Geçiş) */
.af-wrap{max-width:1120px;margin:28px auto 56px;padding:0 16px;display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:28px;align-items:start;font-family:Montserrat,system-ui,sans-serif;color:#2b2b2b}
.af-wrap *,.af-wrap *::before,.af-wrap *::after{box-sizing:border-box}
.af-card{background:#fff;border-radius:18px;box-shadow:0 8px 30px rgba(90,0,0,.09);padding:34px 34px 30px;border-top:5px solid #8b0000}
.af-card h2{margin:0 0 6px;font-size:1.6rem;color:#8b0000;font-weight:700}
.af-sub{margin:0 0 24px;color:#666;font-size:.97rem}
.af-group{border:0;margin:0 0 26px;padding:0;min-width:0}
.af-group>legend{padding:0;margin:0 0 14px;font-size:.78rem;letter-spacing:.09em;text-transform:uppercase;font-weight:700;color:#8b0000;display:flex;align-items:center;gap:10px;width:100%}
.af-group>legend::after{content:"";flex:1;height:1px;background:#eadad7}
.af-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.af-field{margin-bottom:16px;min-width:0}
.af-field label{display:block;margin-bottom:6px;font-weight:600;font-size:.92rem;color:#3a3a3a}
.af-field input[type=text],.af-field input[type=email],.af-field input[type=tel],.af-field input[type=date],.af-field select{width:100%;height:48px;padding:0 14px;border:1.5px solid #d9d2d0;border-radius:10px;background:#fff;font:inherit;font-size:1rem;color:#222;transition:border-color .15s,box-shadow .15s}
.af-field select{appearance:none;-webkit-appearance:none;padding-right:38px;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' fill='none' stroke='%238b0000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/></svg>");background-repeat:no-repeat;background-position:right 14px center}
.af-field input:focus,.af-field select:focus{outline:none;border-color:#c1121f;box-shadow:0 0 0 4px rgba(193,18,31,.12)}
.af-field input.error{border-color:#d32f2f;background:#fff5f5}
.af-field input.success{border-color:#2e7d32}
.af-field small{display:block;margin-top:6px;color:#777;font-size:.82rem}
.af-field .error-message{color:#c62828;font-size:.84rem;min-height:0;margin:4px 0 0}
.af-field .success-message{font-size:0;min-height:0;margin:0}
.af-foreign{padding:16px;border-radius:12px;background:#fdf3f1;border:1px dashed #e4b4ad;margin-top:6px}
.af-foreign[hidden]{display:none!important}

/* Başvuru şekli kartları */
.af-types{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.af-type{position:relative;display:block;cursor:pointer}
.af-type input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.af-type-box{display:block;height:100%;padding:16px 14px;border:1.5px solid #d9d2d0;border-radius:12px;background:#fff;transition:border-color .15s,box-shadow .15s,background .15s}
.af-type-box b{display:block;font-size:1rem;color:#8b0000;margin-bottom:4px}
.af-type-box small{display:block;font-size:.8rem;line-height:1.35;color:#6a6a6a}
.af-type:hover .af-type-box{border-color:#c1121f}
.af-type input:checked+.af-type-box{border-color:#8b0000;background:#fff4f2;box-shadow:0 0 0 3px rgba(139,0,0,.14)}
.af-type input:focus-visible+.af-type-box{outline:3px solid #ff4500;outline-offset:2px}

/* Sözleşmeler */
.af-contracts .checkbox-group{margin:0 0 10px}
.af-contracts .checkbox-container{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border:1.5px solid #e6dedc;border-radius:10px;background:#fcfaf9;margin:0}
.af-contracts .checkbox-container input[type=checkbox]{width:20px;height:20px;margin:2px 0 0;flex:none;accent-color:#8b0000}
.af-contracts .checkbox-container label{flex:1;font-size:.9rem;line-height:1.45;font-weight:400;margin:0}
.af-contracts .checkbox-container .link{display:inline-block;margin-left:4px;color:#8b0000;font-weight:600;text-decoration:underline;cursor:pointer}
.af-contracts .checkbox-container.checked{border-color:#2e7d32;background:#f3faf4}
.af-contracts .contract-help{font-size:.84rem;color:#6a6a6a;margin:6px 0 0}
.af-captcha{margin:0 0 18px}.af-captcha[hidden]{display:none}

.af-submit{display:block;width:100%;height:54px;border:0;border-radius:12px;background:linear-gradient(90deg,#8b0000,#c1121f);color:#fff;font:inherit;font-weight:700;font-size:1.05rem;cursor:pointer;box-shadow:0 8px 20px rgba(139,0,0,.25);transition:transform .15s,box-shadow .15s}
.af-submit:hover{transform:translateY(-1px);box-shadow:0 12px 24px rgba(139,0,0,.3)}
.af-submit:active{transform:none}

/* Yan kartlar */
.af-side{position:sticky;top:90px;display:grid;gap:16px}
.af-info{background:#fff;border-radius:16px;padding:22px;box-shadow:0 6px 22px rgba(90,0,0,.07)}
.af-info h3{margin:0 0 12px;font-size:1.05rem;color:#8b0000}
.af-info ol{margin:0;padding-left:20px;display:grid;gap:10px;font-size:.92rem;color:#555}
.af-info p{margin:0 0 10px;font-size:.92rem;color:#555}
.af-info--call{background:linear-gradient(135deg,#4a0000,#8b0000);color:#fff}
.af-info--call h3,.af-info--call p{color:#fff}
.af-info--call a{display:inline-block;font-weight:700;font-size:1.15rem;color:#fff;text-decoration:none;border-bottom:2px solid rgba(255,255,255,.5)}

@media (max-width:900px){
  .af-wrap{grid-template-columns:1fr;margin-top:18px}
  .af-side{position:static;order:2}
  .af-card{padding:24px 18px}
}
@media (max-width:560px){
  .af-row,.af-types{grid-template-columns:1fr}
  .af-type-box{display:flex;flex-direction:column}
}
