:root{--ink:#262c28;--green:#79a52e;--green-dark:#557521;--paper:#f6f5f0;--line:#d8dcd2}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--green-dark);outline-offset:5px}img{display:block;max-width:100%}figure,p,h1,h2,h3{margin:0}p+p{margin-top:20px}.skip{position:fixed;top:-100px;left:12px;background:white;padding:12px;z-index:20}.skip:focus{top:10px}.header{display:flex;align-items:center;justify-content:space-between;padding:16px 5vw;background:var(--paper);border-bottom:1px solid var(--line)}.brand{height:78px;width:110px;overflow:hidden;position:relative}.brand img{width:170px;max-width:none;height:auto;position:absolute;left:-31px;top:-25px}.header nav{display:flex;gap:38px;align-items:center;font-size:14px;font-weight:600}.header nav a:hover,.text-link:hover{color:var(--green-dark)}.nav-contact{border-bottom:1px solid var(--green);padding-bottom:4px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:665px}.hero-copy{padding:86px 5vw 48px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;color:var(--green-dark);margin-bottom:22px}.hero h1{font-size:clamp(42px,5.2vw,82px);line-height:1.06;letter-spacing:-3px;font-weight:500}.hero h1 em{font-family:Georgia,serif;font-weight:400;color:var(--green-dark)}.intro{max-width:435px;font-size:18px;margin-top:28px;line-height:1.7;color:#596159}.actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-top:32px}.button{display:inline-flex;align-items:center;gap:35px;background:var(--ink);color:white;padding:15px 22px;font-size:13px;font-weight:600;transition:background .2s}.button:hover{background:var(--green-dark)}.text-link{font-size:13px;font-weight:700;border-bottom:1px solid var(--green);padding-bottom:5px;display:inline-flex;gap:16px}.signature{font-size:12px;color:#697267;margin-top:56px}.hero-photo{position:relative;min-height:600px;background:var(--ink)}.hero-photo img{width:100%;height:100%;object-fit:cover;position:absolute;object-position:57% center}.hero-photo figcaption{position:absolute;left:24px;right:24px;bottom:22px;display:flex;justify-content:space-between;color:white;text-shadow:0 1px 5px black;font-size:10px;letter-spacing:1.5px}.stats{display:grid;grid-template-columns:repeat(4,1fr);padding:38px 5vw;background:var(--ink);color:white;gap:40px}.stats strong{font-size:47px;line-height:1;font-weight:400;letter-spacing:-2px}.stats strong span{color:#a7cd64;font-size:30px}.stats p{font-size:12px;color:#c4cec1;margin-top:10px;max-width:180px}.section{padding:95px 7vw}.section h2{font-size:clamp(34px,3.5vw,54px);line-height:1.12;letter-spacing:-1.8px;font-weight:400}.about{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.about-copy p{font-size:15px;color:#5a625b}.about-copy .large{font-size:21px;line-height:1.55;color:var(--ink);margin-bottom:24px}.about-copy .text-link{margin-top:28px}.services{background:white}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:44px}.section-heading>p{font-size:14px;color:#687067}.service-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{display:flex;align-items:center;cursor:pointer;list-style:none;gap:36px;padding:25px 0}summary::-webkit-details-marker{display:none}.number{font-size:12px;color:var(--green-dark);width:24px;flex-shrink:0}summary h3{font-size:24px;font-weight:400;line-height:1.3}.plus{margin-left:auto;font-size:25px;font-weight:300}details[open] .plus{transform:rotate(45deg)}.service-body{padding:0 54px 29px 60px;display:grid;grid-template-columns:1.4fr 1fr;gap:9vw;font-size:15px;color:#60675f}.service-body .service-example{margin:0;font-family:Georgia,serif;font-size:19px;color:var(--green-dark)}.process{background:#e8ebdf}.process-layout{display:grid;grid-template-columns:1fr 1fr;gap:7vw}.stage-list{display:flex;flex-direction:column}.stage{background:none;text-align:left;border:0;border-bottom:1px solid #c9d1be;padding:17px 0;cursor:pointer;font-size:15px;color:#626a5c;display:flex;gap:30px}.stage span{font-size:11px;color:#778768;width:20px}.stage.active{color:var(--ink);font-weight:700}.stage.active span{color:var(--green-dark)}.stage:hover{color:var(--green-dark)}.stage-content{padding-top:22px}.stage-content h3{font-size:32px;line-height:1.25;font-weight:400;max-width:390px}.stage-content>p:not(.eyebrow){font-size:16px;max-width:410px;margin-top:25px}.stage-content .process-note{font-size:12px!important;color:#69735e;margin-top:42px!important}.gallery{display:grid;grid-template-columns:1.2fr 1fr;gap:30px}.photo-button{position:relative;background:transparent;border:0;padding:0;width:100%;cursor:zoom-in;overflow:hidden}.photo-button img{width:100%;height:390px;object-fit:cover;transition:transform .4s}.photo-button:hover img{transform:scale(1.025)}.photo-button>span{position:absolute;bottom:16px;right:16px;background:var(--paper);padding:5px 14px;font-size:20px}.gallery figcaption{display:flex;justify-content:space-between;gap:15px;margin-top:15px;font-size:12px}.gallery figcaption strong{font-weight:600}.gallery figcaption span{color:#747e6c}.experience-text{display:grid;grid-template-columns:1fr 1.5fr;gap:8vw;padding-top:45px}.experience-text h3{font-size:25px;line-height:1.3;font-weight:400}.experience-text p{font-size:15px;color:#616c60}.judgement{background:var(--ink);color:var(--paper)}.judgement .eyebrow{color:#afd566}.judgement-columns{display:grid;grid-template-columns:1fr 1fr;gap:9vw;margin-top:45px}.judgement h3{font-size:17px;font-weight:500;color:#c1d99b;margin-bottom:15px}.judgement p{font-size:15px;color:#c0c8bd}.contact{display:grid;grid-template-columns:1.6fr 1fr;gap:8vw}.contact>div>p:not(.eyebrow){font-size:15px;color:#65705f;margin-top:20px}.contact-details{padding-top:38px}.contact-details h3{font-size:22px;font-weight:500}.contact-details>p{margin:3px 0 24px!important;font-size:13px!important}.contact-details>a{display:block;font-size:19px;line-height:1.9}.contact-details>a:hover{color:var(--green-dark)}.contact-details .location{margin-top:24px!important}footer{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:32px 5vw;border-top:1px solid var(--line);font-size:11px}footer span{color:#6e7668}footer a{border-bottom:1px solid var(--green);padding-bottom:4px}dialog{border:0;background:var(--paper);padding:40px 24px 16px;max-width:min(1100px,95vw);max-height:95vh;color:var(--ink)}dialog::backdrop{background:#182017db}dialog img{max-height:77vh;max-width:100%;margin:auto;object-fit:contain}dialog p{margin-top:12px;font-size:13px}.close-photo{position:absolute;top:8px;right:18px;background:none;border:0;cursor:pointer;font-size:13px}
@media(min-width:1600px){body{max-width:1800px;margin:auto}.hero-copy{padding-left:100px}}@media(max-width:950px){.hero-copy{padding-top:55px}.hero{min-height:570px}.hero-photo{min-height:570px}.hero h1{font-size:49px}.hero-copy .actions{gap:20px}.section{padding:70px 5vw}.about{gap:5vw}.service-body{gap:30px}.gallery figcaption{display:block}.gallery figcaption span{display:block}.photo-button img{height:300px}.contact{gap:30px}}@media(max-width:680px){html{scroll-padding-top:25px}.header{padding:10px 5vw;position:relative}.brand{height:78px}.menu-toggle{display:block;border:1px solid #bbc5af;background:none;padding:8px 15px;font-size:13px}.header nav{display:none;position:absolute;top:99px;left:0;right:0;background:var(--paper);z-index:5;padding:22px 5vw;gap:20px;box-shadow:0 8px 14px #24312115}.header nav.open{display:flex;flex-direction:column;align-items:flex-start}.hero{display:flex;flex-direction:column}.hero-copy{padding:48px 6vw 35px}.hero h1{font-size:54px;letter-spacing:-2px}.hero .eyebrow{font-size:10px}.intro{font-size:16px;max-width:360px}.signature{margin-top:32px}.hero-photo{min-height:360px}.stats{grid-template-columns:1fr 1fr;padding:32px 6vw;gap:32px}.stats strong{font-size:42px}.section{padding:60px 6vw}.about,.process-layout,.contact{grid-template-columns:1fr;gap:30px}.section h2{font-size:36px;letter-spacing:-1px}.about-copy .large{font-size:19px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:20px}.section-heading br{display:none}summary{gap:16px;padding:22px 0}summary h3{font-size:20px}.service-body{display:block;padding:0 0 24px 40px;font-size:14px}.service-body .service-example{margin-top:20px;font-size:17px}.stage-content{padding-top:0}.stage-content h3{font-size:29px}.gallery{grid-template-columns:1fr;gap:28px}.photo-button img{height:310px}.experience-text{grid-template-columns:1fr;gap:18px}.judgement-columns{grid-template-columns:1fr;gap:32px}.contact-details{padding-top:10px}.contact p br{display:none}footer{flex-direction:column;align-items:flex-start;gap:20px;padding:26px 6vw}.button{gap:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* JMI brand palette */
:root{--ink:#121612;--green:#89b936;--green-dark:#4d6f1f;--paper:#f6f7f1;--line:#d7dfcd}
.header{background:#121612;border-bottom-color:#313c29}
.brand{background:#fff;border-radius:2px}
.header nav{color:#f0f5e9}
.header nav a:hover{color:#b8e06d}
.nav-contact{border-color:#89b936}
.hero-copy{background:#121612;color:#f6f7f1}
.hero-copy .eyebrow{color:#b2dc68}
.hero h1 em{color:#a6d753}
.hero .intro{color:#d0d8c9}
.hero .button{background:#a6d753;color:#121612}
.hero .button:hover{background:#b9e875}
.hero .text-link{color:#f4f8ec;border-color:#a6d753}
.hero .text-link:hover{color:#b9e875}
.hero .signature{color:#becbb4}
.stats{background:#a6d753;color:#121612}
.stats strong{font-weight:500}
.stats strong span{color:#354d13}
.stats p{color:#283c12}
.process{background:#e5edda}
.stage.active{border-bottom-color:#7aa437}
.photo-button>span{background:#a6d753;color:#121612}
.judgement{background:#121612}
.judgement .eyebrow{color:#b2dc68}
.judgement h3{color:#b2dc68}
.contact{background:#edf3e4}
footer{background:#121612;color:#f0f4e9;border-top:3px solid #89b936}
footer span{color:#bdcbb2}
.menu-toggle{color:#f0f4e9;border-color:#89b936}
@media(max-width:680px){.header nav{background:#121612;box-shadow:0 8px 14px #12161233}}

/* Previous works gallery */
.gallery-filters{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.work-filter{background:transparent;border:1px solid #b9c5ac;padding:9px 16px;font-size:12px;cursor:pointer;color:#344329}
.work-filter.selected{background:#121612;color:#b9e875;border-color:#121612}
.work-filter:hover{border-color:#557521}
.gallery-status{font-size:12px;color:#687461;margin:0 0 26px}
.gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 24px}
.gallery .photo-button img{height:265px;object-fit:cover}
.gallery .photo-button.full-frame img{object-fit:contain;background:#e5ebdd}
.gallery figcaption{display:block;line-height:1.45}
.gallery figcaption strong{display:block;font-size:13px}
.gallery figcaption span{display:block;font-size:12px;margin-top:4px}
.work-item[hidden]{display:none}
@media(max-width:1000px){.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.gallery{grid-template-columns:1fr}.gallery .photo-button img{height:300px}.gallery-filters{gap:8px}.work-filter{padding:8px 12px}}

/* Compact collections and labelled photo viewer */
.gallery-instruction{font-size:14px;color:#65705f;margin-bottom:25px}
.collection-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.collage-button{display:block;width:100%;padding:0;border:0;background:#e5ebdd;position:relative;cursor:pointer}
.collage{height:320px;display:grid;grid-template-columns:1.5fr 1fr;grid-template-rows:1fr 1fr;gap:5px;overflow:hidden}
.collage img{width:100%;height:100%;min-height:0;object-fit:cover;transition:filter .2s}
.collage img:first-child{grid-row:1 / 3}
.collage-1{grid-template-columns:1fr;grid-template-rows:1fr}
.collage-1 img:first-child{grid-row:1}
.collage-button:hover img{filter:brightness(1.06)}
.collage-open{position:absolute;bottom:14px;right:14px;background:#a6d753;color:#121612;padding:4px 13px;font-size:20px}
.collection-gallery figcaption{margin-top:17px}
.collection-gallery figcaption strong{font-size:15px;font-weight:500}
.development-copy{max-width:850px;margin-top:34px}
.development-copy p{font-size:17px;line-height:1.8}
#photo-dialog{width:min(1080px,95vw);padding:30px 28px 22px}
.dialog-heading{padding-right:90px;margin-bottom:18px}
.dialog-heading .eyebrow{font-size:10px;margin-bottom:5px}
.dialog-heading h3{font-size:24px;font-weight:500;line-height:1.3}
#photo-dialog #dialog-image{height:min(58vh,590px);width:100%;object-fit:contain;background:#e9ede2}
.dialog-photo-details{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:15px}
.dialog-photo-details #dialog-caption{font-size:16px;margin:0}
#dialog-count{font-size:12px;color:#647159;white-space:nowrap}
.dialog-controls{display:flex;justify-content:space-between;margin-top:20px}
.dialog-controls[hidden]{display:none}
.dialog-controls button{border:1px solid #bdc9ad;background:transparent;padding:9px 15px;cursor:pointer;font-size:13px}
.dialog-controls button:hover{background:#a6d753}
@media(max-width:1000px){.collage{height:260px;grid-template-columns:1fr 1fr}.collection-gallery figcaption strong{font-size:13px}}
@media(max-width:680px){.collection-gallery{grid-template-columns:1fr;gap:30px}.collage{height:290px;grid-template-columns:1.5fr 1fr}.collection-gallery figcaption strong{font-size:16px}.development-copy p{font-size:15px}#photo-dialog{padding:35px 16px 20px}.dialog-heading h3{font-size:20px}.dialog-photo-details #dialog-caption{font-size:14px}}

/* Owner introduction within the business profile */
.about-person{display:flex;align-items:center;gap:24px;margin-top:40px}
.about-person img{width:144px;height:180px;object-fit:cover;object-position:center 25%;filter:saturate(.3);border-left:4px solid #89b936}
.about-person figcaption{max-width:190px;line-height:1.5}
.about-person figcaption .eyebrow{display:block;font-size:9px;letter-spacing:1.5px;line-height:1.7;margin-bottom:12px}
.about-person figcaption strong{display:block;font-size:19px;font-weight:500}
.about-person figcaption>span:last-child{display:block;font-size:12px;color:#63715b;margin-top:4px}
@media(max-width:950px){.about-person{gap:16px}.about-person img{width:120px;height:156px}.about-person figcaption strong{font-size:17px}}
@media(max-width:680px){.about-person{margin-top:28px;gap:24px}.about-person img{width:124px;height:160px}}

/* Anonymous references compared by statistic and sector */
.references{background:#121612;color:#f4f7ee;padding-top:76px;padding-bottom:64px;overflow:hidden}
.ref-heading{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:end;margin-bottom:40px}
.references .eyebrow{color:#acd75e;font-size:10px}
.references h2{font-size:clamp(40px,4.4vw,68px);letter-spacing:-2px}
.references h2 em{font-family:Georgia,serif;font-weight:400;color:#a6d753}
.ref-introduction>p{font-family:Georgia,serif;font-size:clamp(20px,2vw,27px);line-height:1.5;max-width:540px;color:#e3e8db}
.ref-introduction em{color:#a6d753;font-style:normal}
.ref-source-note{display:block;font-size:11px;color:#acb6a3;margin-top:18px}
.reference-filter-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 0;border-top:1px solid #35442b}
.reference-filters{display:flex;flex-wrap:wrap;gap:8px}
.reference-filters button{border:1px solid #45563a;background:transparent;color:#c6d4ba;padding:9px 14px;cursor:pointer;font-size:11px;transition:background .2s,color .2s}
.reference-filters button span{font-size:9px;opacity:.65;margin-left:10px}
.reference-filters button[aria-pressed="true"],.reference-filters button:hover{background:#a6d753;color:#172210;border-color:#a6d753}
#reference-count{font-size:10px;color:#afc19d;white-space:nowrap;font-variant-numeric:tabular-nums}
.ratings-instruction{font-size:11px;color:#b9c7ab;margin:0 0 17px}
.ratings-matrix-wrap{overflow-x:auto;width:100%;border:1px solid #415135;scrollbar-width:thin;scrollbar-color:#799b48 #24311c;overscroll-behavior-x:contain}
.ratings-matrix{width:100%;min-width:650px;border-collapse:collapse;table-layout:fixed}
.ratings-matrix caption{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.ratings-matrix col.reference-name-column{width:34%}
.ratings-matrix thead th{background:#26351e;border-right:1px solid #415135;padding:24px 22px;text-align:left;vertical-align:top}
.ratings-matrix thead th:first-child{background:#1b2715}
.ratings-matrix thead th:last-child{border-right:0}
.metric-number{display:block;color:#a6d753;font-size:9px;font-weight:400;letter-spacing:1.2px;margin-bottom:13px}
.metric-heading{display:block;color:#f2f7e9;font-size:19px;font-weight:400;line-height:1.35;letter-spacing:-.25px}
.ratings-matrix th,.ratings-matrix td{border-bottom:1px solid #34452a}
.rating-sector th{background:#121c0e;text-align:left;padding:15px 22px;border-top:1px solid #52653f}
.rating-sector th>span{color:#b4dc7a;font-size:11px;text-transform:uppercase;letter-spacing:1.5px;font-weight:500}
.rating-sector small{font-size:9px;font-weight:400;color:#94a782;margin-left:18px;letter-spacing:.25px}
.rating-entry th{background:#1a2514;padding:0;text-align:left;font-weight:400;border-right:1px solid #415135}
.reference-toggle{display:flex;align-items:center;gap:12px;width:100%;min-height:75px;border:0;background:transparent;color:#e0e9d5;text-align:left;padding:16px 20px;cursor:pointer;font-size:12px;line-height:1.4}
.reference-index{color:#859d6f;font-size:9px;font-variant-numeric:tabular-nums;flex-shrink:0}
.reference-toggle>i{margin-left:auto;color:#a6d753;font-size:20px;font-style:normal;line-height:1}
.reference-toggle[aria-expanded="true"]>i{transform:rotate(45deg)}
.reference-toggle:hover,.reference-toggle[aria-expanded="true"]{background:#2d3d22;color:#c9f093}
.rating-cell{padding:14px 22px;background:#202e18;border-right:1px solid #415135}
.rating-cell:last-child{border-right:0}
.rating-value{display:block;color:#b7e575;font-size:26px;font-weight:400;line-height:1.15;font-variant-numeric:tabular-nums}
.rating-value small{font-size:11px;color:#9bad89;margin-left:4px}
.rating-cell-track{display:block;height:2px;background:#4c603b;margin-top:10px;max-width:95px}
.rating-cell-track i{display:block;height:100%;background:#a6d753}
.rating-unscored{padding:17px 22px;background:#1b2715;vertical-align:middle}
.rating-written-badge{font-size:11px;color:#ccddb9;display:inline-block;border:1px solid #536e3b;padding:5px 10px;margin-right:14px}
.rating-unscored>span:last-child{font-size:10px;color:#96aa83;white-space:nowrap}
.reference-comment[hidden],.ratings-matrix tbody[hidden]{display:none}
.reference-comment td{padding:0;background:#e9efdf;color:#243419}
.reference-comment td>div{padding:24px 34px;border-left:4px solid #a6d753}
.comment-label{font-size:8px;letter-spacing:1.4px;color:#566e40}
.reference-comment blockquote{margin:12px 0 0;font:21px/1.5 Georgia,serif;max-width:850px}
.ratings-footnote{display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#aabd98;padding-top:17px}
.ratings-footnote>span{display:none}
.references :focus-visible{outline:2px solid #d4f1b1;outline-offset:-3px}
@media(max-width:1000px){.ref-heading{gap:35px}.metric-heading{font-size:17px}.ratings-matrix thead th{padding:21px 16px}.rating-cell{padding:14px 16px}.reference-toggle{padding:16px;font-size:11px;gap:9px}.rating-value{font-size:24px}}
@media(max-width:800px) and (min-width:681px){.header nav{gap:18px}}
@media(max-width:680px){.references{padding-top:52px;padding-bottom:46px}.ref-heading{grid-template-columns:1fr;gap:24px;margin-bottom:30px}.references h2{font-size:45px}.ref-introduction>p{font-size:21px}.ref-source-note{font-size:10px}.reference-filter-bar{display:block;padding:18px 0}.reference-filters{gap:7px}.reference-filters button{padding:8px 11px;font-size:10px}.reference-filters button span{margin-left:7px}#reference-count{margin-top:12px}.ratings-instruction{font-size:10px;max-width:280px}.ratings-matrix{min-width:620px}.ratings-matrix col.reference-name-column{width:31%}.reference-toggle{min-height:73px}.reference-comment td>div{padding:20px 24px}.reference-comment blockquote{font-size:19px}.ratings-footnote{display:block;font-size:9px}.ratings-footnote>span{display:block;margin-top:5px}.ratings-footnote>span>span{font-size:14px;margin-left:6px}}
@media(prefers-reduced-motion:reduce){.reference-filters button{transition:none}}

/* Fuller comments remain visible below the score comparison. */
.reference-toggle i{color:#a6d753;flex-shrink:0}
.written-references{margin-top:53px;padding-top:36px;border-top:1px solid #384a2c}
.written-references-heading{display:flex;justify-content:space-between;gap:36px;align-items:end;margin-bottom:28px}
.written-references-heading .eyebrow{font-size:9px;letter-spacing:1.5px;margin-bottom:15px}
.written-references-heading h3{font-size:31px;font-weight:400;letter-spacing:-.7px;line-height:1.2}
.written-references-heading>p{font-size:10px;line-height:1.7;color:#adbe9b;max-width:370px}
.written-reference-grid{columns:3;column-gap:20px}
.written-reference{break-inside:avoid;background:#edf2e5;color:#25351b;border-top:3px solid #a6d753;margin:0 0 20px;padding:25px 24px;scroll-margin-top:125px}
.written-reference[hidden]{display:none}
.written-reference-meta{display:flex;align-items:start;justify-content:space-between;gap:16px;border-bottom:1px solid #c9d5b9;padding-bottom:15px;margin-bottom:19px}
.written-reference-meta>span{font-size:9px;line-height:1.5;letter-spacing:.9px;text-transform:uppercase;color:#4d6739}
.written-reference-meta>small{font-size:9px;color:#637854;line-height:1.5;flex-shrink:0}
.written-reference blockquote{margin:0;font-family:Georgia,serif;font-size:16px;line-height:1.65}
.written-reference blockquote p+p{margin-top:18px}
.written-reference blockquote p:first-child:before{content:'“';display:block;font-size:47px;line-height:.7;color:#73933e;margin-bottom:13px}
.written-reference mark{background:#d7eab7;color:#1d3611;padding:0 .08em;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.written-reference:target{outline:3px solid #a6d753;outline-offset:3px}
@media(max-width:1000px){.written-reference-grid{columns:2}.written-references-heading{gap:25px}.written-references-heading h3{font-size:29px}}
@media(max-width:680px){.written-references{margin-top:35px;padding-top:28px}.written-references-heading{display:block;margin-bottom:22px}.written-references-heading>p{margin-top:18px;font-size:9px}.written-reference-grid{columns:1}.written-reference{padding:23px 22px}.written-reference blockquote{font-size:17px}.written-references-heading h3{font-size:29px}}


/* CEO message navigation */
.header.has-ceo-link nav{gap:26px;font-size:13px}
.header.has-ceo-link nav [aria-current="page"]{color:#b8e06d;border-bottom:1px solid #89b936;padding-bottom:4px}
.about-actions{display:flex;flex-wrap:wrap;gap:0 28px;align-items:center}
@media(max-width:900px){
.header.has-ceo-link{padding:10px 5vw;position:relative}
.header.has-ceo-link .menu-toggle{display:block;border:1px solid #89b936;background:none;padding:8px 15px;font-size:13px}
.header.has-ceo-link nav{display:none;position:absolute;top:99px;left:0;right:0;background:#121612;z-index:5;padding:22px 5vw;gap:20px;box-shadow:0 8px 14px #12161233}
.header.has-ceo-link nav.open{display:flex;flex-direction:column;align-items:flex-start}
}

/* Specialist career experience */
.specialist-experience{display:grid;grid-template-columns:1.65fr 1fr;gap:24px;margin-top:44px;align-items:stretch}
.experience-feature{padding:34px 32px;min-width:0}
.experience-feature .eyebrow{font-size:9px;line-height:1.8;letter-spacing:1.4px;margin-bottom:18px}
.experience-feature h3{font-size:28px;line-height:1.25;letter-spacing:-.65px;font-weight:400;margin-bottom:22px}
.experience-feature>p:not(.eyebrow){font-size:14px;line-height:1.85}
.force-majeure-feature{background:#17221b;color:#edf3e5;border-top:3px solid #a6d753}
.force-majeure-feature .eyebrow{color:#b2dc68}
.force-majeure-feature>p:not(.eyebrow){color:#d3deca}
.experience-capabilities{display:flex;flex-wrap:wrap;gap:9px;list-style:none;padding:24px 0 0;margin:26px 0 0;border-top:1px solid #45563c}
.experience-capabilities li{font-size:10px;color:#c3df9b;border:1px solid #526742;padding:5px 9px;line-height:1.6}
.public-works-feature{background:#e5edda;border-top:3px solid #6f992f;color:#21301b}
.public-works-feature .eyebrow{color:#4d6f1f}
.public-works-feature>p:not(.eyebrow){color:#4a5941}
.public-works-feature .experience-duration{margin:25px 0 22px;line-height:1.5;font-size:12px}
.experience-duration strong{display:block;font-size:35px;font-weight:400;letter-spacing:-1px;color:#304d18}
@media(max-width:950px){.specialist-experience{grid-template-columns:1fr}.experience-feature{padding:30px}.experience-feature h3{font-size:26px}.public-works-feature .experience-duration{margin:18px 0}}
@media(max-width:680px){.specialist-experience{margin-top:32px;gap:20px}.experience-feature{padding:26px 23px}.experience-feature h3{font-size:25px}.experience-capabilities{gap:8px;padding-top:20px;margin-top:22px}.experience-capabilities li{font-size:10px}}

@media(min-width:901px) and (max-width:1100px){.header.has-insights-link nav{gap:18px;font-size:12px}}

@media screen and (min-width:901px){.hero .intro{font-size:20px}.section-heading>p{font-size:17px}.about-copy p,.experience-text p,.judgement p,.service-body{font-size:17px}.about-copy .large{font-size:24px}.service-body .service-example{font-size:21px}.written-reference blockquote p{font-size:16px}.contact>div>p:not(.eyebrow){font-size:17px}.contact-details>a{font-size:21px}.stats p{font-size:14px}footer{font-size:12px}}
@media screen and (min-width:901px) and (max-width:1100px){.header.has-insights-link nav{gap:15px;font-size:12px}}

.insights-front{background:#e8eddf;border-bottom:1px solid #ccd6bf;padding-top:64px;padding-bottom:66px}.insights-front-heading{display:grid;grid-template-columns:1.05fr 1fr;gap:7vw;align-items:end;margin-bottom:34px}.insights-front-heading .eyebrow{font-size:11px;margin-bottom:15px}.insights-front h2{font-size:clamp(35px,3.1vw,50px);line-height:1.12}.insights-front h2 em{font-family:Georgia,serif;font-weight:400;color:#50712c}.insights-front-heading>div>p:not(.eyebrow){font-size:17px;line-height:1.65;color:#57684d;max-width:535px}.insights-front-heading .text-link{margin-top:20px;font-size:14px}.insights-front-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.insight-front-card{display:flex;flex-direction:column;align-items:flex-start;border-top:2px solid #83a952;background:#f7f9f1;padding:25px 27px 22px;transition:background .2s}.insight-front-card:hover{background:#fff}.insight-front-number{font-size:10px;font-weight:700;letter-spacing:1.15px;color:#5b7b3b}.insight-front-card h3{font-size:27px;font-weight:400;letter-spacing:-.6px;line-height:1.18;margin-top:17px}.insight-front-card>p{font-size:16px;line-height:1.6;color:#617055;margin-top:16px;margin-bottom:24px}.insight-front-link{display:flex;justify-content:space-between;gap:15px;width:100%;margin-top:auto;padding-top:14px;border-top:1px solid #d4ddc8;font-size:13px;font-weight:600;color:#49692c}.insight-front-link>span{font-size:18px;line-height:1}.insight-front-card:focus-visible{outline-color:#50712c}
@media(max-width:900px){.insights-front{padding-top:54px;padding-bottom:54px}.insights-front-heading{gap:35px}.insight-front-card{padding:22px 20px}.insight-front-card h3{font-size:23px}.insight-front-card>p{font-size:15px}}
@media(max-width:680px){.insights-front-heading{grid-template-columns:1fr;gap:22px;margin-bottom:28px}.insights-front h2{font-size:36px}.insights-front-heading>div>p:not(.eyebrow){font-size:16px}.insights-front-grid{grid-template-columns:1fr;gap:16px}.insight-front-card{padding:24px}.insight-front-card h3{font-size:27px}.insight-front-card h3 br{display:none}.insight-front-card>p{font-size:16px}.insight-front-link{font-size:14px}}
