.recruitment-page{max-width:1120px;margin:0 auto;color:#101b40;font-size:1rem;line-height:1.9}.recruitment-nav{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;padding:1rem 0;border-bottom:1px solid #e8e3ee;margin-bottom:2rem}.recruitment-nav a{display:inline-flex;gap:.6rem;align-items:center;color:#622b95;font-weight:700}.recruitment-nav svg{width:22px;height:22px}.recruitment-heading{padding:1rem 0 2.25rem;max-width:780px}.recruitment-heading h1{font-size:clamp(1.9rem,4vw,2.8rem);line-height:1.45;font-weight:800;margin:.6rem 0}.recruitment-heading p,.recruitment-card p{color:#565b70}.recruitment-eyebrow{color:#692f99;font-weight:700;font-size:.9rem}.recruitment-page h2{font-size:1.4rem;font-weight:750;margin:0 0 1rem}.recruitment-page h3{font-size:1.18rem;font-weight:750;line-height:1.65}.recruitment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}.recruitment-card{background:white;border:1px solid #e3deea;border-radius:22px;padding:1.75rem;box-shadow:0 8px 28px #151b4008;overflow-wrap:anywhere}.recruitment-card>*+*{margin-top:1rem}.recruitment-general{background:linear-gradient(125deg,#f7f2fb,#fff);border-top:4px solid #692f99}.recruitment-general small{display:block;font-size:.875rem;color:#62657a}.recruitment-badge{display:inline-flex;border-radius:24px;background:#f0e8f8;color:#582881;padding:.25rem .85rem;font-size:.875rem;font-weight:700}.recruitment-tags{display:flex;gap:.6rem;flex-wrap:wrap}.recruitment-tags span{font-size:.9rem;padding:.2rem .75rem;background:#f5f6fa;border-radius:8px}.recruitment-empty>svg{width:36px;height:36px;color:#6a359a}.recruitment-notice{padding:1.25rem;background:#f6f2fa;border:1px solid #ded3ed;border-radius:14px;margin:1.2rem 0}.recruitment-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.recruitment-wide{grid-column:1/-1}.recruitment-field label{display:block;font-weight:700;margin-bottom:.5rem}.recruitment-input:not([type=checkbox]){display:block;width:100%;min-width:0;min-height:48px;border:1px solid #c8c7d4;border-radius:11px;background:#fff;color:#19213d;padding:.65rem .8rem;font-size:1rem;line-height:1.6}.recruitment-input:disabled{background:#f3f4f7;color:#55586b}.recruitment-input:focus{outline:3px solid #e0c9f0;border-color:#6a309a}.recruitment-field small,.recruitment-muted{display:block;font-size:.875rem;color:#62657a;margin-top:.45rem}.recruitment-required,.recruitment-form .errorlist{color:#ae2334}.recruitment-form .errorlist{font-size:.9rem;margin-top:.35rem}.recruitment-errors{padding:1rem;border:1px solid #d8a0a9;border-radius:12px;background:#fff3f4;margin-bottom:1.5rem}.recruitment-privacy{background:#f7f8fb;padding:1.3rem;border-radius:14px;margin:1.75rem 0}.recruitment-privacy h2{font-size:1.15rem}.recruitment-privacy p{font-size:.925rem}.recruitment-privacy a{text-decoration:underline}.recruitment-consent{display:flex;align-items:flex-start;gap:.8rem;margin-top:1rem}.recruitment-consent input{width:20px;height:20px;flex-shrink:0;margin-top:.5rem;accent-color:#672e99}.recruitment-prose p{margin:1rem 0;white-space:normal}.recruitment-data{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.6rem 1.25rem}.recruitment-data dt{color:#686b7b}.recruitment-data dd{font-weight:600;min-width:0;overflow-wrap:anywhere}.recruitment-timeline{list-style:none;border-right:2px solid #e0d3ed;padding-right:1.2rem}.recruitment-timeline li{position:relative;padding-bottom:1.7rem}.recruitment-timeline li:before{content:"";position:absolute;right:-1.65rem;top:.6rem;width:12px;height:12px;border-radius:50%;background:#713c9c;border:2px solid white}.recruitment-timeline time{display:block;color:#75758a;font-size:.875rem}.recruitment-withdraw{border-top:1px solid #e6e1ea;padding-top:1.5rem;margin-top:1.5rem}.recruitment-withdraw summary{cursor:pointer;color:#8c263d;font-weight:700}.recruitment-page .btn-primary,.recruitment-page .btn-outline{min-height:46px;line-height:1.6;white-space:normal}.recruitment-page a:focus-visible,.recruitment-page button:focus-visible,.recruitment-page summary:focus-visible{outline:3px solid #9d7fc1;outline-offset:4px}@media(max-width:680px){.recruitment-grid,.recruitment-form-grid{grid-template-columns:1fr}.recruitment-card{padding:1.2rem;border-radius:16px}.recruitment-heading{padding:0 0 1.5rem}.recruitment-data{grid-template-columns:1fr;gap:.15rem}.recruitment-data dd{margin-bottom:.75rem}.recruitment-form button[type=submit]{width:100%}}
