/* Shared commercial pages reuse the homepage's brand, fonts and color tokens. */
.header-inner nav a { display:inline-flex; align-items:center; min-height:44px; }
.header-inner nav a[aria-current="page"] { color:var(--link); border-color:var(--accent); }
.commercial-page { min-height:100vh; display:flex; flex-direction:column; }
.commercial-main { flex:1; padding-block:28px 88px; }
.page-navigation { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:8px 24px; padding-bottom:40px; color:var(--muted); font-size:12px; }
.page-back { display:inline-flex; align-items:center; min-height:44px; text-decoration:none; color:var(--ink); font-weight:600; }
.page-back:hover { color:var(--link); text-decoration:underline; text-underline-offset:5px; }
.breadcrumbs ol { display:flex; flex-wrap:wrap; align-items:center; list-style:none; margin:0; padding:0; }
.breadcrumbs li { display:flex; align-items:center; overflow-wrap:anywhere; }
.breadcrumbs li+li::before { content:"/"; margin-inline:12px; color:var(--muted); }
.breadcrumbs a { display:inline-flex; align-items:center; min-height:44px; text-underline-offset:4px; }
.breadcrumbs [aria-current="page"] { color:var(--ink); }
.commercial-heading { max-width:760px; margin-bottom:40px; }
.commercial-main h1 { font-size:clamp(38px,5.2vw,64px); line-height:1.15; overflow-wrap:anywhere; margin-block:18px 24px; }
.commercial-heading h1::after { content:"."; color:var(--accent); }
.commercial-main h2 { font-size:clamp(25px,3vw,34px); line-height:1.2; margin-bottom:16px; }
.commercial-heading>p:not(.eyebrow), .commercial-main .customer-page-heading p:not(.customer-eyebrow) { max-width:60ch; color:var(--muted); }
.commercial-heading .eyebrow, .customer-eyebrow { color:var(--link); font-size:11px; font-weight:700; letter-spacing:.15em; text-transform:uppercase; }
.commercial-heading .catalog-launch { margin-top:14px; font-size:12px; }
.catalog-empty { background:var(--surface-muted); border:1px solid var(--line); padding:clamp(28px,5vw,60px); max-width:900px; }
.empty-mark { display:block; color:var(--accent); font-size:36px; line-height:1; margin-bottom:24px; }
.catalog-empty p { color:var(--muted); max-width:54ch; }
.commercial-link { display:inline-flex; align-items:center; min-height:44px; margin-top:18px; color:var(--link); font-weight:600; font-size:13px; text-underline-offset:5px; }
.catalog-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:40px 28px; list-style:none; padding:0; margin:0; }
.catalog-card { min-width:0; }
.catalog-card>a { display:block; text-decoration:none; }
.catalog-card img { width:100%; height:auto; aspect-ratio:2; object-fit:contain; padding:20px; background:var(--surface-muted); border:1px solid var(--line); }
.catalog-card h2 { font-size:26px; margin-block:20px 8px; overflow-wrap:anywhere; }
.catalog-card a>span { display:inline-flex; align-items:center; gap:8px; min-height:44px; color:var(--link); font-size:12px; font-weight:600; }
.catalog-card a:hover h2 { color:var(--link); text-decoration:underline; text-underline-offset:5px; }
.catalog-pages { display:flex; flex-wrap:wrap; gap:24px; border-top:1px solid var(--line); margin-top:40px; padding-top:20px; }
.catalog-pages a { display:inline-flex; align-items:center; min-height:44px; color:var(--link); text-underline-offset:5px; }
.commercial-main .customer-page-heading { max-width:760px; margin-bottom:32px; }
.commercial-main .customer-panel { padding:clamp(20px,4vw,40px); background:var(--surface-muted); border:1px solid var(--line); margin-bottom:32px; }
.commercial-main .customer-empty p, .commercial-main .workspace-hint { color:var(--muted); }
.commercial-main .workspace-hint { font-size:12px; margin-top:16px; }
.commercial-main .workspace-hint a { text-underline-offset:4px; }
.commercial-main .workspace-preview { max-width:800px; margin-top:24px; }
.commercial-main .workspace-paper { position:relative; aspect-ratio:var(--page-aspect,2/1); background:#fff; box-shadow:2px 2px 0 var(--line),4px 4px 0 var(--line); overflow:hidden; }
.commercial-main .workspace-image-area { position:absolute; top:0; bottom:0; right:0; left:var(--binding-inset,6.25%); }
.commercial-main .workspace-paper img { width:100%; height:100%; object-fit:contain; object-position:right center; min-width:0; }
.commercial-main .workspace-print-size, .commercial-main .workspace-placement-note { margin-top:16px; color:var(--muted); font-size:12px; line-height:1.6; }
.commercial-main .workspace-preview-controls { display:flex; align-items:center; flex-wrap:wrap; gap:16px; margin-top:24px; }
.commercial-main .workspace-preview-controls button { min-height:44px; min-width:70px; padding:8px 16px; border:1px solid var(--line); border-radius:3px; background:var(--paper); color:var(--link); cursor:pointer; }
.commercial-main .workspace-preview-controls input { min-width:0; flex:1; min-height:44px; accent-color:var(--accent); }
.commercial-main .workspace-preview-controls output { font-size:12px; white-space:nowrap; }
.commercial-main dl { display:grid; grid-template-columns:minmax(0,150px) minmax(0,1fr); gap:12px 24px; padding:24px; margin:28px 0; background:var(--surface-muted); border:1px solid var(--line); }
.commercial-main dt { font-weight:600; }
.commercial-main dd { margin:0; overflow-wrap:anywhere; }
.commercial-main>p, .commercial-main>ul { max-width:70ch; }
.commercial-main>p { margin-block:16px; }
@media(max-width:850px) { .catalog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:550px) {
  .commercial-main { padding-block:16px 56px; }
  .page-navigation { display:block; padding-bottom:28px; }
  .commercial-heading { margin-bottom:28px; }
  .catalog-grid { grid-template-columns:minmax(0,1fr); gap:28px; }
  .commercial-main dl { grid-template-columns:minmax(0,1fr); gap:4px; }
  .commercial-main dd+dt { margin-top:12px; }
}
