/*
 * Omelet / comparison B - public type and layout contract.
 * Seven semantic text roles; one sans family; mono only for metadata.
 * Rules apply to explicit HTML roles, never to generated SVG/canvas diagrams.
 */
body.comparison-site {
  --font-sans:Pretendard,"Pretendard Fallback",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --font-mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace;
  --type-display:clamp(56px,5.625vw,72px);
  --type-section:clamp(34px,3.75vw,48px);
  --type-subheading:28px;
  --type-lead:20px;
  --type-body:16px;
  --type-caption:12px;
  --type-label:11px;
  --type-navigation:14px;
  --type-action:13px;
  --paper:#f2f1eb;
  --ink:#1b2420;
  --muted:#5f6962;
  --line:#cbd0c7;
  --dark:#111713;
  --lavender:#baa7df;
  --lavender-ink:#7e699b;
  --sage:#a8caba;
  --sage-ink:#536f5f;
  --type-ink:var(--ink);
  --type-muted:var(--muted);
  --type-accent:var(--lavender-ink);
  --layout-max:1280px;
  --layout-gutter:56px;
  --layout-gap:64px;
  --hero-space-start:72px;
  --hero-space-end:72px;
  --section-space:88px;
  font-family:var(--font-sans);
  font-size:var(--type-body);
  font-weight:400;
  line-height:1.75;
  background:var(--paper);
  color:var(--ink);
}

/* Explicit role selectors have enough specificity to replace old page-level sizes. */
body.comparison-site #main [data-type].type-display,
body.comparison-site #main [data-type].type-section-title,
body.comparison-site #main [data-type].type-subheading {
  font-family:var(--font-sans);
  font-weight:400;
  color:var(--type-ink);
  text-wrap:wrap;
  white-space:normal;
  word-break:normal;
  overflow-wrap:normal;
  hyphens:none;
}
body.comparison-site #main [data-type].type-display {
  font-size:var(--type-display);
  line-height:1.06;
  letter-spacing:-.045em;
  max-width:100%;
  margin:0;
}
body.comparison-site #main [data-type].type-section-title {
  font-size:var(--type-section);
  line-height:1.12;
  letter-spacing:-.04em;
  max-width:100%;
}
body.comparison-site #main [data-type].type-subheading {
  font-size:var(--type-subheading);
  line-height:1.25;
  letter-spacing:-.025em;
  max-width:100%;
}
body.comparison-site #main [data-type].type-lead {
  font-family:var(--font-sans);
  font-size:var(--type-lead);
  font-weight:400;
  line-height:1.65;
  letter-spacing:-.01em;
  color:var(--type-muted);
  max-width:42ch;
  text-wrap:pretty;
  overflow-wrap:normal;
  word-break:normal;
}
body.comparison-site #main [data-type].type-body {
  font-family:var(--font-sans);
  font-size:var(--type-body);
  font-weight:400;
  line-height:1.75;
  letter-spacing:0;
  color:var(--type-muted);
  max-width:66ch;
  text-wrap:pretty;
}
body.comparison-site #main [data-type].type-caption {
  font-family:var(--font-sans);
  font-size:var(--type-caption);
  font-weight:400;
  line-height:1.65;
  letter-spacing:0;
  color:var(--type-muted);
  text-wrap:pretty;
}
body.comparison-site #main [data-type].type-label {
  font-family:var(--font-mono);
  font-size:var(--type-label);
  font-weight:400;
  line-height:1.5;
  letter-spacing:.075em;
  text-transform:uppercase;
  color:var(--type-muted);
}
body.comparison-site #main [data-type]:is(.type-display,.type-section-title,.type-subheading) :is(em,span) {
  font-family:inherit;
  font-size:inherit;
  font-weight:inherit;
  font-style:normal;
  line-height:inherit;
  letter-spacing:inherit;
  color:var(--type-accent);
  display:inline;
}
body.comparison-site #main [data-type].type-display em { color:inherit; }

