/* Clear buying information, product categories and a gallery of real jobs. */
.commitments { background: white; border-bottom: 1px solid #dce4de; }
.commitments-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.commitments-grid > div { padding: 25px 22px; border-right: 1px solid #e2e8e3; }
.commitments-grid > div:first-child { padding-left: 0; }
.commitments-grid > div:last-child { border-right: 0; }
.commitments strong { display: block; font-size: .9375rem; line-height: 1.4; color: var(--forest); }
.commitments span { display: block; margin-top: 7px; font-size: .875rem; line-height: 1.45; color: #657169; }
.intro { padding-block: 85px; }
.company-profile { margin-top: 45px; padding-top: 40px; }
.catalog-filters { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 28px; }
.catalog-filters button { border: 1px solid #57655c; background: transparent; padding: 10px 17px; color: #d7e4db; border-radius: 3px; min-height: 44px; font-size: .875rem; font-weight: 600; cursor: pointer; }
.catalog-filters button:hover { background: #2b3d30; border-color: #87b797; }
.catalog-filters button[aria-pressed="true"] { background: #d0edd9; border-color: #d0edd9; color: #143b26; }
.catalog-card[hidden] { display: none; }
.work-section { padding: 0 0 100px; scroll-margin-top: 32px; }
.work-heading { display: grid; grid-template-columns: 1.15fr 1fr; gap: 50px; align-items: end; margin-bottom: 36px; padding-top: 45px; border-top: 1px solid var(--line); }
.work-heading h2, .buying-heading h2 { font-size: clamp(2.25rem, 4vw, 3.5rem); line-height: 1.12; }
.work-heading > p, .buying-heading p { font-size: 1.0625rem; color: #5b665f; margin: 0; }
.work-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 26px 20px; }
.work-card { min-width: 0; background: white; border: 1px solid #dde4dd; }
.work-photo { display: block; width: 100%; position: relative; padding: 0; border: 0; background: #e1e8e2; cursor: pointer; }
.work-crop { display: block; position: relative; width: 100%; aspect-ratio: 3 / 2; overflow: hidden; }
.work-crop img { position: absolute; width: var(--photo-width); max-width: none; height: auto; left: var(--photo-left); top: var(--photo-top); }
.work-enlarge { position: absolute; right: 12px; bottom: 12px; background: #133d29eb; color: white; font-size: .75rem; padding: 6px 10px; line-height: 1.4; }
.work-photo:hover .work-enlarge { background: #257044; }
.work-copy { padding: 23px; }
.work-copy small { display: block; color: var(--leaf); font-size: .8125rem; font-weight: 600; margin-bottom: 10px; }
.work-copy h3 { font-size: 1.25rem; line-height: 1.25; letter-spacing: -.02em; }
.work-copy p { margin: 12px 0 0; color: #606b62; font-size: 1rem; line-height: 1.5; }
.field-vehicle { margin: 32px 0 0; }
.vehicle-photo { position: relative; aspect-ratio: 2 / 1; overflow: hidden; border-radius: 3px; background: #173c2a; }
.vehicle-photo img { display: block; width: 150%; max-width: none; height: auto; position: absolute; left: -22%; top: 0; }
.field-vehicle figcaption { color: #c4decf; font-size: .875rem; line-height: 1.55; margin-top: 12px; }
.buying-guide { display: grid; grid-template-columns: .85fr 1.15fr; gap: clamp(32px, 6vw, 82px); padding-block: 90px; border-bottom: 1px solid var(--line); }
.buying-heading .section-kicker { font-size: .8125rem; line-height: 1.6; }
.buying-heading p { margin-top: 24px; }
.buying-questions details { border-bottom: 1px solid #cad5cd; }
.buying-questions details:first-child { border-top: 1px solid #cad5cd; }
.buying-questions summary { list-style: none; position: relative; padding: 22px 36px 22px 0; cursor: pointer; font-weight: 600; color: #244733; line-height: 1.5; }
.buying-questions summary::-webkit-details-marker { display: none; }
.buying-questions summary::after { content: '+'; position: absolute; right: 3px; top: 19px; font-size: 1.4rem; font-weight: 400; }
.buying-questions details[open] summary::after { content: '−'; }
.buying-questions details > div { padding: 0 30px 24px 0; color: #58675c; }
.buying-questions p { margin: 0; }
.assistance-links { display: flex; flex-wrap: wrap; gap: 14px 24px; margin-top: 18px; }
.assistance-links a { color: var(--forest); font-weight: 700; text-decoration: underline; text-underline-offset: 4px; }
body.work-open { overflow: hidden; }
#work-dialog { width: min(900px, calc(100% - 32px)); max-height: 94dvh; overflow-y: auto; overscroll-behavior: contain; background: #14251a; color: white; }
#work-dialog figure { margin: 0; padding: 24px; }
#work-dialog figure > img { display: block; width: 100%; height: auto; max-height: 76dvh; object-fit: contain; }
#work-dialog figcaption { padding: 24px 6px 6px; }
#work-dialog small { color: #b4d7c0; font-size: .875rem; }
#work-dialog h2 { font-size: clamp(1.4rem, 3vw, 2rem); line-height: 1.2; margin: 10px 0; }
#work-dialog p { margin: 0; color: #d1ded4; }
@media (max-width: 1060px) and (min-width: 861px) {
  .site-header .header-cta { display: none; }
  .site-header nav { gap: 24px; }
}
@media (max-width: 860px) {
  .commitments-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .commitments-grid > div, .commitments-grid > div:first-child { padding: 20px; border-bottom: 1px solid #e2e8e3; }
  .commitments-grid > div:nth-child(even) { border-right: 0; }
  .commitments-grid > div:nth-child(n+3) { border-bottom: 0; }
  .work-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .work-heading { gap: 26px; }
  .buying-guide { grid-template-columns: 1fr; gap: 32px; }
  .field-vehicle { max-width: 500px; }
}
@media (max-width: 580px) {
  .commitments-grid > div, .commitments-grid > div:first-child { padding: 18px 12px; }
  .commitments strong { font-size: .875rem; }
  .intro { padding-block: 60px; }
  .catalog-filters { gap: 8px; }
  .catalog-filters button { padding: 9px 12px; }
  .work-section { padding-bottom: 65px; }
  .work-heading { grid-template-columns: 1fr; padding-top: 32px; }
  .work-grid { grid-template-columns: 1fr; }
  .work-copy { padding: 20px; }
  .buying-guide { padding-block: 60px; }
  #work-dialog figure { padding: 16px; }
}
