@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#17201e;--dark:#13201c;--dark2:#1d3129;--accent:#c7ee74;--green:#4b6856;--line:#dfdfd8;--muted:#717a73;--pale:#f7f8f4;--off:#f1f3ec;--radius:12px;--font:'DM Sans',sans-serif;--head:'Manrope',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:white;font:16px/1.65 var(--font)}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.container{max-width:1210px;margin:auto;padding:0 25px}.independent{background:#e4efce;color:#203f2c;padding:9px 24px;text-align:center;font-size:11.5px;line-height:1.45;font-weight:700;letter-spacing:.01em}.independent a{text-decoration:underline}.status-dot{display:inline-block;background:#55854b;height:7px;width:7px;border-radius:50%;margin-right:7px}.top{background:#fff;position:relative;z-index:10;border-bottom:1px solid #efefeb}.nav{display:flex;align-items:center;justify-content:space-between;min-height:86px;gap:20px}.brand{font:900 19px/1 var(--head);display:inline-flex;align-items:center;gap:11px;letter-spacing:-.07em;white-space:nowrap}.brandmark{display:grid;place-items:center;width:42px;height:42px;background:var(--dark);color:white;border-radius:12px;font-size:24px;letter-spacing:-2px;transform:skew(-4deg)}.brandmark span{color:var(--accent)}.brandlight{color:#7a8b78}.brand small{display:block;font:700 8px/2 var(--head);letter-spacing:.19em;color:#8b968e;margin-top:3px}.mainnav{display:flex;gap:26px;align-items:center}.mainnav a{font-size:13px;font-weight:700;transition:color .2s}.mainnav a:hover{color:#63874a}.mainnav .nav-cta{background:var(--dark);color:#fff;padding:12px 18px;border-radius:7px}.mainnav .nav-cta span{margin-left:14px;color:var(--accent)}.menu-toggle{display:none;background:none;border:none;font-size:27px;color:var(--dark)}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{font-family:var(--head);line-height:1.15;letter-spacing:-.047em}h1{font-size:clamp(40px,5.3vw,76px);font-weight:800}h2{font-size:clamp(30px,3.5vw,49px);font-weight:800}h3{font-size:21px}em{font-style:normal;color:#86a44f}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.18em;color:#648552;margin-bottom:22px}.eyebrow-light{color:var(--accent)}.mini-line{display:inline-block;width:21px;height:2px;background:var(--accent);vertical-align:middle;margin-right:9px}.muted{color:var(--muted)}.textlink{font-weight:800;text-decoration:none;color:#456f4d;font-size:13px;border-bottom:1px solid currentColor;padding-bottom:5px}.textlink:hover{color:#1b3a24}.btn{display:inline-flex;align-items:center;justify-content:center;gap:18px;background:var(--accent);color:var(--dark);font-size:13px;font-weight:800;letter-spacing:.008em;padding:15px 20px;border-radius:7px;border:1px solid transparent;transition:transform .2s}.btn:hover{transform:translateY(-2px)}.btn-dark{background:var(--dark);color:white}.btn-bright{background:var(--accent);color:#17231b}.btn-outline{background:transparent;color:white;border-color:rgba(255,255,255,.6)}.btn-secondary{background:#f0f2e9}.hero{height:610px;position:relative;overflow:hidden;background:#1a2925}.hero-photo{position:absolute;inset:0;background:url('https://images.unsplash.com/photo-1504307651254-35680f356dfd?auto=format&fit=crop&w=2000&q=85') center/cover no-repeat;filter:saturate(.65)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,25,19,.96),rgba(10,25,19,.80) 48%,rgba(10,25,19,.19)),linear-gradient(0deg,rgba(10,25,19,.4),transparent)}.hero-content{position:relative;color:#fff;padding-top:92px}.hero h1{font-size:clamp(42px,5.1vw,70px);max-width:810px;line-height:1.13;margin-bottom:22px}.hero h1 em{color:var(--accent)}.hero p{color:#cedbd1;max-width:670px;line-height:1.75;font-size:16px}.hero-buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.hero-trust{display:flex;gap:36px;margin-top:62px;color:#c9d5cb;font-size:11px;letter-spacing:.05em;text-transform:uppercase;font-weight:700}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding-top:35px;padding-bottom:40px;border-bottom:1px solid var(--line)}.feature{display:flex;align-items:flex-start;gap:14px;padding:8px 0}.feature-icon{display:grid;place-items:center;width:46px;height:46px;background:#edf4e6;color:#4f713c;border-radius:12px;font-size:24px;flex:0 0 46px}.feature h3{font-size:15px;margin:2px 0 5px}.feature p{font-size:12.5px;color:#7b857d;margin:0}.section{padding-top:90px;padding-bottom:90px}.section-muted{background:var(--pale)}.spotlight{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.spotlight-image img{width:100%;height:400px;object-fit:cover;border-radius:8px}.spotlight-copy h2{max-width:490px}.spotlight-copy p{max-width:510px;color:#657268;margin-bottom:17px}.spotlight-copy .textlink{display:inline-block;margin-top:10px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:22px;margin-bottom:33px}.section-head h2{margin-bottom:0}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.article-card{background:white;border:1px solid #e9eae6;border-radius:9px;overflow:hidden;transition:transform .25s,box-shadow .25s;display:flex;flex-direction:column}.article-card:hover{transform:translateY(-4px);box-shadow:0 14px 38px rgba(22,43,33,.09)}.card-img{height:184px;overflow:hidden;background:#bfc9b5}.card-img img{height:100%;width:100%;object-fit:cover;transition:transform .25s}.article-card:hover img{transform:scale(1.03)}.card-content{padding:23px;display:flex;flex-direction:column;flex:1}.card-cat{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#63834a;font-weight:800;margin-bottom:12px}.card-content h3{font-size:19px;line-height:1.35;min-height:52px}.card-content p{font-size:13px;color:#78827a;line-height:1.7}.card-more{font-size:12px;color:#3b6743;font-weight:800;margin-top:auto;padding-top:8px}.cta-section{background:var(--dark);color:white;padding:63px 0}.cta-flex{display:flex;align-items:center;justify-content:space-between;gap:28px}.cta-flex h2{font-size:clamp(29px,3.5vw,47px);margin:0}.cta-flex em{color:var(--accent)}.footer{background:#111c18;color:#c4cfc6;padding-top:60px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1.3fr 1.4fr;gap:45px;padding-bottom:52px}.footerbrand{color:white;margin-bottom:18px}.footerbrand .brandmark{background:#314237}.footer p{font-size:12px;color:#a4b3aa;line-height:1.8}.footer h4{color:white;font-size:13px;letter-spacing:.01em;margin:8px 0 17px}.footer-grid>div:not(:first-child) a{display:block;font-size:12px;margin:0 0 12px;color:#bcc9bc}.footer-grid a:hover{color:var(--accent)}.footnote{border-top:1px solid #344038;padding-top:20px;padding-bottom:27px;color:#84948b;font-size:11px;display:flex;justify-content:space-between;gap:14px}.page-hero{background:var(--dark);color:white;padding:80px 0 83px;position:relative;overflow:hidden}.page-hero:after{position:absolute;content:'';width:390px;height:390px;right:-90px;top:-120px;border:80px solid #2b4436;border-radius:50%;opacity:.45}.page-hero h1{font-size:clamp(40px,5.5vw,68px);margin:0 0 16px}.page-hero em{color:var(--accent)}.page-hero p{color:#b8c8bd;max-width:655px}.two-column{display:grid;grid-template-columns:1.04fr 1fr;gap:9%;align-items:center}.two-column p{color:#6d776f}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:31px 0}.stat-grid div{border-top:2px solid #e2ebdc;padding:18px 4px 9px}.stat-grid strong{font:800 32px var(--head);display:block}.stat-grid span{font-size:11px;color:#738077}.about-photo img{height:490px;object-fit:cover;border-radius:10px}.section-summary{color:var(--muted);max-width:800px}.office-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:35px 0}.office{background:white;border:1px solid #e4e8df;border-radius:8px;padding:25px}.office>span{color:#799168;letter-spacing:.1em;font-weight:800;font-size:10px}.office h3{margin:15px 0 10px;font-size:19px}.office p{font-size:13px;color:#707b70;min-height:72px}.office a{font-size:13px;font-weight:800;color:#466948;border-bottom:1px solid currentColor}.warning{background:#f5f2e8;border-left:4px solid #ccad62;color:#555744;padding:17px 18px;font-size:13px;line-height:1.7;margin:20px 0}.warning p{margin:6px 0}.job-links{display:flex;flex-direction:column;gap:12px}.job-link{display:flex;gap:24px;align-items:center;justify-content:space-between;padding:26px;background:#f9faf6;border:1px solid #e5e9df;border-radius:10px}.job-link h3{margin:0 0 8px}.job-link p{color:#66756a;font-size:13px;margin-bottom:9px}.job-link .btn{flex:none}.link-meta{font-size:11px;color:#7e8d80}.safety-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.safety-grid p{color:#728076}.checklist{background:white;padding:32px;border:1px solid #e2e7dd;border-radius:10px}.checklist ul{padding-left:18px;color:#5d6f60}.checklist li{margin:9px 0}.filters{display:grid;grid-template-columns:1fr 220px auto;gap:10px;margin:0 0 30px}.filters input,.filters select{width:100%;border:1px solid #dfe4dc;border-radius:7px;padding:13px 15px;color:#304238;background:#fff}.filters .btn{padding-inline:25px}.pagination{display:flex;justify-content:center;gap:8px;margin-top:35px}.pagination a{display:grid;place-items:center;min-width:40px;height:40px;background:#f0f2eb;border-radius:8px;font-weight:700;font-size:13px}.pagination .active{background:var(--dark);color:white}.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:55px;padding-top:58px;padding-bottom:95px}.article-detail h1{font-size:clamp(37px,4.1vw,59px);line-height:1.2;margin-bottom:18px}.article-intro{font-size:17px;line-height:1.8;color:#67736a}.article-meta{font-size:12px;color:#7c877c;margin:22px 0}.article-hero{margin:30px 0 37px}.article-hero img{width:100%;height:370px;object-fit:cover;border-radius:10px}.article-body{font-size:16px;line-height:1.95;color:#354339}.article-body h2{font-size:27px;line-height:1.3;margin:38px 0 15px;color:#1d3024}.article-body p{margin:0 0 21px}.source-note{background:#eff4e8;padding:24px;border-radius:9px;font-size:13px;color:#465e4c;margin-top:35px}.source-note a{font-weight:800;text-decoration:underline}.backlink{display:inline-block;color:#6b855b;font-size:12px;font-weight:800;margin-bottom:28px}.sidebar{padding-top:115px}.sidebar-card{padding:25px;background:#f5f7f2;border-radius:9px;margin-bottom:18px}.sidebar-card h3{font-size:19px}.sidebar-card p{color:#647567;font-size:13px}.sidebar-link{display:block;border-top:1px solid #e1e6dc;padding:12px 0;color:#344f3b;font-size:12px;font-weight:700}.contact-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:10%}.contact-layout>div>p{color:#778477}.contact-form,.admin-panel{border:1px solid #e3e9e1;background:#f9faf7;border-radius:10px;padding:27px}.contact-form h3{margin:0 0 22px}.contact-form label,.install-card label,.editor-form label,.admin-panel label{display:block;color:#34493a;font-size:12px;font-weight:800;margin-bottom:14px}.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea,.install-card input,.editor-form input,.editor-form select,.editor-form textarea,.admin-panel input,.admin-panel select,.admin-panel textarea{display:block;width:100%;background:white;border:1px solid #dce2d9;border-radius:6px;padding:12px;font-size:13px;margin-top:6px;color:#25382e;outline-color:#789d6e}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-form .checkbox{display:flex;align-items:flex-start;gap:9px;font-weight:500;font-size:12px;line-height:1.55}.checkbox input{margin-top:4px;flex:none}.checkbox a{text-decoration:underline}.hidden-honey{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.success{background:#e4f2d9;border:1px solid #bdd8ad;padding:12px 15px;margin-bottom:18px;color:#355438;font-size:13px}.error{background:#fce4de;border:1px solid #e9aea2;padding:12px 15px;margin-bottom:18px;color:#8e3a2a;font-size:13px}.legal-content{max-width:900px}.legal-content h2{font-size:26px;margin:36px 0 13px}.legal-content p{color:#657469}.install-bg{background:#eef2eb;min-height:100vh;display:flex;justify-content:center;align-items:flex-start;padding:48px 20px}.install-card{max-width:820px;width:100%;background:#fff;border:1px solid #e0e7db;border-radius:12px;padding:35px;box-shadow:0 13px 65px rgba(31,55,39,.08)}.install-card h1{font-size:36px}.install-card h3{margin-top:25px;font-size:17px}.install-card p{font-size:14px;color:#677768}.install-card label{font-size:12px}.install-card form>.btn{margin-top:15px}.install-card .tiny{font-size:12px}.install-card.login{max-width:440px;margin-top:50px}.login .brand{margin-bottom:30px}.login h1{font-size:31px}.login form{margin:27px 0}.admin-page{background:#f6f8f3}.admin-top{background:#fff;border-bottom:1px solid #e1e9df}.admin-topinner{min-height:82px;display:flex;align-items:center;justify-content:space-between}.admin-topinner>div{display:flex;gap:20px;font-size:12px;font-weight:700}.admin-logout{color:#b54938}.admin-layout{display:grid;grid-template-columns:225px minmax(0,1fr);gap:28px;min-height:calc(100vh - 82px);padding-top:26px;padding-bottom:60px}.admin-nav{background:white;border:1px solid #e2e9df;border-radius:9px;padding:13px;align-self:start;display:flex;flex-direction:column;gap:4px}.admin-nav a{border-radius:6px;padding:12px 14px;font-weight:700;font-size:13px}.admin-nav a:hover,.admin-nav .selected{background:#edf4e6;color:#3e673b}.admin-main{min-width:0}.admin-main h1{font-size:36px;margin-bottom:12px}.dash-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:30px 0}.dash-grid div{background:white;border:1px solid #e2e9df;border-radius:9px;padding:25px}.dash-grid strong{font:800 32px var(--head);display:block}.dash-grid span{font-size:12px;color:#79897b}.admin-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:20px}.admin-table-wrap{overflow-x:auto;border:1px solid #e1e6df;border-radius:9px;background:white;margin-top:20px}.admin-table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}.admin-table th,.admin-table td{padding:14px 16px;border-bottom:1px solid #e9eee7;vertical-align:top}.admin-table th{background:#edf3e9;font-size:11px;letter-spacing:.05em;text-transform:uppercase}.admin-table small{display:block;color:#718175;font-size:11px;margin-top:5px}.table-status{background:#edf2e6;padding:5px 9px;border-radius:99px;font-size:11px;text-transform:capitalize}.table-actions{display:flex;gap:15px}.table-actions a{color:#486f49;font-weight:800}.link-danger{background:none;border:0;padding:0;color:#b74334;font-size:12px;font-weight:800}.admin-message{font-size:12px;color:#526358;white-space:normal;min-width:210px;max-height:130px;overflow:auto}.editor-form{background:white;border:1px solid #e2e9df;border-radius:9px;padding:26px;margin-top:25px}.editor-form textarea{line-height:1.6}.editor-save{display:flex;align-items:end;justify-content:end}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:980px){.mainnav{gap:13px}.mainnav a{font-size:12px}.container{padding-left:20px;padding-right:20px}.cards{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1.4fr 1fr 1fr;gap:30px}.footer-grid>div:last-child{grid-column:1/-1}.hero{height:auto;min-height:560px}.hero-content{padding-bottom:60px}.office-grid{grid-template-columns:repeat(2,1fr)}.article-layout{grid-template-columns:1fr}.sidebar{padding-top:0;display:grid;grid-template-columns:1fr 1fr;gap:20px}.admin-layout{grid-template-columns:170px 1fr}.dash-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.nav{min-height:74px}.menu-toggle{display:block}.mainnav{display:none;position:absolute;left:0;right:0;top:100%;background:white;border-top:1px solid #eef0e8;box-shadow:0 15px 28px rgba(0,0,0,.1);padding:18px 22px;flex-direction:column;align-items:stretch;gap:16px}.mainnav.is-open{display:flex}.mainnav a{font-size:14px}.hero{min-height:645px}.hero-content{padding-top:71px;padding-bottom:48px}.hero h1{font-size:clamp(37px,11vw,53px)}.hero p{font-size:14px}.hero-trust{flex-direction:column;gap:7px;margin-top:42px}.hero-buttons{flex-direction:column;align-items:flex-start}.features{grid-template-columns:1fr;gap:6px;padding-top:24px;padding-bottom:24px}.feature{padding:10px 0}.section{padding-top:60px;padding-bottom:60px}.spotlight,.two-column,.safety-grid,.contact-layout{grid-template-columns:1fr;gap:30px}.spotlight-image img,.about-photo img{height:290px}.spotlight-copy{order:0}.section-head{align-items:start;flex-direction:column}.cards{grid-template-columns:1fr}.card-img{height:210px}.cta-flex{flex-direction:column;align-items:start}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-grid>div:first-child,.footer-grid>div:last-child{grid-column:1/-1}.footnote{flex-direction:column}.page-hero{padding:62px 0}.page-hero h1{font-size:43px}.office-grid{grid-template-columns:1fr}.office p{min-height:0}.filters{grid-template-columns:1fr}.filters .btn{width:100%}.job-link{flex-direction:column;align-items:start}.job-link .btn{width:100%}.article-layout{gap:25px;padding-top:40px}.article-hero img{height:250px}.article-body{font-size:15px}.sidebar{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr;gap:0}.install-card{padding:25px}.admin-topinner{flex-direction:column;align-items:start;gap:15px;padding-top:17px;padding-bottom:17px}.admin-layout{display:block}.admin-nav{flex-direction:row;overflow:auto;white-space:nowrap;margin-bottom:25px}.admin-nav a{font-size:12px;padding:11px}.dash-grid{grid-template-columns:1fr 1fr}.admin-heading{align-items:start;flex-direction:column}.editor-form{padding:18px}}
/* V2: independent job directory and consent-based talent enquiry management */
.jobs-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.job-card{display:flex;flex-direction:column;min-height:310px;border:1px solid #e1e9df;border-radius:12px;background:#fff;padding:25px;box-shadow:0 7px 30px rgba(20,40,28,.035)}
.job-card h3{font-size:22px;margin:19px 0 9px;line-height:1.25}
.job-card p{font-size:13px;color:#68786e}
.job-card-top,.job-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}
.job-category{padding:6px 10px;background:#edf3e7;color:#3e6447;font-size:11px;font-weight:800;border-radius:6px}
.salary-label{color:#345d40!important;font-weight:800;font-size:16px!important;margin-top:auto}.salary-label small{font-weight:500;color:#748477}
.job-actions{margin-top:auto;padding-top:22px;border-top:1px solid #ecf0eb}.job-actions small,.tiny{font-size:11px;color:#89948a}
.job-card-top .tiny{font-size:11px}
.empty-state{border:1px dashed #bdcdbd;border-radius:12px;background:#f8faf4;padding:45px 25px;text-align:center;grid-column:1/-1;margin:25px 0}
.empty-state p{color:#64796b}.safety-note{padding:24px;border-radius:9px;background:#f5f8ee;border-left:4px solid #94b263;margin-top:35px;font-size:13px}.safety-note p{margin-bottom:0;color:#607365}
.job-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 335px;gap:60px;align-items:start}.job-detail-grid h2{font-size:27px;margin-top:38px}
.job-detail-grid article p{line-height:1.85;color:#67756a}.job-facts{display:flex;gap:9px;flex-wrap:wrap}.job-facts span{font-size:11px;color:#48664d;background:#eef4ea;border-radius:5px;padding:8px 12px;font-weight:700}
.job-detail-grid .sidebar-card{position:sticky;top:22px}.full-btn{display:flex;width:100%;margin:12px 0;text-align:center}.btn-soft{background:#e6f0df;color:#355c3a}.sidebar-card hr{border:0;border-top:1px solid #dce6d8;margin:24px 0}
.admin-filters{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:20px 0}.admin-filters input,.admin-filters select{background:#fff;border:1px solid #dce7dd;border-radius:6px;padding:12px 15px;min-width:130px;flex:1;max-width:350px;font-size:13px}.admin-filters button{padding:11px 16px}
.admin-toolrow{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.admin-toolrow .btn{font-size:12px}.admin-table td>form input,.admin-table td>form select,.admin-table td>form textarea{width:100%;padding:7px;border:1px solid #dde8dd;border-radius:5px;min-width:140px;font-size:12px;margin-bottom:7px}.admin-table td .mini-btn{padding:8px 12px;font-size:11px}.admin-table code{font-size:11px}.admin-table .row-message{max-width:265px;max-height:95px;overflow:auto;font-size:12px;line-height:1.5;color:#647269;margin-top:8px}
.admin-main small{font-size:12px;color:#889788}.admin-main .checkbox{display:flex;gap:10px;align-items:start;line-height:1.6}.admin-main .checkbox input{width:auto;flex:none}
@media(max-width:1000px){.jobs-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.job-detail-grid{grid-template-columns:1fr}.job-detail-grid .sidebar-card{position:static}.mainnav{gap:11px}.mainnav a{font-size:11px}}
@media(max-width:700px){.jobs-cards{grid-template-columns:1fr}.job-card{min-height:280px}.job-actions{flex-wrap:wrap}.admin-filters input,.admin-filters select{min-width:140px}.job-detail-grid{gap:25px}}

/* V3 – responsive application registry. Visible announcements and accessible controls. */
.new-pill{display:inline-flex;margin-top:7px;padding:4px 9px;border-radius:99px;background:#e4eed7;color:#31593a;font-size:11px;font-weight:800}
.nav-counter{display:inline-block;font-size:10px;background:#dae8d1;color:#32563a;padding:1px 6px;border-radius:20px}
.admin-table td,.admin-table th{overflow-wrap:anywhere}
.admin-table{min-width:780px}.contact-form{min-width:0}
.contact-form form input,.contact-form form select,.contact-form form textarea{max-width:100%;box-sizing:border-box}
@media(max-width:700px){.contact-form{padding:23px 18px}.admin-layout{padding-top:15px}.admin-table{font-size:12px}.admin-nav{position:sticky;top:0;z-index:5}.job-actions .textlink{font-size:12px}}

/* V4 applicant portal — responsive account and admin review controls */
.account-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(250px,.75fr);gap:24px;align-items:start}
.account-card,.account-info{background:#fff;border:1px solid #dce4df;border-radius:16px;padding:clamp(20px,3vw,38px);box-shadow:0 7px 30px rgba(15,40,30,.04)}
.account-card form{display:grid;gap:13px;margin:18px 0}.account-card label{display:grid;gap:8px;font-weight:600}
.account-card input{width:100%;min-width:0;border-radius:8px;border:1px solid #cedbd2;padding:13px;font:inherit}
.account-head,.record-title,.login-links{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.account-record{padding:23px 0;border-top:1px solid #e3e9e5}
.record-title h3{font-size:1.12rem;margin:0}.record-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}
.record-grid p{margin:2px 0}.record-grid b{font-size:.81rem;color:#627169}.account-info p{font-size:.94rem;line-height:1.65}
.account-record summary{cursor:pointer;text-decoration:underline}.account-card .btn{width:max-content;max-width:100%}
@media(max-width:800px){.account-layout{grid-template-columns:1fr}.account-info{order:2}}
@media(max-width:520px){.account-card,.account-info{padding:18px}.record-grid{grid-template-columns:1fr}}

@media(max-width:1120px){.nav{min-height:74px}.menu-toggle{display:block}.mainnav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;border-top:1px solid #eef0e8;box-shadow:0 15px 28px rgba(0,0,0,.1);padding:18px 22px;flex-direction:column;align-items:stretch;gap:14px}.mainnav.is-open{display:flex}.mainnav a{font-size:14px}}

/* Magil Construction brand asset is reused across ALL areas, rather than duplicating a text logo. */
.magil-brand{display:inline-flex;align-items:center;justify-content:flex-start;flex:none;white-space:normal;letter-spacing:normal}
.magil-brand .magil-logo{display:block;width:168px;height:67px;object-fit:contain;object-position:left center;background:#fff;border-radius:3px}
.login .magil-brand{margin-bottom:28px}
.footer .magil-brand .magil-logo{padding:5px 8px;width:178px;height:75px;border-radius:5px}
.admin-top .magil-brand .magil-logo{width:158px;height:64px}
@media(max-width:880px){.magil-brand .magil-logo{width:139px;height:55px}.nav{min-height:72px}.admin-topinner{min-height:73px}}
@media(max-width:490px){.magil-brand .magil-logo{width:128px;height:51px}.footer-grid{gap:24px}.admin-topinner .magil-logo{width:130px;height:52px}}

/* V6: Responsive vacancy poster attachments. Original proportions are never cropped. */
.job-visual{position:relative;margin:-25px -25px 15px;background:#eef0e9;border-bottom:1px solid #e2e7dd;display:flex;justify-content:center;align-items:center;height:244px;overflow:hidden}
.job-visual img{width:100%;height:100%;object-fit:contain;object-position:center;background:#f2f4ef}
.job-image-caption{position:absolute;bottom:8px;right:10px;background:rgba(18,33,26,.82);color:white;font-size:10px;font-weight:700;letter-spacing:.025em;padding:5px 9px;border-radius:6px}
.job-card{overflow:hidden;min-width:0}.job-card .job-actions{flex-wrap:wrap;gap:9px}.job-card .job-actions .btn{white-space:nowrap;padding:11px 14px}
.job-detail-image{margin:0 0 26px;background:#f3f5f1;padding:12px;border:1px solid #e4ece5;border-radius:12px;text-align:center;overflow:hidden}
.job-detail-image img{display:block;max-width:100%;width:100%;max-height:650px;height:auto;object-fit:contain;object-position:center;border-radius:6px}
.job-detail-image figcaption{font-size:11px;color:#69786e;margin-top:9px}
.job-ad-upload{background:#f8faf5;border:1px solid #dce6d5;border-radius:12px;padding:22px;margin:22px 0}.job-ad-upload h3{margin:0 0 6px}.job-ad-upload input[type=file]{width:100%;border:1px dashed #a9bfa5;background:white;border-radius:9px;padding:14px}.job-ad-preview,.job-ad-existing{margin:15px 0;background:#eef2e9;text-align:center;border-radius:10px;padding:12px}.job-ad-preview img,.job-ad-existing img{width:100%;max-height:360px;object-fit:contain}.job-ad-preview span{display:block;font-size:11px;color:#657267}.job-table-title{display:flex;align-items:center;gap:12px}.job-table-title img{width:65px;height:54px;object-fit:contain;background:#f5f7f2;border-radius:5px}.job-table-title>div{min-width:145px}.seed-jobs-form{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:16px 0 6px}
@media(max-width:700px){.job-visual{height:220px}.job-ad-upload{padding:14px}.job-detail-image img{max-height:480px}.job-card{min-height:0}.job-actions .btn{width:100%}.seed-jobs-form .btn{width:100%}}
@media(min-width:701px) and (max-width:1100px){.job-visual{height:218px}}

/* V7: clearer applications and batch publication controls. */
.batch-publish-bar{padding:18px 20px;background:#f0f5e9;border:1px solid #dce9d1;border-radius:12px;margin:18px 0 22px}
.batch-publish-bar .batch-confirm{display:flex;gap:10px;align-items:flex-start;font-size:13px;font-weight:700;margin-bottom:14px}
.batch-publish-bar .batch-confirm input{flex:none;margin-top:3px}
.batch-actions{display:flex;gap:10px;flex-wrap:wrap}
.batch-publish-bar .tiny{margin:11px 0 0}
.admin-table input[type=checkbox]{width:16px;height:16px;accent-color:#294b37;cursor:pointer}
.job-actions-primary{justify-content:flex-start;gap:12px}
.job-actions-primary .btn{background:#102c23;color:#fff;font-weight:800;min-height:43px}
.job-actions-primary .btn:hover{background:#244e39}
.job-actions-primary small{margin-left:auto}
.apply-position-card{padding:18px 22px;background:#ebf4e2;border:1px solid #d4e6c8;border-radius:12px;margin-bottom:20px}
.apply-position-card strong{font-size:20px;color:#152b1f;display:block;margin:7px 0}
.apply-position-card span{font-size:12px;color:#4a6755;display:block}
.apply-position-card .eyebrow{font-size:10px}
.apply-form-intro{color:#5c6d63;font-size:13px;line-height:1.6}
.apply-form-steps{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.apply-form-steps span{font-size:11px;color:#466e4d;background:#ecf5e8;border-radius:15px;padding:6px 11px;font-weight:700}
.contact-form .btn[type=submit]{min-height:48px;font-size:14px}
@media(max-width:700px){.batch-actions{flex-direction:column}.batch-actions button{width:100%}.job-actions-primary{align-items:stretch;flex-direction:column}.job-actions-primary small{margin-left:0}.apply-position-card{padding:16px}}

/* V8 — visible admin actions and simple mobile vacancy publishing */
.admin-table .table-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:240px}
.admin-table .table-actions form{display:inline-block;margin:0}
.admin-table .table-actions button,.admin-inline-edit{border:1px solid transparent;display:inline-block;border-radius:7px;padding:8px 11px;font-size:12px;font-weight:800;text-decoration:none;cursor:pointer;white-space:nowrap}
.admin-inline-edit{color:#195b48!important;background:#e7f5ea;border-color:#cfe3d6!important}
.job-publish-button{background:#115f3b;color:#fff;border-color:#115f3b!important}
.job-unpublish-button{background:#fff8e4;color:#805d13;border-color:#eedba6!important}
.job-delete-button{background:#fff2f0;color:#ad3425;border-color:#f4c2bd!important}
.job-publish-button:hover,.job-unpublish-button:hover,.job-delete-button:hover,.admin-inline-edit:hover{filter:brightness(.94)}
.job-actions-primary .btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center}
@media(max-width:700px){.admin-table-wrap{overflow-x:auto}.admin-table .table-actions{min-width:220px}.editor-form{padding:16px}.job-actions-primary{display:flex;flex-wrap:wrap;gap:12px}.job-actions-primary .btn{width:100%}.admin-main .admin-heading{flex-wrap:wrap}}

/* V9: straightforward vacancy editing and compact responsive actions */
.v9-steps{display:flex;flex-wrap:wrap;gap:12px;margin:12px 0 21px}
.v9-steps span{display:inline-flex;align-items:center;gap:8px;border:1px solid #dce8d5;background:#f4f8ee;padding:10px 14px;border-radius:12px;font-size:13px;font-weight:700}
.v9-steps b{display:inline-grid;place-items:center;background:#d2e8aa;border-radius:50%;width:23px;height:23px}
.v9-bulk{background:#f3f8ec;border:1px solid #dbe8cf;border-radius:12px;padding:16px;margin:16px 0}
.v9-bulk-buttons{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}
.v9-bulk-buttons .btn{font-size:12px;padding:10px 12px;min-height:42px}
.v9-danger{background:#fff4f2!important;color:#a53126!important;border:1px solid #ecc6c0!important}
.v9-ready{font-size:11px!important;display:block;margin-top:6px;font-weight:700!important;line-height:1.4}
.v9-ready.yes{color:#21784f!important}.v9-ready.no{color:#8a5820!important}
.v9-missing{border:1px solid #efdbbd;background:#fff8ed;color:#79541c;border-radius:10px;padding:14px;margin:16px 0;font-size:13px;line-height:1.6}
.v9-editor-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:16px}
.v9-editor-actions .btn{min-height:44px}
.v9-confirm{background:#f4f8ee;padding:12px;border-radius:10px}
.v9-finish-button{display:inline-flex;align-items:center;text-decoration:none;font-size:12px;font-weight:800;border-radius:7px;background:#fff5e5;color:#7e4b0c;padding:9px 11px;border:1px solid #e9c78c}
.jobs-admin-table .table-actions{min-width:278px;display:flex;flex-wrap:wrap;gap:5px;align-items:center}
.jobs-admin-table .table-actions form{margin:0}
.jobs-admin-table .table-actions button,.jobs-admin-table .table-actions a{min-height:36px}
@media(max-width:790px){
 .v9-bulk-buttons{flex-direction:column}.v9-bulk-buttons .btn{width:100%}
 .jobs-admin-table,.jobs-admin-table tbody,.jobs-admin-table tr,.jobs-admin-table td{display:block;width:100%;box-sizing:border-box}
 .jobs-admin-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .jobs-admin-table tr{border:1px solid #e1e8dd;border-radius:13px;margin:0 0 12px;padding:12px 14px;background:#fff}
 .jobs-admin-table td{border:0!important;padding:6px 0!important;white-space:normal}
 .jobs-admin-table td[data-label="Status"]:before,.jobs-admin-table td[data-label="Location"]:before{content:attr(data-label) ": ";font-weight:700;color:#466354}
 .jobs-admin-table .table-actions{min-width:0;width:100%;gap:7px;padding-top:8px!important}
 .jobs-admin-table .table-actions button,.jobs-admin-table .table-actions a{padding:8px 11px}
 .v9-editor-actions{flex-direction:column;align-items:stretch}.v9-editor-actions .btn{text-align:center;width:100%;justify-content:center}
 .v9-steps{gap:6px}.v9-steps span{font-size:12px;padding:8px 9px}
}

/* V10 short job editor */
.v10-essential{display:grid;gap:14px;padding:18px;border:1px solid #dfe7da;border-radius:16px;background:#fff}
.v10-optional{margin:18px 0;border:1px solid #dce6d7;border-radius:14px;background:#f7faf5;padding:15px 19px}
.v10-optional>summary{cursor:pointer;font-weight:750;line-height:1.5;list-style-position:inside}
.v10-optional>summary span{float:right;font-weight:800}
.v10-optional[open]>summary{margin-bottom:15px}
.v10-suggest{font-size:.86rem;color:#556a5d}
.v10-editor-note{background:#edf5e9;border:1px solid #d4e6cc;border-radius:12px;padding:12px 14px}
@media(max-width:640px){.v10-essential{padding:12px}.v10-optional{padding:12px}.v9-editor-actions{display:flex;flex-wrap:wrap;gap:10px}.v9-editor-actions .btn{width:100%;justify-content:center}}


/* V11: clear role-directory categorization and compact administrative preparation. */
.v11-role-directory{margin:45px 0 28px;padding:30px;border:1px solid #e1e9df;background:#f7faf5;border-radius:20px}
.v11-role-directory h2{margin:5px 0 9px;font-size:clamp(1.45rem,2.5vw,2rem)}
.v11-role-search{display:flex;gap:9px;margin:20px 0}
.v11-role-search input{flex:1;min-width:0;border:1px solid #dce4d8;border-radius:9px;padding:12px 14px;font:inherit;background:#fff}
.v11-role-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.v11-role-item{background:white;border:1px solid #e2e8de;border-radius:13px;padding:14px;display:flex;flex-direction:column;justify-content:space-between;gap:14px}
.v11-role-item h3{font-size:.99rem;margin:0 0 7px;overflow-wrap:anywhere}
.v11-role-item small{font-size:.71rem;color:#69786a;line-height:1.5}
.v11-role-item a{font-size:.82rem;font-weight:800}
.v11-import-note{display:grid;grid-template-columns:1fr auto;align-items:center;gap:18px;background:#f5f8ef;border:1px solid #dbe5cf;padding:18px;border-radius:14px;margin:12px 0 18px}
.v11-import-note p{margin:5px 0 0;color:#58675b;font-size:.84rem;line-height:1.5}
.v11-import-note form{display:flex;flex-direction:column;gap:10px}
.v11-import-note label{font-size:.76rem}
@media(max-width:900px){.v11-role-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v11-import-note{grid-template-columns:1fr}}
@media(max-width:560px){.v11-role-directory{padding:16px;margin:24px 0}.v11-role-grid{grid-template-columns:1fr}.v11-role-search{flex-direction:column}.v11-role-search button{width:100%}}

.v11-save-row{display:flex;flex-wrap:wrap;align-items:end;gap:14px;margin-top:18px;padding:16px;background:#eff6ec;border-radius:14px}
.v11-save-row label{min-width:190px;flex:1;margin:0}
.v11-save-row button{min-height:45px}
@media(max-width:600px){.v11-save-row{align-items:stretch;flex-direction:column}.v11-save-row .btn{width:100%}}


/* MAGIL FINAL admin update — responsive Enquiries and embedded Finance */
body.admin-page .admin-main { min-width: 0; }
@media(min-width:1100px){body.admin-page .container{max-width:1480px}body.admin-page .admin-layout{grid-template-columns:210px minmax(0,1fr);gap:26px}}
body.admin-page .enquiries-wrap {width:100%;max-width:100%;overflow-x:auto;}
body.admin-page .enquiries-table {width:100%;min-width:0;table-layout:fixed;border-collapse:collapse;}
body.admin-page .enquiries-table .enq-col-sender {width:22%}
body.admin-page .enquiries-table .enq-col-message {width:43%}
body.admin-page .enquiries-table .enq-col-received {width:23%}
body.admin-page .enquiries-table .enq-col-actions {width:12%}
body.admin-page .enquiries-table th {white-space:normal;word-break:normal;letter-spacing:.03em;line-height:1.4;padding:14px 12px;text-align:left;}
body.admin-page .enquiries-table td{padding:15px 12px;vertical-align:top;white-space:normal;overflow-wrap:anywhere;}
body.admin-page .enquiries-table td strong{font-size:13px;display:block;line-height:1.5}
body.admin-page .enquiries-table td small{font-size:11px;line-height:1.5;overflow-wrap:anywhere;}
body.admin-page .enquiry-message{margin-top:9px;max-height:170px;overflow:auto;background:#f7faf6;border-radius:8px;padding:10px;font-size:12px;line-height:1.6;white-space:normal;overflow-wrap:anywhere}
body.admin-page .enquiry-ack{margin-top:7px;font-size:11px;color:#516756}
body.admin-page .enquiry-delete{background:#fff1ee;border:1px solid #edb3a7;color:#a4322a;border-radius:7px;padding:9px 12px;cursor:pointer;font-size:12px;font-weight:750;white-space:nowrap}
body.admin-page .enquiry-delete:hover{background:#ffe5e1}
body.admin-page .enquiries-table td[data-label]::before{display:none}
@media(max-width:980px){body.admin-page .enquiries-table{min-width:0}body.admin-page .enquiries-wrap{overflow:visible;border:0;background:none}
 body.admin-page .enquiries-table,body.admin-page .enquiries-table tbody,body.admin-page .enquiries-table tr,body.admin-page .enquiries-table td{display:block;width:100%}
 body.admin-page .enquiries-table thead,body.admin-page .enquiries-table colgroup{display:none}
 body.admin-page .enquiries-table tr{border:1px solid #dce7d8;border-radius:12px;background:white;margin:0 0 14px;overflow:hidden;padding:12px}
 body.admin-page .enquiries-table td{border:0;padding:9px 7px;}
 body.admin-page .enquiries-table td[data-label]::before{content:attr(data-label);display:block;margin:0 0 5px;color:#607765;text-transform:uppercase;font-size:10px;letter-spacing:.09em;font-weight:800}
 body.admin-page .enquiry-message{max-height:240px}
}
body.admin-page .invoice-module {font-size:14px;line-height:1.55;color:#24372c}
body.admin-page .invoice-module .invoice-top {display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:10px}
body.admin-page .invoice-module h1{font-size:clamp(1.7rem,3vw,2.35rem)}
body.admin-page .invoice-module .invoice-hint{padding:14px 16px;background:#eff7f1;border-left:4px solid #2d7758;border-radius:8px;margin:8px 0 22px;color:#344a3d}
body.admin-page .invoice-module .invoice-card{background:#fff;border:1px solid #e0e8dc;border-radius:12px;padding:20px;margin:16px 0;box-shadow:0 2px 10px #2033120d}
body.admin-page .invoice-module .invoice-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}
body.admin-page .invoice-module .invoice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
body.admin-page .invoice-module label{display:block;font-weight:650;font-size:12px}
body.admin-page .invoice-module label input,body.admin-page .invoice-module label textarea,body.admin-page .invoice-module label select,body.admin-page .invoice-module .invoice-table-wrap input{display:block;width:100%;min-width:0;border:1px solid #bfcdbd;border-radius:7px;padding:10px 12px;background:#fff;font:inherit;margin-top:6px}
body.admin-page .invoice-module .invoice-table-wrap{max-width:100%;overflow-x:auto}
body.admin-page .invoice-module table{width:100%;min-width:560px;border-collapse:collapse;font-size:12px}
body.admin-page .invoice-module th,body.admin-page .invoice-module td{padding:12px 10px;text-align:left;vertical-align:top;border-bottom:1px solid #e5ece1}
body.admin-page .invoice-module th{background:#edf4e9;color:#304b3b}
body.admin-page .invoice-module button,body.admin-page .invoice-module .invoice-btn{border:0;border-radius:8px;cursor:pointer;background:#102d25;color:white;padding:11px 15px;font:700 12px system-ui,sans-serif;display:inline-block;text-decoration:none}
body.admin-page .invoice-module .invoice-secondary{background:#e4efe5!important;color:#194e39!important}
body.admin-page .invoice-module .invoice-danger{background:#ac3d3d!important}
body.admin-page .invoice-module .invoice-badge{display:inline-block;background:#e8f3ea;color:#265e3b;border-radius:99px;padding:5px 10px;text-transform:capitalize}
body.admin-page .invoice-module .invoice-error{padding:12px;background:#fff0ef;border:1px solid #d87b73;border-radius:8px}
body.admin-page .invoice-module .invoice-stat{font-size:1.35rem;font-weight:800}
body.admin-page .invoice-module .invoice-muted{color:#688072}
@media(max-width:700px){body.admin-page .invoice-module .invoice-grid{grid-template-columns:1fr}body.admin-page .invoice-module .invoice-card{padding:14px}body.admin-page .invoice-module .invoice-actions{width:100%}body.admin-page .invoice-module .invoice-actions .invoice-btn{flex:1;text-align:center}}
