/* Project results, office location and a shorter enquiry. */
.home-transformation,.home-office{background:#e9eddf}
.transformation-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:5%;margin-bottom:28px}
.transformation-heading h2{margin-bottom:0}
.transformation-heading>p{max-width:540px;font-size:16px;line-height:1.75;margin:0}
.transformation-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.transformation-pair figure{margin:0;min-width:0;background:#f7f7f0}
.transformation-pair img{display:block;width:100%;height:auto;aspect-ratio:1536/865;object-fit:cover}
.transformation-pair figcaption{display:flex;align-items:center;gap:16px;padding:17px 20px;font-size:13px;line-height:1.5}
.transformation-pair figcaption span{display:inline-block;padding:6px 12px;background:#21392b;color:#fff;font-size:12px;font-weight:700;white-space:nowrap}
.transformation-pair figure:last-child figcaption span{background:#c1d957;color:#21392b}
.transformation-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:22px}
.transformation-bottom p{font-size:12px;margin:0;color:#52634f}
.home-page .home-projects .project-overview-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.home-page .home-projects .project-overview-copy h3{font-size:22px}
.home-page .home-projects .project-overview-image{aspect-ratio:4/3}
.home-page .home-projects .project-overview-image img{height:100%;width:100%;object-fit:cover}
.home-page .home-projects .project-facts>div{grid-template-columns:1fr;gap:3px}
.home-page .home-projects .hgm-project-feature .project-facts>div{grid-template-columns:90px 1fr;gap:14px}
.home-page .value-strip a{text-decoration:none;color:inherit}
.home-page .value-strip a:hover{text-decoration:underline}
.home-office{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7%;align-items:center}
.office-location-photo{margin:0;min-width:0}
.office-location-photo img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.office-location-photo figcaption{font-size:12px;line-height:1.6;margin-top:12px;color:#52634f}
.office-location-copy>p{line-height:1.75}
.office-location-copy address{font-style:normal;font-size:17px;line-height:1.75;margin-top:22px}
.office-appointment{font-size:13px}
.office-actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:24px}
.office-partner{margin-top:32px;padding-top:24px;border-top:1px solid #c6cebd}
.office-partner p:last-child{font-size:13px;margin-top:8px}
.field.full{grid-column:1/-1}
.contact-choice-hint{font-size:13px;line-height:1.6;margin:0 0 14px;color:#52634f}
.contact-choice-error{display:block;font-size:12px;line-height:1.5;color:#a32d22;margin-top:10px}
.contact-choice-error:empty{display:none}
.form-upload{margin:14px 0 8px}
.form-upload input[type=file]{display:block;width:100%;min-width:0;max-width:100%;box-sizing:border-box;padding:10px;border:1px dashed #9caa8d;background:#fff;font:inherit;font-size:14px;line-height:1.6}
.form-upload input[type=file]::file-selector-button{background:#21392b;color:white;border:0;padding:11px 14px;margin-right:12px;font:inherit;cursor:pointer}
.form-upload small{display:block;line-height:1.65;margin-top:9px}
.upload-file-list{display:grid;gap:8px;margin:10px 0;padding:0;list-style:none}
.upload-file-list li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 10px;background:#e9eddf;font-size:12px;line-height:1.4}
.upload-file-list span{min-width:0;overflow-wrap:anywhere}
.upload-file-list button{flex:none;min-height:44px;min-width:44px;padding:8px;border:1px solid #9caa8d;background:transparent;color:#21392b;font:inherit;cursor:pointer}
.upload-file-list:empty{display:none}
.upload-clear[hidden]{display:none!important}
.form-upload input:focus-visible,.upload-file-list button:focus-visible{outline:3px solid #66842b;outline-offset:3px}
.form-additional .form-fields{margin-top:16px}
.field-error:empty{display:none}
@media(max-width:1000px){
 .home-page .home-projects .project-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .home-page .home-projects .project-overview-card:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}
 .home-office{gap:5%}
}
@media(max-width:760px){
 .contact .form-panel{order:-1}
 .transformation-heading{grid-template-columns:1fr;gap:18px}
 .transformation-heading>p{font-size:14px}
 .transformation-pair{gap:14px}
 .transformation-pair figcaption{display:block;padding:12px;font-size:12px}
 .transformation-pair figcaption span{display:table;margin-bottom:8px;padding:5px 9px}
 .transformation-bottom{display:block}
 .transformation-bottom .text-link{margin-top:12px}
 .home-office{grid-template-columns:1fr;gap:30px}
 .office-location-copy h2{font-size:38px}
 .office-actions{gap:18px}
 .home-page .home-projects .project-overview-grid{grid-template-columns:1fr}
 .home-page .home-projects .project-overview-card:last-child{grid-column:auto;display:block}
 .home-page .home-projects .project-overview-copy h3{font-size:25px}
 .form-upload input[type=file]{font-size:16px}
 .form-panel input,.form-panel textarea,.form-panel select{font-size:16px}
}
@media(max-width:430px){
 .transformation-pair{grid-template-columns:1fr}
 .transformation-pair figcaption{display:flex;gap:12px}
 .transformation-pair figcaption span{margin:0}
 .home-page .home-projects .hgm-project-feature .project-facts>div{grid-template-columns:1fr;gap:3px}
}

/* Office: quiet typography and a clear address card, without a location photo. */
.office-without-photo{gap:8%;align-items:center}
.office-without-photo .office-location-copy>p:not(.eyebrow){max-width:500px;font-size:16px;line-height:1.8}
.office-without-photo .office-welcome{color:#52634f}
.office-address-card{min-width:0;background:#f7f7f0;border:1px solid #c6cebd;padding:38px;box-shadow:0 12px 35px #21392b08}
.office-card-heading{display:flex;align-items:center;gap:12px;margin-bottom:24px}
.office-card-heading svg{width:26px;height:30px;flex:none;color:#66842b}
.office-card-heading .eyebrow{margin:0}
.office-address-card address{font-style:normal;font-size:20px;line-height:1.8}
.office-address-card address strong{font-size:17px}
.office-location-note{font-size:13px;color:#52634f;margin-top:8px}
.office-address-card .office-actions{gap:20px;margin-top:26px}
.office-address-card .office-appointment{margin-top:20px;line-height:1.7;color:#52634f}
.office-address-card .office-partner{margin-top:26px;padding-top:22px}
@media(max-width:760px){.office-without-photo{gap:24px}.office-address-card{padding:24px}.office-address-card address{font-size:19px}.office-without-photo .office-location-copy>p:not(.eyebrow){font-size:14px}}
