:root{--paper:#fff9f2;--paper-deep:#f4f3ed;--line:#ded8ce;--ink:#060000;--muted:#4e4841;--red:#ad292d;--yellow:#fde021;--soft-red:#fff0ee;--admin-bg:#f7f6f2;--max:1120px}*{box-sizing:border-box}body{color:var(--ink);background:#e9e4da;margin:0;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button:disabled{cursor:wait;opacity:.7}.site-header{background:var(--red);color:#fff;z-index:20;justify-content:space-between;align-items:center;gap:24px;min-height:86px;padding:12px clamp(18px,4vw,48px);display:flex;position:sticky;top:0}.brand{z-index:40;position:absolute;top:22px;left:50%;transform:translate(-50%)}.brand img{width:104px;height:104px;display:block}.site-footer>img,.admin-sidebar>img,.login-card>img{width:76px;height:76px;display:block}.site-nav{align-items:center;gap:26px;margin-left:auto;display:flex}.site-nav a,.button,.eyebrow,.chip,.status-pill,.jobs-table span,.applications-table span,.small-action{letter-spacing:0;text-transform:uppercase;font-size:12px;font-weight:900}.site-nav a{color:#fff}.site-nav a.active{border-bottom:2px solid #fff}.menu-button{color:#fff;cursor:pointer;z-index:42;background:0 0;border:0;justify-content:center;align-items:center;width:48px;height:48px;margin-left:auto;display:none;position:relative}.hero{background:var(--paper);grid-template-columns:minmax(380px,1fr) minmax(420px,.92fr);max-width:1440px;min-height:calc(100vh - 92px);margin:0 auto;display:grid;position:relative}.hero-media{background-image:url(/assets/stonemill-hero-desktop.jpg);background-position:0 100%;background-size:cover}.hero-copy{align-self:end;padding:clamp(40px,7vw,96px) clamp(34px,6vw,88px)}.eyebrow{color:var(--red);margin:0 0 26px}h1,h2,h3{letter-spacing:0;text-transform:uppercase;margin:0;font-family:Impact,Arial Black,Arial Narrow,sans-serif;font-weight:700;line-height:.93}h1,.page-title{font-size:clamp(52px,8vw,116px)}.hero h1{font-size:clamp(72px,11vw,142px)}.hero-copy p:not(.eyebrow){color:var(--muted);max-width:560px;margin:34px 0;font-size:clamp(17px,2vw,22px);line-height:1.45}.button{cursor:pointer;text-align:center;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;min-height:52px;padding:0 24px;display:inline-flex}.button.primary{background:var(--red);color:#fff}.button.secondary{border-color:var(--line);color:var(--ink);background:#fff}.color-band{grid-template-columns:.46fr .54fr;height:20px;display:grid;position:absolute;bottom:0;left:0;right:0}.color-band span:first-child{background:var(--yellow)}.color-band span:last-child{background:var(--red)}.featured-section,.page-shell{background:var(--paper);max-width:1440px;min-height:50vh;margin:0 auto;padding:clamp(48px,8vw,92px) clamp(18px,4vw,48px)}.detail-section{background:#211f1f;max-width:1440px;min-height:50vh;margin:0 auto;padding:clamp(48px,8vw,92px) clamp(18px,4vw,48px)}.page-shell.narrow{max-width:920px}.section-heading{max-width:var(--max);margin:0 auto 28px}.section-heading h2{font-size:clamp(42px,7vw,84px)}.section-subtitle{color:var(--muted);margin:14px 0 0;font-size:16px;line-height:1.45}.open-position-count{background:var(--ink);color:#fff;max-width:var(--max);grid-template-columns:auto 1fr;align-items:center;gap:16px;margin:0 auto 24px;padding:18px 22px;display:grid}.open-position-count strong{font-family:Impact,Arial Black,Arial Narrow,sans-serif;font-size:clamp(42px,7vw,68px);line-height:.9}.open-position-count span{color:var(--yellow);text-transform:uppercase;font-size:13px;font-weight:900}.filters{max-width:var(--max);grid-template-columns:1.4fr repeat(3,1fr);gap:12px;margin:0 auto 24px;display:grid}.search-field{border:1px solid var(--line);background:#fff;align-items:center;gap:10px;padding:0 14px;display:flex}.search-field input{border:0;flex:1;min-height:46px;padding:0}input,select,textarea{border:1px solid var(--line);color:var(--ink);background:#fff;min-height:46px;padding:0 14px}textarea{resize:vertical;padding-block:12px}.job-list{max-width:var(--max);gap:14px;margin:0 auto;display:grid}.job-card{border:1px solid var(--line);text-align:left;background:#fff;grid-template-columns:8px 1fr auto;align-items:center;gap:18px;min-height:116px;display:grid;overflow:visible}.job-card-body{min-width:0;padding:16px 0;display:block}.job-card .accent{background:var(--red);align-self:stretch}.job-card:nth-child(2n) .accent{background:var(--yellow)}.job-card h3{overflow-wrap:break-word;white-space:normal;max-width:100%;font-size:clamp(25px,4vw,36px);line-height:1.02}.job-card p{color:var(--muted);margin:8px 0;font-size:13px;font-weight:800}.job-card .summary{text-transform:none;margin-top:12px;font-weight:400}.job-card small{color:var(--muted)}.chip,.status-pill{background:var(--paper-deep);border:1px solid var(--line);margin:0 8px 4px 0;padding:4px 12px;display:inline-flex}.chip.muted{color:var(--muted)}.open-position-chip{background:var(--yellow);border-color:var(--yellow);color:var(--ink)}.card-arrow{padding-right:20px;font-size:32px}.detail-card{border-top:8px solid var(--red);max-width:800px;margin:0 auto;padding-top:28px;position:relative}.detail-meta{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.detail-meta span{border:1px solid var(--line);background:#fff;padding:10px 14px}.detail-card section{margin-top:38px}.detail-card h2{font-size:clamp(28px,4vw,42px)}.detail-card p,.detail-card li{color:var(--muted);line-height:1.5}.detail-card .eyebrow{color:var(--red)}.detail-open-chip{margin-bottom:16px}.detail-salary{color:var(--red);margin:18px 0 0;font-size:16px;font-weight:900}.detail-card ul{padding:0;list-style:none}.detail-card li{grid-template-columns:8px 1fr;align-items:start;gap:12px;margin:14px 0;display:grid}.detail-card li:before{background:var(--yellow);content:"";width:8px;height:8px;margin-top:7px}.back-link{text-transform:uppercase;max-width:800px;margin:0 auto 28px;font-size:12px;font-weight:900;display:block}.modal-close{border:1px solid var(--line);background:#fff;justify-content:center;align-items:center;width:24px;height:24px;margin:0;font-size:25px;line-height:1;display:none;position:absolute;top:14px;right:18px}.whatsapp-link{margin-top:34px}.panel{border:1px solid var(--line);background:#fff;padding:22px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.form-grid label,.login-card label{text-transform:uppercase;gap:8px;font-size:12px;font-weight:900;display:grid}.password-field{grid-template-columns:1fr 46px;display:grid}.password-field input{border-right:0;min-width:0}.password-field button{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#fff;justify-content:center;align-items:center;min-height:46px;display:inline-flex}.span-2{grid-column:1/-1}.form-error,.form-success{font-weight:800}.form-error{color:var(--red)}.form-success{color:#216e36}.site-footer{background:var(--red);color:#fff;text-align:center;margin-top:0;padding:78px 20px 46px;position:relative}.site-footer:before{background:var(--red);content:"";height:52px;position:absolute;top:-52px;left:0;right:0}.site-footer>img{z-index:1;width:104px;height:104px;margin:0;position:absolute;top:-52px;left:50%;transform:translate(-50%)}.site-footer h2{max-width:760px;margin-inline:auto;font-size:clamp(34px,6vw,74px)}.site-footer p{max-width:520px;margin:28px auto;line-height:1.55}.site-footer nav,.socials{flex-wrap:wrap;justify-content:center;gap:18px;display:flex}.site-footer a{font-weight:900}.footer-connect{font-size:12px}.socials{margin-top:28px}.socials a{border:1px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.socials img{width:18px;height:18px}.admin-login{background:var(--red);align-items:center;min-height:100vh;padding:20px;display:grid}.login-card{background:var(--paper);border-top:8px solid var(--yellow);gap:16px;width:100%;max-width:420px;margin:auto;padding:32px;display:grid}.login-card img{width:96px;height:96px;margin:0 auto}.login-card h1{font-size:58px}.admin-shell{background:var(--admin-bg);grid-template-columns:260px 1fr;min-height:100vh;display:grid}.admin-sidebar{border-right:1px solid var(--line);background:#fff;flex-direction:column;gap:22px;padding:22px;display:flex}.admin-sidebar img{width:84px;height:84px}.admin-sidebar p,.admin-nav p{color:var(--muted);margin:0;font-size:12px}.admin-sidebar nav,.admin-nav{gap:8px;display:grid}.admin-sidebar nav a,.admin-sidebar button,.admin-nav a,.admin-drawer-logout{align-items:center;gap:10px;display:flex}.admin-sidebar nav a,.admin-nav a{border:1px solid #0000;padding:12px;font-weight:800}.admin-sidebar nav a.active,.admin-nav a.active{background:var(--paper-deep);border-color:var(--line)}.admin-sidebar .admin-drawer-logout,.admin-sidebar button{margin-top:auto}.admin-menu-button{display:none}.admin-drawer-logout{border:1px solid var(--line);color:var(--ink);cursor:pointer;text-transform:uppercase;background:#fff;min-height:46px;padding:0 12px;font-size:12px;font-weight:900}.admin-content{padding:32px}.admin-heading{margin-bottom:24px}.admin-heading.split{justify-content:space-between;align-items:center;gap:20px;display:flex}.admin-heading h1{font-size:clamp(42px,6vw,72px)}.admin-heading p{color:var(--muted);margin:8px 0 0}.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px;display:grid}.admin-stat{border:1px solid var(--line);border-left:7px solid var(--red);background:#fff;padding:20px}.admin-stat strong{font-family:Impact,Arial Black,sans-serif;font-size:52px;display:block}.admin-stat span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:900}.admin-job-modal{background:#211f1f;min-height:100vh;margin:-32px;padding:42px 24px 72px}.admin-job-form-card{background:var(--paper);border-top:8px solid var(--red);max-width:920px;margin:0 auto;padding:32px;position:relative}.admin-job-form-card .admin-heading{margin-bottom:26px;padding-right:42px}.admin-job-form-card .admin-heading h1{font-size:clamp(46px,7vw,78px)}.admin-job-form-card .admin-heading .eyebrow{margin-bottom:12px}.form-close{display:flex}.admin-job-form input,.admin-job-form select,.admin-job-form textarea{background:#fff}.admin-job-form .button.primary{min-width:180px}.jobs-admin-summary,.jobs-admin-subheading,.admin-job-meta{display:none}.table-list{gap:10px;display:grid}.table-row{border-bottom:1px solid var(--line);grid-template-columns:1.2fr 1fr 1fr 1fr;align-items:center;gap:12px;min-height:58px;padding:10px 0;display:grid}.jobs-table .table-row{grid-template-columns:1.2fr .8fr .9fr .7fr .7fr .8fr 1.5fr}.applications-table .table-row{grid-template-columns:1fr 1.2fr .8fr 1fr .8fr .9fr auto}.row-actions{flex-wrap:wrap;gap:8px;display:flex}.icon-button,.small-action{background:var(--paper-deep);border:1px solid var(--line);color:var(--ink);cursor:pointer;justify-content:center;align-items:center;min-height:34px;padding:0 10px;display:inline-flex}.delete-button{background:var(--soft-red);color:var(--red);border-color:#efcac5}.status-pill.active{background:var(--yellow);border-color:var(--yellow);color:var(--ink)}.status-pill.draft{color:var(--red);background:#f8dfdc;border-color:#f8dfdc}.application-dialog{z-index:40;border:0;width:calc(100vw - 32px);max-width:620px;padding:32px;position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%);box-shadow:0 20px 50px #00000040}.close-dialog{position:absolute;top:16px;right:16px}@media (width<=900px){.hero,.admin-shell{grid-template-columns:1fr}.hero{min-height:0}.hero-media{background-image:url(/assets/stonemill-hero-mobile.jpg);background-position:bottom;order:-1;min-height:390px}.color-band{order:0;height:20px;position:static;bottom:auto}.hero-copy{order:1;padding:42px 32px 72px}.hero-copy p:not(.eyebrow){max-width:29ch}.filters,.form-grid,.stat-grid,.table-row,.jobs-table .table-row,.applications-table .table-row{grid-template-columns:1fr}.admin-sidebar{border-bottom:1px solid var(--line);border-right:0}.admin-sidebar nav{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-sidebar button{margin-top:0}}@media (width<=640px){.site-header{justify-content:flex-end;min-height:86px;padding-inline:16px}.brand{z-index:40;top:22px}.brand img{width:104px;height:104px}.site-nav{background:var(--red);z-index:18;flex-direction:column;align-items:flex-start;gap:22px;width:min(76vw,300px);max-width:300px;padding:162px 28px 36px;transition:transform .22s;display:flex;position:fixed;inset:0 0 0 auto;transform:translate(100%);box-shadow:-18px 0 34px #0000002e}.site-nav.open{transform:translate(0)}.site-nav a{font-size:14px}.menu-button{display:inline-flex}.hero h1{font-size:66px}.page-title{font-size:48px}.jobs-page{padding:36px 32px 72px}.jobs-page .section-heading{margin-bottom:14px}.jobs-page .page-title{max-width:260px;line-height:.92}.jobs-page .section-subtitle{margin-top:8px;font-size:14px}.open-position-count{gap:14px;max-width:none;min-height:72px;margin-bottom:18px;padding:13px 16px}.open-position-count strong{font-size:42px}.open-position-count span{font-size:12px}.jobs-page .filters{max-width:none;margin-bottom:26px;display:block}.jobs-page .filter-search,.jobs-page .filter-location,.jobs-page .filter-job-type{display:none}.jobs-page .filter-department{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--ink) 50%), linear-gradient(135deg, var(--ink) 50%, transparent 50%);text-transform:uppercase;background-position:calc(100% - 23px) 20px,calc(100% - 14px) 20px;background-repeat:no-repeat;background-size:9px 9px;width:100%;min-height:46px;font-size:12px;font-weight:900}.jobs-page .job-list{gap:12px;max-width:none}.job-card{grid-template-columns:7px minmax(0,1fr) 24px;align-items:stretch;gap:15px;min-height:112px}.job-card-body{align-self:center;padding:13px 0}.job-card h3{overflow-wrap:break-word;font-size:clamp(20px,6.3vw,25px);line-height:1}.job-card p{margin:8px 0 7px;font-size:12px}.job-card .summary,.job-card small{display:none}.job-card .chip{min-height:18px;padding:3px 10px;font-size:10px}.job-card .salary-chip{margin-top:2px}.card-arrow{align-self:center;padding-right:8px;font-size:30px;line-height:1}.detail-section{background:#211f1f;max-width:none;min-height:calc(100vh - 86px);margin:0;padding:24px 8px 58px}.detail-card{background:var(--paper);border:1px solid var(--line);border-top:8px solid var(--red);box-shadow:none;width:min(100%,430px);max-height:none;margin:0 auto;padding:44px clamp(18px,5vw,26px) 34px;overflow:visible}.detail-card .modal-close{display:inline-flex}.detail-card .eyebrow{margin:10px 0 0;font-size:12px;line-height:1.25}.detail-open-chip{min-height:20px;margin-bottom:16px;padding:4px 10px;font-size:10px}.detail-salary{color:var(--red);margin-top:16px;font-size:13px;line-height:1.3}.detail-card .page-title{overflow-wrap:anywhere;white-space:normal;max-width:calc(100% - 18px);font-size:clamp(38px,12.6vw,54px);line-height:.95}.detail-meta{display:none}.detail-card section{border-top:1px solid var(--line);margin-top:24px;padding-top:25px}.detail-card h2{font-size:22px;line-height:.95}.detail-card p,.detail-card li{color:var(--muted);font-size:13px;line-height:1.45}.detail-card section>p{margin-bottom:0}.detail-card ul{margin:18px 0 0}.detail-card li{color:var(--ink);grid-template-columns:7px 1fr;gap:11px;margin:12px 0}.detail-card li:before{width:7px;height:7px;margin-top:6px}.detail-card section:nth-of-type(3) li:before{background:var(--red)}.whatsapp-link{justify-content:center;gap:0;width:100%;min-height:54px;margin-top:36px;font-size:13px;position:relative}.whatsapp-link svg{position:absolute;left:92px}.site-footer{min-height:500px;margin-top:0;padding:84px 22px 28px}.site-footer:before{background:var(--paper);height:52px;top:-52px}.detail-page+.site-footer:before{background:#211f1f}.site-footer>img{width:104px;height:104px;top:-52px}.site-footer h2{max-width:280px;margin-inline:auto;font-size:25px;line-height:1.04}.site-footer p:not(.footer-connect){max-width:31ch;margin:30px auto 62px;font-size:12px;line-height:1.42}.site-footer nav{flex-direction:column;align-items:center;gap:9px;max-width:240px;margin-inline:auto;display:flex}.site-footer nav a{font-size:14px}.site-footer .footer-connect{margin:7px auto 10px;font-size:12px;line-height:1.2}.socials{gap:7px;margin-top:0}.socials a{width:28px;height:28px}.socials img{width:15px;height:15px}.admin-content{background:var(--paper);padding:36px 16px 72px}.admin-shell{background:var(--paper);display:block}.admin-sidebar{background:var(--red);z-index:20;border:0;justify-content:flex-end;min-height:86px;padding:12px 16px;display:flex;position:sticky;top:0}.admin-sidebar img{z-index:40;width:104px;height:104px;position:absolute;top:22px;left:50%;transform:translate(-50%)}.admin-menu-button{z-index:42;display:inline-flex}.admin-sidebar .admin-nav{background:var(--red);color:#fff;z-index:18;flex-direction:column;align-items:stretch;gap:10px;width:min(76vw,300px);max-width:300px;padding:154px 26px 36px;transition:transform .22s;display:flex;position:fixed;inset:0 0 0 auto;transform:translate(100%);box-shadow:-18px 0 34px #0000002e}.admin-sidebar .admin-nav.open{transform:translate(0)}.admin-nav p{color:#fffc;overflow-wrap:anywhere;text-transform:none;border-bottom:1px solid #ffffff52;max-width:100%;margin:0 0 10px;padding:0 0 14px;font-size:11px;font-weight:800;line-height:1.35}.admin-nav a,.admin-drawer-logout{color:#fff;text-align:left;background:0 0;border:0;justify-content:flex-start;align-items:center;gap:12px;width:100%;min-height:42px;margin:0;padding:0;font-size:14px;font-weight:900;display:flex}.admin-nav a.active{color:var(--yellow);background:0 0;border:0;padding-bottom:0}.admin-sidebar .admin-drawer-logout{cursor:pointer;border-top:1px solid #ffffff52;margin-top:12px;padding-top:18px}.admin-drawer-logout svg,.admin-nav a svg{width:18px;height:18px}.admin-heading.split{flex-direction:column;align-items:flex-start;gap:20px;max-width:358px;margin-bottom:22px;margin-left:auto;margin-right:auto}.admin-heading h1{max-width:190px;font-size:48px;line-height:.92}.admin-heading p{margin-top:8px;font-size:14px;line-height:1.4}.admin-heading .button.primary{gap:8px;width:160px;min-height:52px;padding:0 18px;font-size:13px;font-weight:900}.admin-heading .button.primary svg{width:16px;height:16px;display:block}.jobs-admin-summary{background:var(--ink);color:#fff;grid-template-columns:62px 1fr;align-items:center;width:100%;max-width:358px;height:82px;margin:0 auto 28px;display:grid;position:relative}.jobs-admin-summary:before{background:var(--yellow);content:"";width:7px;height:100%;position:absolute;top:0;left:0}.jobs-admin-summary strong{padding-left:30px;font-family:Impact,Arial Black,Arial Narrow,sans-serif;font-size:48px;font-weight:700;line-height:1}.jobs-admin-summary span{text-transform:uppercase;font-size:13px;font-weight:900;display:block}.jobs-admin-summary p{color:#d9d0c4;margin:8px 0 0;font-size:11px;font-weight:700;line-height:1.2}.jobs-admin-subheading{max-width:358px;margin:0 auto 22px;font-size:26px;display:block}.admin-content .panel{background:0 0;border:0;padding:0}.jobs-table{gap:14px;max-width:358px;margin:0 auto}.jobs-table .table-row{border:1px solid var(--line);background:#fff;grid-template-columns:minmax(0,1fr) 62px 24px 24px;align-items:center;gap:0 10px;height:58px;min-height:58px;padding:10px 7px 10px 14px;display:grid}.jobs-table .table-row strong{text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-family:Impact,Arial Black,Arial Narrow,sans-serif;font-size:18px;font-weight:700;line-height:.95;overflow:hidden}.jobs-table .table-row>span:not(.status-pill):not(.admin-job-meta),.jobs-table .admin-job-location,.jobs-table .admin-job-type,.jobs-table .admin-job-date{display:none}.jobs-table .table-row>.admin-job-meta{color:var(--muted);text-overflow:ellipsis;text-transform:none;white-space:nowrap;grid-area:2/1;margin-top:6px;font-size:10px;font-weight:800;line-height:1.1;display:block;overflow:hidden}.jobs-table .status-pill{border:0;grid-area:1/2/span 2;justify-content:center;align-items:center;width:62px;height:22px;margin:0;padding:0;font-size:10px;display:inline-flex}.jobs-table .row-actions{display:contents}.jobs-table .row-actions a:first-child,.jobs-table .row-actions .small-action{display:none}.jobs-table .icon-button{width:24px;height:24px;min-height:24px;padding:0}.jobs-table .icon-button:not(.delete-button){background:var(--paper-deep);grid-area:1/3/span 2}.jobs-table .delete-button{background:var(--soft-red);grid-area:1/4/span 2}.jobs-table .icon-button svg{width:14px;height:14px}.admin-job-modal{min-height:calc(100vh - 86px);margin:-36px -16px -72px;padding:24px 8px 58px}.admin-job-form-card{width:min(100%,430px);max-width:430px;padding:32px 18px 24px}.admin-job-form-card .admin-heading{margin-bottom:22px;padding-right:34px}.admin-job-form-card .admin-heading h1{font-size:48px}.admin-job-form-card .admin-heading p:not(.eyebrow){font-size:13px;line-height:1.4}.admin-job-form{grid-template-columns:1fr;gap:12px}.admin-job-form .span-2{grid-column:1}.admin-job-form textarea{min-height:120px}.admin-job-form .button.primary{width:100%;min-height:54px;margin-top:10px;font-size:13px}}
