/* Career openings use the existing Navjeevan type and colour palette. */
.career-openings{background:var(--paper);padding-top:85px}
.openings-heading{display:grid;grid-template-columns:1.3fr 1fr;gap:8%;align-items:end;margin-bottom:48px}
.openings-heading h2{margin-bottom:0;font-size:clamp(38px,4.8vw,70px)}
.openings-intro>p{font-size:18px;line-height:1.6;max-width:400px;margin:0 0 20px}
.openings-preview{display:inline-block;font-size:9px;line-height:1.5;letter-spacing:1.25px;color:#8a684e;border-bottom:1px solid #de9e6e70;padding-bottom:7px}
.openings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.opening-card{position:relative;display:flex;flex-direction:column;min-width:0;padding:32px 34px;background:#f6f3ed;border:1px solid #22382b16;border-radius:28px;transition:background .35s,border-color .35s,box-shadow .35s}
.opening-card:hover{background:#fffdf9;border-color:#de9e6e90;box-shadow:0 18px 44px #22382b09}
.opening-top{display:flex;align-items:center;gap:14px;margin-bottom:32px}
.opening-number{font-size:14px;color:#946744}
.opening-department{font-size:10px;letter-spacing:1.2px;line-height:1.5;color:#657067}
.opening-top>.icon{margin-left:auto;width:40px;height:40px;padding:10px;border:1px solid #22382b25;border-radius:50%;flex-shrink:0}
.opening-card h3{font-size:clamp(28px,3vw,42px);font-weight:300;line-height:1.12;letter-spacing:-.025em;margin:0 0 19px}
.opening-card>p{font-size:16px;line-height:1.65;color:#657067;max-width:450px;margin-bottom:28px}
.opening-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:auto 0 27px;padding-top:22px;border-top:1px solid #22382b20}
.opening-meta dt{font-size:9px;letter-spacing:1.2px;color:#788174;margin-bottom:7px}
.opening-meta dd{font-size:15px;margin:0}
.opening-apply{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;align-self:flex-start;min-height:48px;min-width:175px;padding:14px 22px;background:var(--green);color:white;border:0;border-radius:99px;font-size:11px;letter-spacing:1px;cursor:pointer;transition:background .25s,color .25s}
.opening-apply:hover{background:#ab704a;color:#fff}
.opening-apply .icon{width:18px;height:18px}
.career-openings .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.opening-apply:focus-visible,.application-close:focus-visible{outline:2px solid #b87c51;outline-offset:4px}
.job-application{position:fixed;inset:0;width:min(760px,94vw);max-width:94vw;max-height:90dvh;padding:0;margin:auto;border:0;border-radius:28px;background:#f6f3ed;color:var(--green);overflow-y:auto;overscroll-behavior:contain;box-shadow:0 30px 100px #10251e55}
.job-application::backdrop{background:#10251ed6;backdrop-filter:blur(9px)}
.application-shell{position:relative;padding:40px 44px}
.application-close{position:absolute;right:22px;top:22px;width:42px;height:42px;display:grid;place-items:center;border:1px solid #22382b35;border-radius:50%;cursor:pointer;transition:background .2s}
.application-close:hover{background:#e4dfd7}
.application-close .icon{width:21px;height:21px}
.application-shell>.eyebrow{font-size:10px;letter-spacing:1.7px;color:#946744;padding-right:48px}
.application-shell>h2{font-size:clamp(36px,5vw,52px);line-height:1.05;font-weight:300;letter-spacing:-.03em;margin:20px 0 25px}
.application-position{display:grid;gap:8px;border-top:1px solid #22382b20;border-bottom:1px solid #22382b20;padding:18px 0;margin-bottom:25px}
.application-position>span{font-size:9px;letter-spacing:1.5px;color:#946744}
.application-position>strong{font-size:21px;line-height:1.3;font-weight:400}
.application-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px 20px}
.application-fields>div{min-width:0}
.application-wide{grid-column:1/-1}
.application-fields label:not(.resume-dropzone){display:block;font-size:13px;margin-bottom:8px}
.application-fields label>span:not(.field-optional){color:#946744}
.field-optional{font-size:9px;letter-spacing:.7px;color:#7d857c;margin-left:7px}
.application-fields input:not([type=file]),.application-fields select,.application-fields textarea{width:100%;min-height:46px;padding:12px 13px;border:1px solid #22382b35;border-radius:10px;background:#fffdf9;color:var(--green);font:inherit;font-size:16px;box-sizing:border-box;transition:border-color .2s,box-shadow .2s}
.application-fields textarea{resize:vertical;min-height:88px}
.application-fields input:focus,.application-fields select:focus,.application-fields textarea:focus{outline:0;border-color:#b87c51;box-shadow:0 0 0 3px #de9e6e26}
.application-fields input::placeholder,.application-fields textarea::placeholder{color:#7b857d;font-size:14px}
.resume-dropzone{position:relative;display:flex;align-items:center;gap:17px;min-height:94px;padding:22px;border:1px dashed #8e9a8f;border-radius:14px;background:#eee9e380;cursor:pointer;transition:background .2s,border-color .2s}
.resume-dropzone:hover,.resume-dropzone.is-dragging,.resume-dropzone:focus-within{background:#de9e6e16;border-color:#b87c51}
.resume-dropzone.has-file{border-style:solid;border-color:#708c76;background:#22382b07}
.resume-dropzone>svg{width:27px;height:27px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.resume-dropzone>span{min-width:0}
.resume-dropzone strong{display:block;font-size:14px;font-weight:400;line-height:1.5;overflow-wrap:anywhere}
.resume-dropzone small{display:block;font-size:11px;line-height:1.5;color:#657067;margin-top:4px}
.resume-dropzone input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.resume-error{color:#984838;font-size:12px;line-height:1.5;margin:7px 0 0}
.resume-error:empty{display:none}
.application-submit-row{display:flex;align-items:center;gap:22px;margin-top:28px}
.application-submit-row>p{font-size:11px;line-height:1.6;color:#707b72;margin:0;max-width:240px}
.application-submit-row .button{margin-left:auto;flex-shrink:0;font-size:11px;padding:16px 20px}
.application-status{background:#22382b;color:#fff;border-radius:12px;padding:18px 20px;font-size:14px;line-height:1.6;margin:22px 0 0}
.application-status[hidden]{display:none}
.job-application[open] .application-shell{animation:application-enter .28s ease-out}
@keyframes application-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){.career-openings{padding:65px 6% 72px}.openings-heading{grid-template-columns:1fr;gap:23px;margin-bottom:30px}.openings-heading h2{font-size:39px}.openings-intro>p{font-size:15px;line-height:1.65;margin-bottom:16px}.openings-preview{font-size:8px}.openings-grid{grid-template-columns:1fr;gap:18px}.opening-card{padding:25px 24px;border-radius:23px}.opening-top{margin-bottom:25px;gap:10px}.opening-department{font-size:9px;letter-spacing:1px}.opening-card h3{font-size:33px}.opening-card>p{font-size:14px;margin-bottom:22px}.opening-meta{gap:8px;margin-bottom:23px;padding-top:18px}.opening-meta dt{font-size:8px;letter-spacing:.8px}.opening-meta dd{font-size:13px}.opening-apply{min-height:46px;min-width:165px}.job-application{width:94vw;max-height:92dvh;border-radius:22px}.application-shell{padding:32px 22px}.application-close{right:16px;top:16px;width:38px;height:38px}.application-shell>h2{font-size:40px;margin:20px 0}.application-position>strong{font-size:19px}.application-fields{grid-template-columns:1fr;gap:16px}.application-wide{grid-column:auto}.resume-dropzone{padding:18px 15px;gap:13px}.application-submit-row{flex-direction:column-reverse;align-items:stretch;gap:15px;margin-top:24px}.application-submit-row .button{margin:0;width:100%;justify-content:center;font-size:12px}.application-submit-row>p{max-width:none}.application-status{font-size:13px;padding:16px}}
@media(prefers-reduced-motion:reduce){.job-application[open] .application-shell{animation:none}.opening-card,.opening-apply{transition:none}}