body.comparison-site em { font-family:inherit; }

/* One content edge on all eleven pages. */
body.comparison-site :is(.wrap,.direction-wrap,.learn-main,.comparison-directory,.comparison-bar-inner) {
  width:min(var(--layout-max),calc(100% - var(--layout-gutter) * 2));
  max-width:var(--layout-max);
  margin-inline:auto;
}
body.comparison-site .site-header {
  height:80px;
  padding-inline:max(var(--layout-gutter),calc((100vw - var(--layout-max))/2));
  gap:32px;
  background:var(--dark);
  color:var(--paper);
  border-bottom:1px solid #f2f1eb24;
}
body.comparison-site .site-header .brand { width:126px; }
body.comparison-site .site-header .brand img { filter:grayscale(1) brightness(0) invert(1); }
body.comparison-site .site-header .primary-nav { font:400 var(--type-navigation)/1.5 var(--font-sans); }
body.comparison-site .header-contact { font:400 var(--type-action)/1.5 var(--font-sans); min-height:44px; border:0; border-bottom:1px solid #f2f1eb66; padding:8px 0; }
body.comparison-site :is(.text-link,.direction-link,.direction-button) { font:400 var(--type-action)/1.5 var(--font-sans); min-height:44px; }

/* Shared page entrance: breadcrumb, full-width headline, then introductory copy. */
body.comparison-site .type-page-hero {
  padding-block:var(--hero-space-start) var(--hero-space-end);
  border-bottom:1px solid var(--line);
}
body.comparison-site :is(.detail-breadcrumb,.type-breadcrumb,.breadcrumbs) {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:12px;
  margin:0 0 32px;
  padding:0;
  font:400 var(--type-label)/1.5 var(--font-mono);
  letter-spacing:.04em;
  text-transform:none;
  color:var(--type-muted);
}
body.comparison-site :is(.detail-breadcrumb,.type-breadcrumb,.breadcrumbs) a { text-decoration:none; }
body.comparison-site :is(.detail-breadcrumb,.type-breadcrumb,.breadcrumbs) a:hover { text-decoration:underline; }
body.comparison-site .type-hero-grid {
  display:grid;
  grid-template-columns:minmax(0,1fr);
  align-items:start;
  gap:24px;
  margin:0;
  min-width:0;
}
body.comparison-site .type-hero-grid>* { min-width:0; }
body.comparison-site .type-hero-copy { padding:0; max-width:66ch; }
body.comparison-site .type-hero-copy>.type-lead { margin:0; max-width:66ch; }
body.comparison-site .type-hero-copy>.type-body { margin-top:20px; }
body.comparison-site .type-hero-copy>.type-caption { margin-top:20px; }
body.comparison-site .type-hero-copy>.type-label { display:block; margin-top:28px; }
body.comparison-site .type-hero-copy>.text-link { margin-top:28px; }
body.comparison-site :is(.detail-subnav,.company-sections) {
  margin-top:40px;
  padding-block:16px 0;
  border-top:1px solid var(--line);
  font:400 var(--type-action)/1.5 var(--font-sans);
  gap:16px 32px;
}
body.comparison-site .detail-subnav a { min-height:44px; padding-block:8px; }
body.comparison-site .detail-subnav a span { font:400 var(--type-label)/1.5 var(--font-mono); }
body.comparison-site .learn-main>.breadcrumbs { padding-top:var(--hero-space-start); margin-bottom:0; }
body.comparison-site .type-article-hero { padding-top:32px; }
body.comparison-site .article-layout { padding-block:56px var(--section-space); grid-template-columns:220px minmax(0,1fr); gap:var(--layout-gap); }
body.comparison-site .article { max-width:820px; }
body.comparison-site .article-sidebar { top:112px; }
body.comparison-site .article section { margin-top:40px; }
body.comparison-site .article section:first-child { margin-top:0; }
body.comparison-site .article :is(ul,ol) { font-size:var(--type-body); line-height:1.75; }
body.comparison-site .article .type-subheading { margin-bottom:20px; }
body.comparison-site .article .type-body+.type-body { margin-top:16px; }
body.comparison-site .article blockquote { font-family:var(--font-sans); font-size:24px; line-height:1.5; letter-spacing:-.015em; }

/* A consistent label/content grid and vertical rhythm for every major section. */
body.comparison-site :is(.detail-section,.catalog-section,.application-domain-section,.mission-problem,.mission-work,.company-information) { padding-block:var(--section-space); }
body.comparison-site :is(.detail-heading,.catalog-section-heading,.series-heading) {
  display:grid;
  grid-template-columns:220px minmax(0,1fr);
  gap:12px var(--layout-gap);
  align-items:start;
  margin-bottom:40px;
}
body.comparison-site :is(.detail-heading,.catalog-section-heading)>.section-label { padding:8px 0 0; margin:0; }
body.comparison-site :is(.detail-heading,.catalog-section-heading)>div { display:block; }
body.comparison-site :is(.detail-heading,.catalog-section-heading)>div>p { margin-top:24px; max-width:66ch; }
body.comparison-site .series-heading p { grid-column:2; margin-top:12px; }
body.comparison-site .company-timeline h3 { margin-top:12px; }
body.comparison-site .technology-model-key dt { font-size:var(--type-body); line-height:1.75; }
body.comparison-site .technology-model-key dd { font-size:var(--type-body); line-height:1.75; }
body.comparison-site .detail-related { padding-block:64px; }
body.comparison-site .detail-related .wrap { align-items:start; }

/* Dark surfaces use the same role sizes and a single accessible inverse palette. */
body.comparison-site :is(.brain-hero,.company-hero,.mission-values,.comparison-studio,.product-studio-video) {
  --type-ink:#f2f1eb;
  --type-muted:#bbc7be;
  --type-accent:#ccbae6;
}

/* Footer edges, navigation and quiet text match across all page families. */
body.comparison-site :is(.direction-footer,.detail-footer,.learn-footer) { background:var(--dark); color:var(--paper); }
body.comparison-site .direction-footer,
body.comparison-site .learn-footer { width:100%; max-width:none; padding:40px max(var(--layout-gutter),calc((100vw - var(--layout-max))/2)); }
body.comparison-site :is(.direction-footer,.learn-footer) .brand img { filter:grayscale(1) brightness(0) invert(1); }
body.comparison-site :is(.detail-footer nav,.direction-footer>div,.learn-footer nav) { font:400 var(--type-navigation)/1.5 var(--font-sans); }
body.comparison-site :is(.direction-footer>p,.detail-footer-top>div>p,.detail-footer-bottom,.learn-footer>p) { font:400 var(--type-caption)/1.65 var(--font-sans); color:#bbc7be; }

@media(max-width:1100px) {
  body.comparison-site { --layout-gutter:32px; --layout-gap:40px; }
  body.comparison-site :is(.detail-heading,.catalog-section-heading,.series-heading,.technology-takeaway) { grid-template-columns:180px minmax(0,1fr); }
}
@media(max-width:900px) {
  body.comparison-site .site-header { height:auto; min-height:78px; padding-block:17px; gap:20px; }
  body.comparison-site .site-header .brand { width:110px; }
  body.comparison-site .site-header.menu-open { background:var(--dark); }
  body.comparison-site .site-header .header-contact { display:none; }
  body.comparison-site .site-header .nav-toggle { margin-left:auto; }
  body.comparison-site .site-header.menu-open .primary-nav>a { border-top-color:#f2f1eb26; }
}
@media(max-width:760px) {
  body.comparison-site {
    --type-display:44px;
    --type-section:34px;
    --type-subheading:24px;
    --type-lead:18px;
    --layout-gutter:20px;
    --layout-gap:28px;
    --hero-space-start:44px;
    --hero-space-end:48px;
    --section-space:56px;
  }
  body.comparison-site :is(.detail-breadcrumb,.type-breadcrumb,.breadcrumbs) { margin-bottom:28px; }
  body.comparison-site .type-hero-grid { grid-template-columns:minmax(0,1fr); gap:28px; }
  body.comparison-site .type-hero-copy { padding-top:0; max-width:66ch; }
  body.comparison-site .type-hero-copy>.text-link { margin-top:24px; }
  body.comparison-site .type-hero-copy>.type-label { margin-top:24px; }
  body.comparison-site :is(.detail-subnav,.company-sections) { margin-top:32px; gap:8px 24px; }
  body.comparison-site :is(.detail-heading,.catalog-section-heading,.series-heading,.technology-takeaway) { grid-template-columns:minmax(0,1fr); gap:20px; margin-bottom:32px; }
  body.comparison-site :is(.detail-heading,.catalog-section-heading)>.section-label { padding:0; }
  body.comparison-site :is(.detail-heading,.catalog-section-heading)>div>p { margin-top:20px; }
  body.comparison-site .series-heading p { grid-column:auto; margin:0; }
  body.comparison-site .learn-main>.breadcrumbs { margin-bottom:0; }
  body.comparison-site .type-article-hero { padding-top:28px; }
  body.comparison-site .article-layout { display:flex; flex-direction:column; padding-top:40px; }
  body.comparison-site .article-sidebar { order:2; position:static; margin-top:40px; }
  body.comparison-site .article-sidebar nav { grid-template-columns:1fr; gap:0; }
  body.comparison-site .article-sidebar nav a { font-size:13px; }
  body.comparison-site .article section { margin-top:36px; }
  body.comparison-site :is(.direction-footer,.learn-footer) { padding-block:32px; }
}
@media print {
  body.comparison-site { --type-display:40px; --type-section:28px; --type-subheading:22px; --type-lead:18px; --layout-gutter:0px; background:white; }
  body.comparison-site :is(.comparison-bar,.site-header,.direction-footer,.detail-footer,.learn-footer) { display:none; }
}

body.comparison-site #main .type-hero-copy>.type-lead{margin:0}

/* Technology presents one title, one introduction, and the original diagram. */
body.comparison-site.technology-page #main .technology-section .detail-heading {
  display:block;
  margin-bottom:24px;
}
body.comparison-site.technology-page #main .technology-section .type-section-title {
  font-size:40px;
  line-height:1.15;
  max-width:100%;
  margin:0;
}
body.comparison-site.technology-page #main .technology-section .detail-heading>.type-body { margin:16px 0 0; max-width:80ch; }
body.comparison-site.technology-page #main .technology-hero .type-lead { font-size:16px; line-height:1.75; max-width:66ch; }
body.comparison-site.technology-page .technology-section { padding-block:64px; }
body.comparison-site.technology-page .detail-subnav,
body.comparison-site.technology-page .detail-breadcrumb { font:400 14px/1.65 var(--font-sans); }
body.comparison-site.technology-page .foundation { border:0; padding:0; }
body.comparison-site.technology-page .foundation-toolbar { display:flex; justify-content:space-between; align-items:center; gap:12px 24px; padding:0 0 16px; flex-wrap:wrap; }
body.comparison-site.technology-page .foundation-toolbar button { font:400 14px/1.65 var(--font-sans); min-height:44px; }
body.comparison-site.technology-page .foundation-playback-buttons { gap:20px; }
body.comparison-site.technology-page .detail-note { font:400 14px/1.65 var(--font-sans); max-width:90ch; margin-top:20px; }
body.comparison-site.technology-page .cv-topline>.cv-kicker { display:none; }
body.comparison-site.technology-page .cv-topline { justify-content:flex-end; margin-bottom:20px; }
body.comparison-site.technology-page .cv-scenarios button { font-size:14px; }
body.comparison-site.technology-page .technology-definitions { margin-top:24px; border-top:1px solid var(--line); }
body.comparison-site.technology-page .technology-definitions>summary { font:400 16px/1.75 var(--font-sans); min-height:56px; padding:14px 0; cursor:pointer; }
body.comparison-site.technology-page .technology-model-key { margin-top:16px; padding-top:0; border:0; }
body.comparison-site.technology-page .technology-key-group>.type-label { font:600 16px/1.75 var(--font-sans); letter-spacing:0; text-transform:none; }
body.comparison-site.technology-page .technology-model-key :is(dt,dd) { font:400 16px/1.75 var(--font-sans); }
@media(max-width:760px) {
  body.comparison-site.technology-page #main .technology-section .type-section-title { font-size:30px; }
  body.comparison-site.technology-page .technology-section { padding-block:44px; }
  body.comparison-site.technology-page .foundation-toolbar { gap:8px 20px; }
}

/* Hallmark · v2.0.0 · redesign: full · theme: brand · copy: verbatim
 * User-adopted default system (2026-11-06). Existing brand, content and engines retained.
 * pre-emit critique: P4 H4 E3 S4 R4 V3 · weakest: E, page overrides still need migration.
 * The readable-layout scope keeps archived concepts on their original type contract.
 */
body.comparison-site.readable-layout {
  --type-display:clamp(42px,4.5vw,64px);
  --type-section:clamp(32px,3vw,40px);
  --type-subheading:26px;
  --type-lead:21px;
  --type-body:18px;
  --type-compact:17px;
  --type-caption:14px;
  --type-label:14px;
  --type-navigation:16px;
  --type-action:16px;
  --leading-body:1.65;
  --layout-gutter:40px;
  --layout-gap:32px;
  --hero-space-start:40px;
  --hero-space-end:40px;
  --section-space:56px;
  --flow-small:12px;
  --flow-medium:20px;
  --row-space:20px;
  line-height:var(--leading-body);
}
body.comparison-site.readable-layout #main [data-type].type-body { line-height:var(--leading-body); }
body.comparison-site.readable-layout #main [data-type].type-label {
  font-family:var(--font-sans); letter-spacing:0; text-transform:none; line-height:1.5;
}
body.comparison-site.readable-layout :is(.detail-breadcrumb,.type-breadcrumb,.breadcrumbs) {
  font-family:var(--font-sans); letter-spacing:0; font-size:var(--type-caption); margin-bottom:24px;
}
body.comparison-site.readable-layout #main [data-type]:is(.type-display,.type-section-title,.type-subheading) {
  min-width:0; overflow-wrap:break-word;
}
body.readable-layout :is(a,button,input,select,textarea,summary):focus-visible {
  outline:2px solid var(--sage-ink); outline-offset:4px;
}
body.readable-layout [hidden] { display:none!important; }
@media(max-width:760px) {
  body.comparison-site.readable-layout {
    --type-display:clamp(32px,6.5vw,44px);
    --type-section:30px;
    --type-subheading:24px;
    --type-lead:19px;
    --type-body:17px;
    --layout-gutter:20px;
    --layout-gap:24px;
    --hero-space-start:32px;
    --hero-space-end:32px;
    --section-space:40px;
  }
}

