/* Shared navigation, customer feedback and private chat. */
.site-header .nav-links>a,.site-header .industry-nav-trigger,.site-header .account-links,.site-header .account-links a,.site-header .account-logout{font-family:"Neue Haas Grotesk Display Pro",Arial,sans-serif;font-size:14px;font-weight:400;line-height:1.5;letter-spacing:0}
.industry-nav-trigger{border:0;background:transparent;color:inherit;padding:12px 0;cursor:pointer;white-space:nowrap}
.site-header .industry-nav{position:relative;flex:none}
.site-header .industry-nav-label{display:flex;align-items:center}
.site-header .industry-nav-links{position:absolute;top:100%;left:-16px;min-width:250px;display:flex;flex-direction:column;gap:0;padding:10px;border:1px solid #dde3d9;border-radius:8px;background:#fff;box-shadow:0 12px 24px #15241320;z-index:100}
.site-header .industry-nav-links[hidden]{display:none!important}
.site-header .industry-nav-links a{display:block;width:100%;padding:12px;color:#1a2716;font-size:14px;font-weight:400;line-height:1.5;letter-spacing:normal;white-space:normal}
.site-header .industry-nav-links a:hover,.site-header .industry-nav-links a:focus-visible{background:#edf5e9;border-radius:4px}
.industry-nav-trigger:focus-visible,.testimonial-controls button:focus-visible,.footer-social a:focus-visible,.chat-launcher:focus-visible{outline:3px solid #1d6fba;outline-offset:4px}
.site-footer .footer-social{display:flex;align-items:center;gap:12px;margin-top:22px}
.site-footer .footer-social .social-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 26px;width:26px;height:26px;padding:0;color:#fff}
.social-icon svg{width:24px;height:24px}.social-icon:hover{opacity:.8}.social-unavailable{cursor:default}
.shared-testimonials figure{margin:0}.shared-testimonials [hidden]{display:none!important}.shared-testimonials h2 span{color:#70ad34}.testimonial-slides{min-height:160px}
.shared-testimonials figcaption{font-size:14px;color:#626262}.shared-testimonials blockquote{white-space:pre-line;overflow-wrap:anywhere}
.testimonial-controls{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:24px}
.testimonial-controls button{border:1px solid #d8e4cf;border-radius:24px;background:#fff;color:#346d2b;min-width:40px;min-height:40px;cursor:pointer;font:inherit}
.testimonial-controls .testimonial-dot{min-width:12px;min-height:12px;width:12px;height:12px;padding:0;background:#d7ddcf;border:0}
.testimonial-controls .testimonial-dot[aria-pressed=true]{background:#46802f}
.chat-launcher{position:fixed;right:max(20px,env(safe-area-inset-right));bottom:calc(max(22px,env(safe-area-inset-bottom)) + 62px);z-index:46;display:flex;align-items:center;gap:9px;border:1px solid #ffffff80;border-radius:28px;padding:12px 17px;background:#287333;color:white;box-shadow:0 4px 16px #0003;cursor:pointer;font:inherit;font-size:14px}
.chat-launcher:hover{background:#205c29}.chat-launcher svg{flex-shrink:0}
.chat-panel{position:fixed;right:20px;bottom:146px;z-index:110;width:min(370px,calc(100vw - 32px));max-height:calc(100dvh - 170px);overflow:auto;background:white;color:#26342a;border:1px solid #d4dfcf;border-radius:16px;box-shadow:0 12px 45px #0003}
.chat-panel[hidden]{display:none}.chat-heading{display:flex;align-items:flex-start;gap:12px;justify-content:space-between;padding:18px;background:#287333;color:#fff}.chat-heading h2{font-size:18px;font-weight:500;margin:0;line-height:1.3}.chat-heading p{color:white;font-size:13px;margin:7px 0 0;line-height:1.4}
.chat-heading button{background:none;border:0;color:white;font-size:27px;line-height:1;padding:0 3px;cursor:pointer}
.chat-messages{padding:16px;display:flex;flex-direction:column;gap:12px;max-height:250px;overflow-y:auto;overscroll-behavior:contain}.chat-message{max-width:90%;align-self:flex-start;border-radius:12px 12px 12px 2px;padding:10px 13px;background:#f1f3ee;overflow-wrap:anywhere}.chat-message.is-own{align-self:flex-end;background:#e5f1dd;border-radius:12px 12px 2px 12px}.chat-message p{font-size:14px;line-height:1.5;white-space:pre-wrap;margin:4px 0;color:#26342a}.chat-message small{font-size:11px;color:#64715e}.chat-message strong{font-size:12px;font-weight:500}
.chat-form{padding:0 16px 16px;display:grid;gap:12px}.chat-form label,.chat-form [data-chat-identity]{display:grid;gap:7px;font-size:13px}.chat-form [data-chat-identity]{gap:12px}.chat-form [hidden]{display:none!important}.chat-form input,.chat-form textarea{border:1px solid #c9d5c4;border-radius:6px;padding:9px 10px;background:white;color:#243122;width:100%;font:inherit;font-size:14px}.chat-form textarea{resize:vertical;min-height:70px}.chat-form button:disabled{opacity:.6;cursor:wait}.chat-status{padding:0 16px;font-size:13px;line-height:1.4;color:#506248}.chat-status:empty{display:none}.chat-help{font-size:11px!important;line-height:1.5;color:#65705f!important;margin:0}
.admin-chat .chat-messages{height:400px;max-height:55vh}.admin-chat .chat-form{padding-top:12px}.admin-chat .chat-message{max-width:80%}
[data-chat-unread]:not(:empty){display:inline-block;background:#287333;color:white;border-radius:12px;padding:1px 6px;font-size:12px}
.job-detail .p-description,.job-detail-public .p-description,.p-review-grid .p-description{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7;letter-spacing:normal;word-spacing:normal}
.job-detail h2,.job-detail h3,.job-detail-public h1,.job-detail-public h2,.p-review-grid h3{letter-spacing:normal;word-spacing:.08em;line-height:1.45;font-weight:500}
.p-form label{letter-spacing:normal;word-spacing:.04em;line-height:1.5}
.p-form textarea{white-space:pre-wrap;line-height:1.65;letter-spacing:normal;word-spacing:normal;resize:vertical}
.site-footer .footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-right:64px}
.site-footer .footer-bottom p{margin:0;line-height:1.5}
.footer-legal{display:flex;align-items:center;gap:7px;white-space:nowrap}
@media(max-width:900px){.site-header .nav-links>a,.site-header .industry-nav-trigger,.site-header .account-links,.site-header .account-links a,.site-header .account-logout{font-size:16px}.industry-nav-trigger{text-align:left;width:100%;padding:12px 0}.site-header .industry-nav{width:100%}.site-header .industry-nav-links{position:static;min-width:0;width:100%;margin:0 0 8px;border:0;border-left:2px solid #78a765;border-radius:0;box-shadow:none;padding:0 0 0 10px}.chat-launcher{right:16px;bottom:72px}.chat-panel{right:16px;bottom:132px;max-height:calc(100dvh - 152px)}}
@media(max-width:600px){.site-footer .footer-bottom{flex-wrap:wrap;justify-content:flex-start;gap:8px;padding-right:54px}.footer-legal{font-size:12px}}
@media(max-width:480px){.chat-launcher{padding:12px}.chat-panel{width:calc(100% - 32px)}.testimonial-slides{min-height:210px}.chat-messages{max-height:190px}}
.job-detail-public > .job-apply-actions{margin-block:24px}
.job-detail-public > .job-apply-actions + h2{margin-top:0}
.site-header #main-nav a:hover,.site-header #main-nav a:focus-visible,.site-header #main-nav button:hover,.site-header #main-nav button:focus-visible{color:#287333!important}
#hire-enquiry-form h3{font-weight:700}
.site-header{position:sticky;top:0;z-index:100;background:#fff}
.launch-contact-section{padding:56px 0 64px}
.launch-contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.launch-contact-grid .launch-card{display:flex;flex-direction:column;align-items:flex-start;gap:24px;padding:32px;border:1px solid #dfe6dc;border-radius:14px;background:#fff;min-width:0}
.launch-contact-grid .launch-card h2{font-size:clamp(26px,2.5vw,36px);line-height:1.3;margin:0}
.launch-contact-grid .launch-card p{line-height:1.8;margin:0}
.launch-contact-grid .launch-card .button{margin-top:auto;max-width:100%;white-space:normal}
.launch-email{margin-top:32px}
.launch-email p{margin:0;line-height:1.8;overflow-wrap:anywhere}
.launch-email .launch-note{margin-top:20px}
@media(max-width:760px){.launch-contact-grid{grid-template-columns:1fr;gap:24px}.launch-contact-section{padding:32px 0 40px}.launch-contact-grid .launch-card{padding:24px}}
#hire-enquiry-form label,#hire-enquiry-form input,#hire-enquiry-form textarea,#hire-enquiry-form select{font-weight:400}
