/* Content pages extend the approved WS palette and typography, without CMS/BS inheritance. */
.ws-home .ws-capability { justify-content: flex-end; }
.ws-new-machinery-card .ws-new-machinery-card__mark { margin-left: auto; }
@media (min-width: 992px) {
  .ws-site-navigation.navbar-area.navbar-five .navbar .navbar-nav > .nav-item:last-child > .sub-menu { left: auto; right: 0; }
}
.ws-content-page {
  --wsc-ink: #20251f;
  --wsc-muted: #565f52;
  --wsc-paper: #f4f1e9;
  --wsc-red: #c82a31;
  color: var(--wsc-ink);
  background: var(--wsc-paper);
  font-family: "Source Sans 3", sans-serif;
  font-size: 1.125rem;
  line-height: 1.65;
}
.ws-content-page *, .ws-content-page *::before, .ws-content-page *::after { box-sizing: border-box; }
.ws-content-page .ws-content-page__shell { width: min(1320px, calc(100% - 64px)); margin-inline: auto; }
.ws-content-page h1, .ws-content-page h2, .ws-content-page h3, .ws-content-page h4, .ws-content-page h5, .ws-content-page h6 {
  color: var(--wsc-ink); font-family: "Barlow Condensed", sans-serif; font-weight: 600 !important;
  letter-spacing: -.015em; line-height: 1.08; text-transform: none !important;
}
.ws-content-page h2 { font-size: clamp(1.8rem, 3vw, 2.7rem); margin: 0 0 1.2rem; }
.ws-content-page h3 { font-size: 1.75rem; margin: 2rem 0 .9rem; }
.ws-content-page h4 { font-size: 1.45rem; margin: 1.8rem 0 .8rem; }
.ws-content-page p, .ws-content-page li, .ws-content-page address { color: var(--wsc-ink); font-size: inherit; line-height: inherit; letter-spacing: normal; }
.ws-content-page p { margin: 0 0 1.35rem; }
.ws-content-page a { color: #a91f27; font-size: inherit; text-decoration: underline; text-underline-offset: .2em; overflow-wrap: anywhere; }
.ws-content-page a:hover { color: #70131a; }
.ws-content-page a:focus-visible, .ws-content-page input:focus-visible { outline: 3px solid #c82a31; outline-offset: 5px; }
.ws-content-page img { display: block; max-width: 100%; height: auto; }
.ws-content-page .ws-content-page__hero {
  color: #fff; background: radial-gradient(ellipse at 85% 20%, #3d4739 0, transparent 60%), #222a23;
  border-bottom: 5px solid var(--wsc-red); padding: 26px 0 65px;
}
.ws-content-page .ws-content-page__crumbs { display: flex; flex-wrap: wrap; gap: .6rem; margin-bottom: 3rem; font-size: .9rem; }
.ws-content-page .ws-content-page__crumbs a, .ws-content-page .ws-content-page__crumbs span { color: #e2e1d8; }
.ws-content-page .ws-content-page__hero-grid { display: grid; grid-template-columns: minmax(0, 1fr) 190px; align-items: center; gap: 5rem; }
.ws-content-page .ws-content-page__hero h1 { color: #fff; font-size: clamp(2.8rem, 5.3vw, 5rem); line-height: .98; max-width: 19ch; margin: 0; }
.ws-content-page .ws-content-page__hero-mark { opacity: .32; }
.ws-content-page .ws-content-page__kicker { color: #696b5e; font-size: .78rem; font-weight: 700; letter-spacing: .11em; text-transform: uppercase; margin-bottom: 1.1rem; }
.ws-content-page .ws-content-page__hero .ws-content-page__kicker { color: #dedbca; }
.ws-content-page .ws-content-page__layout { display: grid; grid-template-columns: minmax(0, 1fr) 275px; gap: clamp(2rem, 6vw, 6rem); padding-block: 64px 80px; align-items: start; }
.ws-content-page--wide .ws-content-page__layout, .ws-content-page--supplement .ws-content-page__layout { display: block; }
.ws-content-page .ws-content-page__body { min-width: 0; }
.ws-content-page .ws-content-page__prose { max-width: 82ch; }
.ws-content-page .ws-content-page__prose + .ws-content-page__prose { border-top: 1px solid #d7d1c4; margin-top: 2.5rem; padding-top: 2.5rem; }
.ws-content-page .ws-content-page__prose:first-child > p:first-of-type { font-size: 1.25rem; color: #354331; }
.ws-content-page .ws-content-page__prose h2 { margin-top: 2.5rem; }
.ws-content-page .ws-content-page__prose ul, .ws-content-page .ws-content-page__prose ol { margin: 1rem 0 1.4rem; padding: 0 0 0 1.25rem; list-style-position: outside; list-style-image: none; }
.ws-content-page .ws-content-page__prose ul { list-style-type: square; }
.ws-content-page .ws-content-page__prose ol { list-style-type: decimal; list-style-type: revert-layer; }
.ws-content-page .ws-content-page__prose li { display: list-item; margin: 0; padding: 0 0 0 .3rem; color: inherit; font: inherit; letter-spacing: normal; list-style-type: inherit; list-style-position: outside; overflow-wrap: anywhere; }
.ws-content-page .ws-content-page__prose li + li { margin-top: .55rem; }
.ws-content-page .ws-content-page__prose li::marker { color: #9f1f25; font-weight: 700; }
.ws-content-page .ws-content-page__prose li > ul, .ws-content-page .ws-content-page__prose li > ol { margin: .55rem 0 0; }
.ws-content-page .ws-content-page__prose li > ul { list-style-type: circle; }
.ws-content-page .ws-content-page__prose li > p { margin: 0; }
.ws-content-page .ws-content-page__prose li > p + p { margin-top: .5rem; }
.ws-content-page .ws-content-page__prose > :first-child { margin-top: 0; }
.ws-content-page .ws-content-page__prose > :last-child { margin-bottom: 0; }
.ws-content-page .ws-content-page__prose table { width: 100%; border-collapse: collapse; }
.ws-content-page .ws-content-page__prose td, .ws-content-page .ws-content-page__prose th { border-bottom: 1px solid #ccc; padding: .7rem; text-align: left; }
.ws-content-page .ws-content-page__aside { border-top: 3px solid var(--wsc-red); padding: 24px; background: #e8e4da; }
.ws-content-page .ws-content-page__aside h2 { font-size: 2rem; margin-bottom: 1.7rem; }
.ws-content-page .ws-content-page__aside > a { display: block; margin: 1.3rem 0 0; color: var(--wsc-ink); }
.ws-content-page .ws-content-page__aside > a > span, .ws-content-page .ws-content-page__aside > a > strong { display: block; }
.ws-content-page .ws-content-page__aside > a > span { font-size: .85rem; }
.ws-content-page .ws-content-page__aside .ws-content-page__link { display: flex; }
.ws-content-page .ws-content-page__link { display: inline-flex; align-items: center; justify-content: space-between; gap: 2rem; margin-block: 1.5rem; padding-block: .75rem; border-bottom: 2px solid #c82a31; font-weight: 700; text-decoration: none; }
.ws-content-page .ws-content-page__figure { margin: 0 0 2.5rem; background: #fff; }
.ws-content-page .ws-content-page__figure img { width: 100%; max-height: 650px; object-fit: contain; }
.ws-content-page .ws-content-page__promotion { display: block; margin: 2.5rem 0; background: #e7e3d7; text-decoration: none; }
.ws-content-page .ws-content-page__promotion img { width: 100%; max-height: 400px; object-fit: contain; }
.ws-content-page .ws-content-page__promotion span { display: block; padding: 1.2rem 1.5rem; font-weight: 700; }
.ws-content-page .ws-content-page__group-title { padding-top: 1rem; border-top: 3px solid #c82a31; margin: 3.5rem 0 1.5rem; }
.ws-content-page .ws-content-page__group-title:first-child { margin-top: 0; }
.ws-content-page .ws-content-page__people, .ws-content-page .ws-content-page__models { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
.ws-content-page .ws-content-page__person, .ws-content-page .ws-content-page__model { background: #fff; min-width: 0; }
.ws-content-page .ws-content-page__person > img, .ws-content-page .ws-content-page__person-placeholder { width: 100%; aspect-ratio: 5/4; object-fit: contain; background: #e1e0d7; }
.ws-content-page .ws-content-page__person-placeholder { display: grid; place-items: center; background: #384236; }
.ws-content-page .ws-content-page__person-placeholder img { width: 120px; opacity: .45; }
.ws-content-page .ws-content-page__person-copy, .ws-content-page .ws-content-page__model > div { padding: 26px; }
.ws-content-page .ws-content-page__person h3, .ws-content-page .ws-content-page__model h3 { font-size: 2rem; margin: 0 0 .65rem; }
.ws-content-page .ws-content-page__person p { color: #59604f; font-size: 1rem; min-height: 3.3rem; }
.ws-content-page .ws-content-page__person address { margin: 0; font-style: normal; font-size: 1rem; }
.ws-content-page .ws-content-page__person address a { display: block; margin-top: .55rem; }
.ws-content-page .ws-content-page__person address span { color: #66705f; font-size: .8rem; margin-right: .4rem; }
.ws-content-page .ws-content-page__model > img { width: 100%; height: 240px; padding: 1.5rem; object-fit: contain; }
.ws-content-page .ws-content-page__model p { font-size: 1rem; }
.ws-content-page .ws-content-page__depot { display: grid; grid-template-columns: 1fr 1.6fr; gap: 3rem; margin-bottom: 2rem; background: #e7e3d8; padding: 2rem; }
.ws-content-page .ws-content-page__depot address { font-style: normal; margin: 1.5rem 0; }
.ws-content-page .ws-content-page__depot a { display: block; margin-top: .65rem; }
.ws-content-page .ws-content-page__depot iframe { width: 100%; min-height: 380px; height: 100%; border: 0; }
.ws-content-page .ws-content-page__link-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; background: #d5d0c2; }
.ws-content-page .ws-content-page__link-grid a { display: flex; justify-content: space-between; gap: 1rem; padding: 2rem; background: #e9e5da; color: #242b22; font-family: "Barlow Condensed", sans-serif; font-size: 2rem; text-decoration: none; }
.ws-content-page .ws-content-page__link-grid a:hover { color: #fff; background: #394432; }
.ws-content-page .ws-content-page__closing { padding: 60px 0; background: #35402f; }
.ws-content-page .ws-content-page__closing > div { display: flex; justify-content: space-between; align-items: center; gap: 3rem; }
.ws-content-page .ws-content-page__closing h2 { color: #fff; margin: 0; }
.ws-content-page .ws-content-page__closing .ws-content-page__kicker { color: #d0d7c6; }
.ws-content-page .ws-content-page__closing a { display: flex; gap: 2rem; color: #fff; flex-shrink: 0; padding: 1rem 0; border-bottom: 2px solid #e65559; text-decoration: none; font-weight: 700; }
.ws-content-page .ws-content-page__notice { border-left: 4px solid #bd692a; padding: 1.25rem; background: #f5e4cc; }
.ws-content-page .ws-content-page__supplement-heading { padding-top: 3rem; }
.ws-content-page--supplement .ws-content-page__layout { padding-top: 1rem; }
.ws-content-page .ws-newsletter { padding: 2rem; background: #e9e5da; max-width: 660px; }
.ws-content-page .ws-newsletter label { display: block; font-weight: 600; margin: 1rem 0 .35rem; }
.ws-content-page .ws-newsletter input:not([type="checkbox"]) { width: 100%; padding: .8rem; border: 1px solid #a5a99c; background: #fff; color: #222; font: inherit; }
.ws-content-page .ws-newsletter .ws-newsletter__consent { display: flex; align-items: flex-start; gap: .75rem; font-size: 1rem; }
.ws-content-page .ws-newsletter input[type="checkbox"] { width: 20px; height: 20px; flex: 0 0 20px; margin-top: .25rem; accent-color: #a51e27; }
.ws-content-page .ws-newsletter button { border: 0; padding: .85rem 1.4rem; margin-top: 1.3rem; color: #fff; background: #af222b; font: inherit; font-weight: 700; }
.ws-content-page .ws-newsletter .ws-newsletter__error { display: block; color: #9d1820; font-size: .95rem; margin-top: .35rem; }
@media (max-width: 991px) {
  .ws-content-page .ws-content-page__hero-grid { grid-template-columns: 1fr 120px; gap: 2rem; }
  .ws-content-page .ws-content-page__layout { grid-template-columns: minmax(0, 1fr); gap: 2rem; }
  .ws-content-page .ws-content-page__people, .ws-content-page .ws-content-page__models { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ws-content-page .ws-content-page__closing > div { flex-direction: column; align-items: flex-start; }
}
@media (max-width: 575px) {
  .ws-content-page { font-size: 1.05rem; }
  .ws-content-page .ws-content-page__shell { width: calc(100% - 36px); }
  .ws-content-page .ws-content-page__hero { padding-bottom: 40px; }
  .ws-content-page .ws-content-page__hero-grid { display: block; }
  .ws-content-page .ws-content-page__hero-mark { display: none; }
  .ws-content-page .ws-content-page__layout { padding-block: 36px 50px; }
  .ws-content-page .ws-content-page__people, .ws-content-page .ws-content-page__models, .ws-content-page .ws-content-page__link-grid, .ws-content-page .ws-content-page__depot { grid-template-columns: 1fr; }
  .ws-content-page .ws-content-page__depot { padding: 1.3rem; gap: 1rem; }
  .ws-content-page .ws-content-page__depot iframe { min-height: 280px; }
  .ws-content-page .ws-newsletter { padding: 1.3rem; }
  .ws-content-page .ws-content-page__closing a { flex-wrap: wrap; gap: 1rem; }
}