/* Shared density compositions. Archived comparison routes keep their original layout. */
body.comparison-site.readable-layout :is(.detail-heading,.catalog-section-heading,.series-heading) { display:block; margin-bottom:28px; }
body.comparison-site.readable-layout :is(.detail-heading,.catalog-section-heading)>.section-label { padding:0; margin:0 0 12px; }
body.comparison-site.readable-layout :is(.detail-heading,.catalog-section-heading)>div>p { margin-top:12px; }
body.comparison-site.readable-layout .series-heading p { margin-top:12px; }
body.comparison-site.readable-layout :is(.direction-contact,.detail-related) { padding-block:var(--section-space); }
body.comparison-site.readable-layout .article-layout { grid-template-columns:176px minmax(0,1fr); gap:var(--layout-gap); padding-block:32px var(--section-space); }
body.comparison-site.readable-layout .article-sidebar nav a { font-size:var(--type-action); }
body.comparison-site.readable-layout .article :is(ul,ol) { line-height:var(--leading-body); }
body.comparison-site.readable-layout .site-header .primary-nav { gap:24px; }
body.comparison-site.readable-layout .site-header :is(.product-menu-overview>span,.product-menu-group p,.company-menu small) { font:400 var(--type-caption)/1.5 var(--font-sans); }
body.comparison-site.readable-layout .site-header .primary-nav :is(.product-menu-group>a,.product-menu-group>a:first-child,.company-menu a) { font-size:var(--type-action); }
body.comparison-site.readable-layout :is(.section-label,.direction-kicker)::before { display:none; }
@media(max-width:1000px) and (min-width:901px) {
 body.comparison-site.readable-layout .site-header { gap:20px; }
 body.comparison-site.readable-layout .site-header .primary-nav { gap:18px; }
 body.comparison-site.readable-layout .site-header .header-contact { display:none; }
}
@media(max-width:760px) {
 body.comparison-site.readable-layout .article-layout { grid-template-columns:minmax(0,1fr); gap:24px; }
 body.comparison-site.readable-layout .site-header .primary-nav { gap:0; }
}
/* Residual untagged copy and controls share the same readable contract. */
body.comparison-site.readable-layout .delivery-architecture-link .text-link { font-size:var(--type-action); }
body.comparison-site.readable-layout [tabindex]:focus-visible { outline:2px solid var(--sage-ink); outline-offset:4px; }

