/* Approved page bodies; existing global navigation stays the source of truth. */
.press-page { color:#081530; font-family:Arial,sans-serif; }
.press-page__crumbs { margin:32px 0 38px; color:#9098a2; font-size:15px; }
.press-page__crumbs a { color:inherit; }
.press-page h1 { margin:0 0 12px; font-size:clamp(34px,4.9vw,54px); line-height:1.15; }
.press-page__lead { font-size:24px; line-height:1.4; margin:0 0 22px; }
.press-page__search { display:block; margin:0 0 32px; }
.press-page__search input { box-sizing:border-box; width:100%; min-height:56px; padding:15px 22px; border:1px solid #909cb1; border-radius:4px; background:#fff; color:#081530; font:20px Arial,sans-serif; }
.press-page__search input::placeholder { color:#8591a8; }
.press-faq__nav { display:flex; flex-wrap:wrap; align-items:center; gap:16px 28px; border-bottom:1px solid #d6dfeb; padding-bottom:14px; margin-bottom:30px; }
.press-faq__nav a { font-size:18px; color:#0057ad; padding:10px 0; }
.press-faq__nav a.is-active { padding:10px 18px; background:#b9cd00; color:#081530; border-radius:4px; text-decoration:none; font-weight:700; }
.press-faq__group { scroll-margin-top:24px; margin-bottom:38px; }
.press-faq__group h2 { margin:0 0 20px; font-size:46px; line-height:1.2; }
.press-faq details { border-top:1px solid #d6dfeb; }
.press-faq details:last-child { border-bottom:1px solid #d6dfeb; }
.press-faq summary { cursor:pointer; padding:17px 4px; font-size:20px; font-weight:700; line-height:1.35; }
.press-faq__answer { display:flex; gap:24px; align-items:flex-start; padding:4px 0 18px 29px; }
.press-faq__answer p { flex:1; font-size:19px; line-height:1.4; margin:0; }
.press-faq__answer img { width:37%; height:auto; object-fit:contain; }
.press-page__cta { display:flex; align-items:center; justify-content:space-between; gap:24px; background:#eef2f7; border-radius:5px; padding:24px 28px; margin:28px 0; }
.press-page__cta h2 { font-size:34px; line-height:1.16; margin:0; max-width:570px; }
.press-page__cta p { margin:6px 0 0; font-size:22px; }
.press-page__button { display:inline-flex; align-items:center; justify-content:center; padding:17px 28px; border-radius:5px; background:#b9cd00; color:#081530; font-size:20px; font-weight:700; text-decoration:none; flex-shrink:0; }
.press-page__button:hover { background:#a6b900; color:#081530; }
.press-page a:focus-visible, .press-page summary:focus-visible, .press-page input:focus-visible { outline:3px solid #0057ad; outline-offset:3px; }
.press-page [hidden] { display:none!important; }
@media(max-width:700px) {
 .press-page__crumbs { margin-bottom:26px; font-size:13px; }
 .press-page__lead { font-size:19px; }
 .press-faq__group h2 { font-size:30px; }
 .press-faq summary { font-size:17px; }
 .press-faq__answer { flex-direction:column; padding-left:20px; }
 .press-faq__answer p { font-size:17px; }
 .press-faq__answer img { width:min(100%,368px); }
 .press-page__cta { flex-direction:column; align-items:stretch; padding:20px; }
 .press-page__cta h2 { font-size:27px; }
 .press-page__cta p { font-size:18px; }
 .press-faq__nav { gap:8px 15px; }
 .press-faq__nav a { font-size:16px; }
}
.press-glossary__letters { display:flex; flex-wrap:wrap; gap:9px 13px; padding:0 0 22px; border-bottom:1px solid #d6dfeb; }
.press-glossary__letters a { min-width:24px; text-align:center; color:#081530; font-size:21px; font-weight:700; padding:7px 4px; text-decoration:none; }
.press-glossary__letters a.is-active { background:#b9cd00; border-radius:4px; }
.press-glossary__group { display:grid; grid-template-columns:160px minmax(0,1fr); gap:24px; border-bottom:1px solid #d6dfeb; padding:38px 8px; scroll-margin-top:24px; }
.press-glossary__group h2 { margin:0; font-size:76px; line-height:1.1; }
.press-glossary__group ul { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 45px; }
.press-glossary__group li { margin:0; font-size:22px; line-height:1.35; }
.press-glossary__group a,.press-glossary__term { color:#07275e; }
@media(max-width:700px) { .press-glossary__group { grid-template-columns:46px minmax(0,1fr); gap:14px; padding:26px 0; } .press-glossary__group h2 { font-size:40px; } .press-glossary__group ul { grid-template-columns:1fr; gap:15px; } .press-glossary__group li { font-size:19px; } }
.press-term { display:grid; grid-template-columns:220px minmax(0,1fr); gap:38px; }
.press-term__toc { border-left:1px solid #d6dfeb; border-right:1px solid #d6dfeb; padding:12px 14px; align-self:start; }
.press-term__toc h2 { font-size:20px; margin:0 0 18px; }
.press-term__toc ul { padding:0; margin:0; list-style:none; display:grid; gap:17px; }
.press-term__toc a { font-size:16px; color:#0057ad; }
.press-term__eyebrow { color:#0057ad; font-weight:700; font-size:16px; margin:0 0 8px; }
.press-term h1 { font-size:42px; line-height:1.05; }
.press-term .press-page__lead { font-size:21px; color:#244e7e; margin-bottom:14px; }
.press-term__hero { width:100%; height:auto; }
.press-term section { scroll-margin-top:24px; margin-top:18px; }
.press-term h2 { font-size:30px; line-height:1.2; margin:0 0 8px; }
.press-term__body > section > p { color:#40516d; font-size:18px; line-height:1.3; margin:0 0 10px; }
.press-term__comparisons { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.press-term__comparisons > div { position:relative; min-height:146px; background:#eef2f7; border-radius:4px; padding:14px 16px; overflow:hidden; }
.press-term__comparisons h3 { font-size:24px; position:relative; z-index:1; margin:0 0 10px; }
.press-term__comparisons p { font-size:18px; position:relative; z-index:1; margin:0; }
.press-term__comparisons img { position:absolute; right:0; bottom:0; width:57%; height:85%; object-fit:contain; }
.press-term__applications { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.press-term__applications img { width:100%; height:auto; }
.press-term__related { display:flex; justify-content:space-between; align-items:center; gap:20px; border-top:1px solid #d6dfeb; margin-top:18px; padding-top:16px; }
.press-term__related h3 { margin:0 0 8px; font-size:20px; }
.press-term__related p { margin:0; font-size:16px; }
.press-term__related .press-page__button { font-size:15px; padding:12px 18px; }
@media(max-width:850px) { .press-term { grid-template-columns:1fr; gap:25px; } .press-term__toc { border-right:0; } .press-term h1 { font-size:34px; } }
@media(max-width:600px) { .press-term__comparisons { grid-template-columns:1fr; } .press-term__applications { gap:7px; } .press-term__related { flex-direction:column; align-items:stretch; } }
.press-contacts h1 { font-size:40px; }
.press-contacts__lead { font-size:24px; line-height:1.3; font-weight:700; margin:10px 0 28px; }
.press-contacts__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px 40px; margin:0 0 24px; }
.press-contacts__item { display:flex; gap:20px; align-items:center; }
.press-contacts__item p { margin:0 0 5px; font-size:20px; }
.press-contacts__item strong { font-size:26px; line-height:1.25; }
.press-contacts__item a { color:#081530; text-decoration:none; }
.press-contacts__icon { width:60px; height:60px; border-radius:50%; background:#edf4f9; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.press-contacts__icon svg { width:32px; height:32px; }
.press-contacts__office { margin:44px 0 25px; }
.press-contacts__office h2 { font-size:34px; margin:0 0 20px; }
.press-contacts__address { display:flex; gap:20px; }
.press-contacts__address > svg { width:30px; height:30px; flex-shrink:0; margin:0; }
.press-contacts__address p { font-size:24px; margin:0 0 6px; }
.press-contacts__address p + p { font-size:18px; }
.press-contacts__notice { margin:20px 0; padding:15px 20px; background:#eef5df; border-radius:5px; font-size:18px; }
.press-contacts__bottom { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:45px; border-top:1px solid #d6dfeb; margin-top:45px; padding-top:32px; }
.press-contacts__bottom h2 { margin:0 0 10px; font-size:26px; }
.press-contacts__bottom p { font-size:19px; line-height:1.45; margin:0 0 18px; }
@media(max-width:850px) { .press-contacts__grid { grid-template-columns:1fr; } .press-contacts__item strong { font-size:23px; } }
@media(max-width:600px) { .press-contacts__bottom { grid-template-columns:1fr; } .press-contacts__lead { font-size:20px; } .press-contacts__office h2 { font-size:28px; } .press-contacts__address p { font-size:20px; } }

/* Remaining approved pages share their semantic bodies, not rasterized screens. */
.press-about > h1,.press-production > h1 { font-size:36px; margin-bottom:14px; }
.press-about > h2,.press-production > h2 { margin:24px 0 10px; font-size:35px; line-height:1.2; }
.press-editorial-hero { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:center; min-height:330px; background:#ececf0; }
.press-editorial-hero > div { padding:34px 0 34px 45px; z-index:1; }
.press-editorial-hero h2 { font-size:42px; line-height:1.04; margin:0 0 16px; }
.press-editorial-hero p { font-size:21px; line-height:1.18; margin:0 0 23px; }
.press-editorial-hero > img { width:100%; height:100%; max-height:360px; object-fit:contain; }
.press-production .press-editorial-hero { background:#fff; min-height:285px; }
.press-production .press-editorial-hero > div { padding:20px 0 20px 6px; }
.press-production .press-editorial-hero h2 { font-size:35px; }
.press-production .press-editorial-hero p { font-size:18px; }
.press-editorial-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.press-editorial-cards img { width:100%; aspect-ratio:335/232; object-fit:cover; }
.press-editorial-cards h3 { font-size:18px; margin:8px 0 7px; }
.press-editorial-cards p { font-size:16px; line-height:1.25; margin:0; }
.press-steps { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:25px; padding:0; margin:18px 25px 24px; list-style:none; }
.press-steps__number { display:inline-flex; align-items:center; justify-content:center; width:58px; height:58px; border:1px solid #c7ccd6; border-radius:50%; font-size:26px; font-weight:700; margin-bottom:10px; }
.press-steps h3 { font-size:16px; margin:0 0 6px; }
.press-steps p { font-size:15px; line-height:1.25; margin:0; }
.press-about__finishing { display:grid; grid-template-columns:57% minmax(0,1fr); background:#f3f5f8; align-items:center; }
.press-about__finishing img { width:100%; height:100%; object-fit:cover; }
.press-about__finishing > div { padding:15px 22px; }
.press-about__finishing h2 { font-size:30px; line-height:1.05; margin:0 0 10px; }
.press-about__finishing p { font-size:17px; line-height:1.25; margin:0; }
.press-about .press-page__cta h2 { max-width:none; }
.press-production__applications { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 24px; }
.press-production__applications > article { display:grid; grid-template-columns:49% minmax(0,1fr); gap:16px; }
.press-production__applications img { width:100%; aspect-ratio:195/151; object-fit:cover; }
.press-production__applications h3 { font-size:18px; line-height:1.2; margin:7px 0 10px; }
.press-production__applications p { font-size:15px; line-height:1.3; margin:0 0 16px; }
.press-production__applications a { color:#617000; font-weight:700; font-size:16px; }
.press-production__brief { margin-top:24px; padding:20px; border-radius:5px; background:#eef2f7; }
.press-production__brief h2 { margin:0 0 20px; font-size:27px; }
.press-production__brief ul { display:flex; flex-wrap:wrap; justify-content:space-between; gap:12px; list-style:none; margin:0 0 20px; padding:0; }
.press-production__brief li { padding-right:20px; border-right:1px solid #c7ccd6; }
.press-production__brief li:last-child { border:0; }
.press-production__brief p { font-size:15px; margin:0; }
.press-production .press-page__cta p { font-size:15px; }
.press-services-index { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin-top:26px; }
.press-services-index article { padding:20px; border:1px solid #d6dfeb; border-radius:5px; }
.press-services-index h2 { font-size:23px; margin:0 0 12px; }
.press-services-index p { font-size:17px; line-height:1.45; margin:0; }
.press-service > section { border-top:1px solid #d6dfeb; padding:26px 0; }
.press-service > section:first-child { border:0; }
.press-service h2 { font-size:35px; line-height:1.15; margin:0 0 10px; }
.press-service p { font-size:18px; line-height:1.35; color:#244e7e; margin:0 0 20px; }
.press-service__hero { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:center; gap:20px; background:#f3f5f8; padding:26px!important; }
.press-service__hero h1 { font-size:42px; line-height:1.03; margin-bottom:16px; }
.press-service__hero p { font-size:20px; }
.press-service__hero .press-service__eyebrow { font-size:15px; margin-bottom:14px; color:#081530; }
.press-service__hero > img { width:100%; height:auto; max-height:420px; object-fit:contain; }
.press-service__branded-photo { display:block; position:relative; margin:0; min-width:0; }
.press-service__branded-photo > img:first-child { display:block; width:100%; height:auto; max-height:420px; object-fit:contain; }
.press-service__cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.press-service__cards img { width:100%; aspect-ratio:242/213; object-fit:cover; }
.press-service__cards .press-service__branded-photo > img:first-child { aspect-ratio:242/213; object-fit:cover; }
.press-service__cards h3 { margin:12px 0 8px; font-size:20px; line-height:1.2; }
.press-service__cards p { font-size:16px; margin:0; }
.press-service__preparation-grid { display:grid; grid-template-columns:42% minmax(0,1fr); gap:22px; align-items:start; }
.press-service__preparation-grid figure { margin:0; padding:18px; background:#f3f5f8; }
.press-service__preparation-grid figure img { width:100%; max-height:280px; object-fit:contain; }
.press-service__preparation-grid figcaption { font-size:16px; margin-top:10px; }
.press-service table { border-collapse:collapse; width:100%; font-size:15px; line-height:1.35; margin-bottom:20px; }
.press-service th,.press-service td { padding:15px 12px; border:1px solid #d6dfeb; text-align:left; vertical-align:top; }
.press-service thead th { background:#eef2f7; }
.press-service__checks-grid { display:grid; grid-template-columns:53% minmax(0,1fr); gap:24px; align-items:center; }
.press-service__checks-grid > img { width:100%; max-height:340px; object-fit:cover; }
.press-service__checks-grid ul { padding:0; margin:0; list-style:none; display:grid; gap:19px; }
.press-service__checks-grid h3 { font-size:16px; margin:0 0 7px; }
.press-service__checks-grid p { font-size:15px; margin:0; }
.press-service__request { display:grid; grid-template-columns:56% minmax(0,1fr); align-items:center; padding:28px!important; background:#eef2f7; border-radius:5px; }
.press-service__request > img { width:100%; height:auto; object-fit:contain; max-height:330px; }
.press-service .press-service__contact { margin:18px 0 0; font-size:23px; font-weight:700; }
.press-service__contact a { color:#0057ad; text-decoration:none; }
.press-contact-map { position:relative; aspect-ratio:741/393; margin:20px 0 40px; border-radius:6px; overflow:hidden; background:#eef2f7; }
.press-contact-map iframe { position:absolute; inset:0; border:0; width:100%; height:100%; }
.press-contact-map__links { position:absolute; left:15px; bottom:15px; display:flex; flex-wrap:wrap; gap:12px; }
.press-contact-map__links a { background:#fff; border:2px solid #b9cd00; border-radius:5px; color:#145b13; text-decoration:none; font-size:18px; font-weight:700; padding:12px 20px; }
@media(max-width:900px) { .press-services-index { grid-template-columns:repeat(2,minmax(0,1fr)); } .press-editorial-hero h2,.press-service__hero h1 { font-size:34px; } .press-steps { margin-left:0; margin-right:0; gap:15px; } .press-production__applications { grid-template-columns:1fr; } .press-about__finishing h2 { font-size:25px; } }
@media(max-width:650px) { .press-editorial-hero,.press-about__finishing,.press-service__hero,.press-service__request,.press-service__preparation-grid,.press-service__checks-grid { grid-template-columns:1fr; } .press-editorial-hero > div { padding:25px; } .press-editorial-hero > img { max-height:290px; } .press-editorial-cards,.press-service__cards,.press-services-index { grid-template-columns:1fr; } .press-editorial-cards img,.press-service__cards img { max-height:310px; object-fit:contain; } .press-steps { grid-template-columns:repeat(2,minmax(0,1fr)); gap:25px; } .press-about > h2,.press-production > h2,.press-service h2 { font-size:28px; } .press-about .press-page__cta { align-items:stretch; } .press-service__request { padding:20px!important; } .press-contact-map { aspect-ratio:auto; height:390px; } .press-contact-map__links { left:10px; right:10px; bottom:10px; gap:8px; } .press-contact-map__links a { font-size:15px; padding:10px 13px; } }

/* Shared type roles across approved editorial, help, service and contact pages. */
.press-page { font-family:Arial,Helvetica,sans-serif; font-size:var(--type-body, 16px); line-height:1.5; }
.press-page h1, .press-contacts h1, .press-service__hero h1 { font-size:var(--type-h1, 36px); line-height:1.2; }
.press-page h2, .press-faq__group h2, .press-page__cta h2,
.press-contacts__office h2, .press-contacts__bottom h2 { font-size:var(--type-h2, 28px); line-height:1.25; }
.press-page h3 { font-size:var(--type-h3, 22px); line-height:1.3; }
.press-page__lead, .press-contacts__lead { font-size:var(--type-lead, 20px); line-height:1.4; }
.press-faq summary { font-size:18px; line-height:1.35; }
.press-faq__answer p, .press-contacts__bottom p { font-size:var(--type-body, 16px); line-height:1.5; }
.press-page__button, .press-page__search input { font-size:var(--type-body, 16px); }
.press-page__crumbs { font-size:var(--type-small, 14px); }
@media(max-width:650px) {
  .press-page h1, .press-contacts h1, .press-service__hero h1 { font-size:28px; }
  .press-page h2, .press-faq__group h2, .press-page__cta h2,
  .press-contacts__office h2, .press-contacts__bottom h2 { font-size:24px; }
  .press-page h3 { font-size:20px; }
  .press-page__lead, .press-contacts__lead { font-size:18px; }
  .press-faq summary { font-size:16px; }
}
.press-term .press-page__lead { font-size:var(--type-lead, 20px); }
@media(max-width:650px) { .press-term .press-page__lead { font-size:18px; } }
.press-services-index p, .press-about__finishing p { font-size:var(--type-body, 16px); line-height:1.5; }
.press-page .press-services-index h2 { font-size:18px; line-height:1.3; }
.press-page__crumbs { margin:24px 0 16px; font-size:14px; line-height:20px; }
.press-faq summary { font-size:18px; line-height:26px; }
.press-page__button { font-size:16px; line-height:20px; font-weight:700; }
@media(max-width:650px) { .press-page__crumbs { margin:16px 0 12px; } .press-faq summary { font-size:18px; line-height:26px; } }
.press-term__content [id^="term-"] { scroll-margin-top:24px; }
.press-term__sources { margin:28px 0; padding-top:18px; border-top:1px solid #d6dfeb; }
.press-term__sources h2 { margin:0 0 12px; font-size:18px; line-height:26px; }
.press-term__sources ul { display:flex; flex-wrap:wrap; gap:8px 18px; margin:0; padding-left:20px; }
.press-term__sources a { overflow-wrap:anywhere; }
article.press-term { display:block; }
article.press-term > header h1 { overflow-wrap:anywhere; }
.press-production__archive { margin: 0; min-width: 0; padding: 16px; }
.press-production__archive-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
.press-production__machine { display: block; aspect-ratio: 223 / 188; background-image: url('../img/production-vteme-archive-index-20261012.jpg'); background-repeat: no-repeat; background-size: 444.4% auto; }
.press-production__machine--1 { background-position: 3.26% 34.57%; }
.press-production__machine--2 { background-position: 34.38% 34.57%; }
.press-production__machine--3 { background-position: 65.49% 34.57%; }
.press-production__machine--4 { background-position: 96.74% 34.57%; }
.press-production__archive figcaption { margin-top: 8px; color: #596575; font-size: 12px; line-height: 1.4; }
.press-production__source-text { max-width: 860px; margin: 28px 0; font-size: 16px; line-height: 1.5; }
@media (max-width: 767px) {
  .press-production__archive { padding: 0 12px 16px; }
  .press-production__source-text { margin: 20px 0; }
}

/* Registered service details use the existing full-width top navigation. */
.press-service,
.press-service > section,
.press-service__hero > div,
.press-service__preparation-grid > div,
.press-service__request > div { min-width: 0; }
.press-service h1,
.press-service h2,
.press-service h3,
.press-service p,
.press-service th,
.press-service td { overflow-wrap: break-word; }
.press-service__hero > img,
.press-service__request > img { max-width: 100%; }
.press-service th,
.press-service td { overflow-wrap: anywhere; }
@media (max-width: 900px) {
  .press-service__hero,
  .press-service__request,
  .press-service__preparation-grid,
  .press-service__checks-grid { grid-template-columns: minmax(0,1fr); }
  .press-service__cards { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 650px) {
  .press-service__cards { grid-template-columns: minmax(0,1fr); }
  .press-service__preparation-grid th:first-child { overflow-wrap: normal; }
  .press-service > section { padding: 20px 0; }
  .press-service__hero > img { max-height: 300px; }
  .press-service__contact { overflow-wrap: anywhere; }
}

/* A glossary entry is a definition, never a separate illustrated long-form layout. */
article.press-term { display:block; max-width:900px; }
.press-term__content { font-size:18px; line-height:1.6; }
.press-glossary__letters a[aria-current="location"], .press-faq__nav a[aria-current="location"] { color:#617000; background:transparent; font-weight:700; }

/* Owner deletions leave the surviving visual columns usable at every breakpoint. */
.press-editorial-hero > :only-child,.press-about__finishing > :only-child { grid-column:1 / -1; }
.press-editorial-hero:has(> :only-child) { min-height:0; }
.press-editorial-cards,.press-contacts__grid { grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr)); }
.press-steps { grid-template-columns:repeat(auto-fit,minmax(min(100%,145px),1fr)); }

.press-service__hero > :only-child,.press-service__preparation-grid > :only-child,.press-service__checks-grid > :only-child { grid-column:1 / -1; }
.press-service__hero:has(> :only-child),.press-service__preparation-grid:has(> :only-child),.press-service__checks-grid:has(> :only-child) { min-height:0; }
