/* Isolated additions: all reused blocks retain the main site's visual language. */
.contract-page { --contract-gap: 16px; }
.contract-page h2, .contract-page h3 { text-transform: none; }
.contract-page p { line-height: 1.45; }
.contract-section-title { margin-bottom: 28px; }
.contract-hero { position: relative; overflow: hidden; background: var(--green-100); }
.contract-hero__photo { position: absolute; inset: 0 0 0 43%; }
.contract-hero__photo img { width: 100%; height: 100%; object-fit: cover; object-position: 62% center; }
.contract-hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, #f2f4f2 0%, #f2f4f2 35%, rgba(242,244,242,.97) 43%, rgba(242,244,242,.7) 50%, rgba(242,244,242,0) 64%); pointer-events: none; }
.contract-hero__inner { position: relative; z-index: 1; padding-top: 26px; padding-bottom: 52px; }
.contract-hero .breadcrumbs { display: flex; align-items: center; margin: 0 0 36px; flex-wrap: wrap; gap: 12px; font-size: 13px; }
.contract-hero__copy { width: 56%; max-width: 760px; }
.contract-hero h1 { max-width: 750px; font-size: clamp(32px, 3.1vw, 46px); line-height: 1.16; overflow-wrap: normal; }
.contract-hero__copy > p { margin: 24px 0 28px; max-width: 650px; font-size: 20px; }
.contract-hero__actions { display: flex; flex-wrap: wrap; gap: 16px; }
.contract-hero__actions .button { min-height: 52px; padding: 14px 20px; }
.contract-hero .button--outline { background: rgba(255,255,255,.9); border: 1px solid var(--green-700); color: var(--green-700); }
.contract-benefits { padding-top: 28px; padding-bottom: 28px; }
.contract-benefits .benefit-card { min-height: 206px; height: auto; gap: 20px; padding: 20px; }
.contract-benefits .benefit-card p { position: static; font-size: 16px; overflow-wrap: normal; }
.contract-benefits .benefit-card__head { gap: 14px; }
.contract-benefits .benefit-card__title { font-family: var(--font-heading); font-size: 16px; line-height: 1.35; }
.contract-benefits .benefit-card__icon img { width: 48px; height: 48px; object-fit: contain; }
.contract-industries { padding-top: 32px; }
.contract-industries__grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 16px; }
.contract-industry { display: flex; flex-direction: column; min-width: 0; border: 1px solid var(--green-200); background: white; transition: border-color .2s, box-shadow .2s; }
.contract-industry:hover { border-color: var(--green-700); box-shadow: var(--shadow); }
.contract-industry__photo { aspect-ratio: 2.35; background: var(--green-100); overflow: hidden; }
.contract-industry__photo img { width: 100%; height: 100%; object-fit: cover; transition: transform .25s; }
.contract-industry:hover .contract-industry__photo img { transform: scale(1.025); }
.contract-industry__caption { display: flex; gap: 10px; align-items: center; min-height: 96px; padding: 16px; }
.contract-industry__caption h3 { flex: 1; font-size: 15px; line-height: 1.35; overflow-wrap: normal; }
.contract-industry__caption .contract-icon { width: 40px; height: 40px; flex-basis: 40px; }
.contract-icon { width: 48px; height: 48px; flex: 0 0 48px; display: grid; place-items: center; color: var(--green-700); }
.contract-icon img { width: 100%; height: 100%; object-fit: contain; }
.contract-icon:empty { background: var(--green-100); border-radius: 4px; }
.contract-capabilities__layout { display: grid; grid-template-columns: 1fr 2.25fr; gap: 20px; }
.contract-capabilities__photo, .contract-quality__photo { min-height: 240px; background: var(--green-200); overflow: hidden; }
.contract-capabilities__photo img, .contract-quality__photo img { width: 100%; height: 100%; object-fit: cover; }
.contract-capabilities__grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.contract-feature { display: flex; align-items: flex-start; gap: 16px; padding: 22px 18px; background: var(--white-100); min-width: 0; }
.contract-feature h3 { font-size: 16px; line-height: 1.35; }
.contract-feature p { margin-top: 10px; font-size: 15px; color: var(--grey-300); }
.contract-cooperation__grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.contract-cooperation .contract-feature { border: 1px solid var(--green-200); padding: 24px; }
.contract-steps { padding-top: 0; padding-bottom: 40px; }
.contract-steps .logistics-steps__scroller { width: 100%; overflow-x: auto; }
.contract-steps .logistics-steps__list { width: 100%; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 20px; }
.contract-steps .logistics-steps__list li { gap: 20px; min-height: 215px; }
.contract-steps .logistics-steps__list h3 { font-size: 17px; min-height: 46px; }
.contract-steps .logistics-steps__list p { font-size: 15px; }
.contract-steps .logistics-steps__list li:nth-child(5)::before, .contract-steps .logistics-steps__list li:nth-child(5)::after { display: block; }
.contract-steps .logistics-steps__final-top { gap: 14px; }
.contract-quality { padding-top: 20px; }
.contract-quality__grid { display: grid; grid-template-columns: 1.1fr 1.8fr .9fr; gap: 24px; align-items: stretch; }
.contract-quality__checks { padding: 8px 0; }
.contract-quality__checks h3 { font-size: 16px; line-height: 1.4; }
.contract-quality__checks ul { padding: 0; margin: 18px 0 0; list-style: none; display: grid; gap: 14px; }
.contract-quality__checks li { display: flex; gap: 10px; align-items: flex-start; line-height: 1.4; font-size: 15px; }
.contract-check { display: block; width: 20px; height: 20px; flex: 0 0 20px; }
.contract-check img { width: 100%; height: 100%; object-fit: contain; }
.contract-quality__assurance { display: flex; align-items: flex-start; gap: 14px; padding: 24px 20px; background: var(--green-100); }
.contract-quality__assurance p { font-size: 15px; color: var(--grey-300); }
.contract-cta { scroll-margin-top: 160px; background-image: none; }
.contract-cta .cta-card__copy { gap: 24px; }
.contract-cta .cta-card__copy::after { content: ""; display: block; height: 160px; background: url("/assets/images/home/cta-background.webp") left bottom / min(860px, 225%) auto no-repeat; }
.contract-cta .cta-card__copy h2 { max-width: 540px; line-height: 1.15; }
.contract-cta .cta-card__copy p { max-width: 510px; line-height: 1.4; }
.contract-cta .checkbox a { text-decoration: underline; }
.contract-faq { padding-top: 60px; }
@media (max-width: 1199px) {
  .contract-hero__copy { width: 62%; }
  .contract-hero h1 { font-size: 36px; }
  .contract-hero__copy > p { font-size: 18px; }
  .contract-benefits .benefits-grid, .contract-benefits .container { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .contract-benefits .benefit-card { min-height: 180px; }
  .contract-industries__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .contract-capabilities__layout { grid-template-columns: 1fr; }
  .contract-capabilities__photo { min-height: 0; max-height: 320px; aspect-ratio: 3; }
  .contract-capabilities__grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .contract-feature { gap: 12px; padding: 20px 16px; }
  .contract-cooperation .contract-feature { flex-direction: column; padding: 20px; }
  .contract-steps .logistics-steps__list { grid-template-columns: repeat(3,minmax(0,1fr)); row-gap: 30px; }
  .contract-steps .logistics-steps__list li { min-height: 190px; }
  .contract-quality__grid { grid-template-columns: 1fr 1.5fr; }
  .contract-quality__assurance { grid-column: 1/-1; align-items: center; }
}
@media (max-width: 767px) {
  .contract-section-title { font-size: 24px; margin-bottom: 24px; }
  .contract-hero__photo { position: relative; inset: auto; width: 100%; height: 220px; }
  .contract-hero__photo img { object-position: center; }
  .contract-hero::after { display: none; }
  .contract-hero { display: flex; flex-direction: column-reverse; }
  .contract-hero__inner { padding-top: 20px; padding-bottom: 28px; }
  .contract-hero .breadcrumbs { margin-bottom: 24px; font-size: 12px; }
  .contract-hero__copy { width: 100%; }
  .contract-hero h1 { font-size: 30px; }
  .contract-hero__copy > p { margin: 20px 0 24px; font-size: 17px; }
  .contract-hero__actions { display: grid; gap: 12px; }
  .contract-hero__actions .button { width: 100%; padding-inline: 12px; }
  .contract-benefits { padding: 24px 0; }
  .contract-benefits .container { grid-template-columns: 1fr; }
  .contract-benefits .benefit-card { min-height: 0; padding: 20px; gap: 16px; }
  .contract-industries { padding-top: 20px; }
  .contract-industries__grid { grid-template-columns: 1fr; }
  .contract-industry__photo { aspect-ratio: 2.5; }
  .contract-industry__caption { min-height: 84px; }
  .contract-industry__caption h3 { font-size: 16px; }
  .contract-capabilities__grid, .contract-cooperation__grid { grid-template-columns: 1fr; }
  .contract-capabilities__photo { aspect-ratio: 1.7; max-height: none; }
  .contract-feature, .contract-cooperation .contract-feature { flex-direction: row; padding: 20px; }
  .contract-steps .logistics-steps__scroller { width: 100%; padding-bottom: 12px; }
  .contract-steps .logistics-steps__list { width: 1420px; grid-template-columns: repeat(6,220px); gap: 20px; }
  .contract-steps .logistics-steps__list li { min-height: 200px; }
  .contract-steps .logistics-steps__list h3 { min-height: 42px; }
  .contract-quality { padding-top: 0; }
  .contract-quality__grid { grid-template-columns: 1fr; gap: 20px; }
  .contract-quality__photo { min-height: 0; aspect-ratio: 1.7; }
  .contract-quality__assurance { padding: 20px; }
  .contract-cta { scroll-margin-top: 110px; }
  .contract-cta .cta-card { gap: 32px; }
  .contract-cta .cta-card__copy h2 { font-size: 30px; }
  .contract-faq { padding-top: 40px; }
}
@media (prefers-reduced-motion: reduce) {
  .contract-industry, .contract-industry__photo img { transition: none; }
}