/* Shared active-site chrome. Archived concepts retain their original footers. */
body.comparison-site.readable-layout .site-footer {
  background:var(--dark); color:var(--paper); padding-block:40px;
  border-top:1px solid var(--line); font-family:var(--font-sans);
}
body.comparison-site.readable-layout.home-light .site-footer { background:var(--paper); color:var(--ink); }
body.readable-layout .site-footer-top { display:flex; align-items:flex-start; justify-content:space-between; gap:var(--layout-gap); }
body.readable-layout .site-footer-identity { max-width:38ch; }
body.readable-layout .site-footer .brand { display:inline-flex; width:126px; min-height:44px; align-items:center; }
body.readable-layout .site-footer .brand img { width:126px; height:auto; filter:grayscale(1) brightness(0) invert(1); }
body.readable-layout.home-light .site-footer .brand img { filter:grayscale(1) brightness(0); }
body.readable-layout .site-footer-identity p { margin:12px 0 0; font-size:var(--type-caption); line-height:var(--leading-body); color:#bbc7be; }
body.readable-layout.home-light .site-footer-identity p { color:var(--muted); }
body.readable-layout .site-footer nav { display:flex; align-items:center; flex-wrap:wrap; gap:8px 24px; }
body.readable-layout .site-footer a { color:inherit; font-size:var(--type-action); text-decoration:none; }
body.readable-layout .site-footer nav a,
body.readable-layout .site-footer-bottom>a { display:inline-flex; align-items:center; gap:12px; min-height:44px; }
body.readable-layout .site-footer a:is(:hover,[aria-current]) { text-decoration:underline; text-underline-offset:5px; }
body.readable-layout .site-footer a:focus-visible { outline:2px solid currentColor; outline-offset:4px; }
body.readable-layout .site-footer .site-footer-context { margin-top:24px; padding-top:20px; border-top:1px solid #b8c6b433; }
body.readable-layout .site-footer-bottom { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px 24px; margin-top:24px; padding-top:20px; border-top:1px solid #b8c6b433; }
body.readable-layout .site-footer-bottom>span { font-size:var(--type-caption); color:#bbc7be; }
body.readable-layout.home-light .site-footer-bottom { border-color:var(--line); }
body.readable-layout.home-light .site-footer-bottom>span { color:var(--muted); }
body.comparison-site.readable-layout .site-header .primary-nav>a { display:inline-flex; align-items:center; min-height:44px; }
body.readable-layout :is(button,summary) { min-height:44px; }

/* Same semantic roles across editorial and product collections. */
body.comparison-site.readable-layout .insights-hero { padding-block:var(--hero-space-start) var(--hero-space-end); }
body.comparison-site.readable-layout .insights-hero .insights-deck { font-size:var(--type-lead); line-height:var(--leading-body); }
body.comparison-site.readable-layout :is(.insights-shelf-heading,.insights-section-heading) h2 { font-size:var(--type-section); line-height:1.25; }
body.comparison-site.readable-layout :is(.insight-card-copy,.insights-card) h3 { font-size:var(--type-subheading); line-height:1.4; }
body.comparison-site.readable-layout :is(.insight-card-copy,.insights-card,.insights-resources,.insights-author)>p:not(.insights-meta) { font-size:var(--type-compact); line-height:var(--leading-body); }
body.comparison-site.readable-layout .insights-reading { font-size:var(--type-body); line-height:var(--leading-body); }
body.comparison-site.readable-layout :is(.insights-meta,.insights-kicker,.insights-rail-help) { font-size:var(--type-caption); }
body.comparison-site.readable-layout .insights-source p { font-size:var(--type-compact); line-height:var(--leading-body); }
body.comparison-site.readable-layout .product-card-category { color:var(--sage-ink); }
body.comparison-site.readable-layout :is(.product-card-copy,.insight-card-copy) { padding:24px; }
body.comparison-site.readable-layout :is(.product-rail-buttons,.insights-rail-buttons) button:focus-visible { outline:2px solid var(--sage-ink); outline-offset:3px; }
@media(max-width:900px) {
  body.readable-layout .site-footer-top { flex-direction:column; }
  body.comparison-site.readable-layout .site-header .primary-nav>a { display:flex; }
}
@media(max-width:760px) {
  body.comparison-site.readable-layout .site-footer { padding-block:32px; }
  body.comparison-site.readable-layout :is(.product-card-copy,.insight-card-copy) { padding:20px; }
}
@media print { body.comparison-site.readable-layout .site-footer { display:none; } }
body.readable-layout .contact-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px}
body.readable-layout .contact-copy{padding:10px 14px;background:transparent;border:1px solid var(--line);font-size:var(--type-action);min-height:44px}
body.readable-layout .contact-copy:hover{border-color:currentColor}
body.readable-layout .contact-status{font-size:var(--type-caption);line-height:1.65;min-height:1.65em;margin-top:12px}
body.readable-layout .contact-topic{font-size:var(--type-body);margin-bottom:16px}
body.readable-layout .contact-preparation{padding-block:var(--section-space);border-top:1px solid var(--line)}
body.readable-layout .contact-preparation p{max-width:66ch;margin-top:24px}
body.readable-layout .contact-preparation ul{max-width:66ch;padding-left:24px;margin-block:16px 0}
body.readable-layout .product-fit{padding-block:var(--section-space);border-top:1px solid var(--line)}
body.readable-layout .product-fit-list{margin:24px 0 0;max-width:960px}
body.readable-layout .product-fit-list>div{display:grid;grid-template-columns:100px minmax(0,1fr);gap:24px;padding:16px 0;border-top:1px solid var(--line)}
body.readable-layout .product-fit-list dt{font-size:var(--type-caption);color:var(--muted);padding-top:3px}
body.readable-layout .product-fit-list dd{margin:0;font-size:var(--type-body);line-height:1.65}
@media(max-width:480px){body.readable-layout .product-fit-list>div{grid-template-columns:1fr;gap:4px}}
body.readable-layout .application-case-diagram :is(figcaption,.packing-flow-link span,.packing-flow-feedback span,.replenishmentf-note){font-size:var(--type-caption);line-height:1.65}
body.readable-layout .technology-readable-summary{margin-block:24px}
