/* Product landing page bodies (inc/landing-body.php): banner images rebuilt as
   text, tables and icons. One type scale for every page:
   section title 20-24px, card title 17px, body 15px, notes 13-14px, price 22px.
   Colours come from the landing palette in landing.css. */
body.fp26-landing .fp26c {
  --c-price: #e5391f;
  --c-muted: #6b7280;
  --c-radius: 14px;
  --c-gap: 16px;
  --c-space: 35px;
  color: var(--l-text);
  font-size: 14px;
  line-height: 1.65;
}
.fp26c :is(h2, h3) { margin: 0; color: var(--l-ink); font-family: inherit; letter-spacing: 0; line-height: 1.35; }
.fp26c h2 { font-size: clamp(18.5px, 1.76vw, 20.5px); font-weight: 700; }
.fp26c h3 { font-size: 16px; font-weight: 600; }
.fp26c p { margin: 0; }
.fp26c ul, .fp26c ol { margin: 0; padding: 0; list-style: none; }
.fp26c small { font-size: 13px; }
.fp26c-icon { width: 22px; height: 22px; flex: none; }
.fp26c :is(a, button):focus-visible { outline: 3px solid var(--l-blue); outline-offset: 3px; border-radius: 10px; }

.fp26c-section { margin: 0 0 var(--c-space); }
.fp26c-head { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: 2px 16px; margin-bottom: 16px; }
.fp26c-head p { color: var(--c-muted); font-size: 14px; }
.fp26c-eyebrow { margin-bottom: 6px !important; color: var(--l-blue); font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.fp26c-aside { margin: calc(var(--c-space) * -0.6) 0 var(--c-space) !important; color: var(--c-muted); font-size: 14px; }

/* Buttons */
.fp26c-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
.fp26c .fp26c-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 9px 20px; border: 1px solid var(--l-line); border-radius: 10px; color: var(--l-ink); background: #fff; font-size: 14px; font-weight: 600; line-height: 1.3; text-decoration: none; transition: background .2s, border-color .2s, color .2s; }
.fp26c .fp26c-btn:hover { border-color: var(--l-blue); color: var(--l-blue); }
.fp26c .fp26c-btn--primary, .fp26c .fp26c-btn--primary:hover { border-color: var(--l-blue); color: #fff; background: var(--l-blue); }
.fp26c .fp26c-btn--primary:hover { background: #18378a; }

/* Cropped banner photo (only the photo part, not its text panel) */
.fp26c-crop { position: relative; display: block; overflow: hidden; background: var(--l-soft); }
.fp26c-crop img { position: absolute; top: var(--y); left: var(--x); width: var(--w) !important; max-width: none !important; height: auto !important; margin: 0 !important; border-radius: 0 !important; }

/* Product tiles: a marketplace-style catalogue grid, 5 per row on desktop,
   2 on phones. The whole tile is the link; price sits on the bottom edge. */
.fp26c-tiles { display: grid; grid-template-columns: repeat(var(--cols, 4), minmax(0, 1fr)); gap: 14px; }
.fp26c .fp26c-tile { position: relative; display: flex; flex-direction: column; min-width: 0; overflow: hidden; border: 1px solid var(--l-line); border-radius: 12px; color: var(--l-text); background: #fff; text-decoration: none; transition: border-color .2s, box-shadow .2s, transform .2s; }
.fp26c a.fp26c-tile:hover { border-color: var(--l-blue); box-shadow: 0 8px 22px rgba(27, 42, 107, .12); transform: translateY(-2px); }
.fp26c-tile__media { position: relative; display: block; }
.fp26c-tile__media .fp26c-crop { border-bottom: 1px solid var(--l-line); }
.fp26c-tile__media img { transition: transform .35s; }
.fp26c a.fp26c-tile:hover .fp26c-tile__media img { transform: scale(1.04); }
.fp26c-tile__tag { position: absolute; top: 8px; left: 8px; padding: 1px 8px; border-radius: 6px; color: #fff; background: var(--l-blue); font-size: 12px; font-weight: 600; line-height: 1.7; }
.fp26c-tile__body { display: flex; flex: 1; flex-direction: column; gap: 4px; padding: 12px 13px 14px; }
.fp26c-tile h3 { display: -webkit-box; overflow: hidden; color: var(--l-ink); font-size: 14.5px; font-weight: 600; line-height: 1.4; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.fp26c-tile h3 b { color: var(--l-blue); font-weight: 700; }
.fp26c-tile h3 small { display: block; color: var(--c-muted); font-size: 11.5px; font-weight: 600; letter-spacing: .04em; }
.fp26c-tile__text { display: -webkit-box; overflow: hidden; color: var(--c-muted); font-size: 13px; line-height: 1.5; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.fp26c-tile__points { display: grid; gap: 1px; color: var(--c-muted); font-size: 13px; line-height: 1.5; }
.fp26c-tile__points span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.fp26c-tile__price { margin-top: auto; padding-top: 8px; color: var(--c-muted); line-height: 1.2; }
.fp26c-tile__price small { font-size: 12px; }
.fp26c-tile__price b { color: var(--c-price); font-size: 20px; font-weight: 700; font-variant-numeric: tabular-nums; }
.fp26c-tile__cta { display: flex; align-items: center; justify-content: center; min-height: 34px; margin-top: 10px; border: 1px solid var(--l-blue); border-radius: 8px; color: var(--l-blue); font-size: 13.5px; font-weight: 600; transition: background .2s, color .2s; }
.fp26c a.fp26c-tile:hover .fp26c-tile__cta { color: #fff; background: var(--l-blue); }
/* Help tile: same shape as a product tile (square panel, text, button at the
   bottom) so its button lines up with the others in the row. */
.fp26c-help { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; aspect-ratio: 1 / 1; border-bottom: 1px solid var(--l-line); background: linear-gradient(160deg, #effbf3 0%, #dcf5e5 100%); }
.fp26c-help .fp26c-icon { width: 64px; height: 64px; margin-bottom: 6px; padding: 14px; border-radius: 18px; color: #fff; background: #06c755; box-shadow: 0 8px 20px rgba(6, 199, 85, .25); }
.fp26c-help b { color: #058f3d; font-size: 18px; font-weight: 700; line-height: 1.2; }
.fp26c-help span { color: #2f6b47; font-size: 13px; font-weight: 600; }
.fp26c-tile--help .fp26c-tile__text { -webkit-line-clamp: 3; }
.fp26c .fp26c-tile--help .fp26c-tile__cta { margin-top: auto; border-color: #06c755; color: #fff; background: #06c755; }
.fp26c a.fp26c-tile--help:hover { border-color: #06c755; }
.fp26c a.fp26c-tile--help:hover .fp26c-tile__cta { border-color: #05a948; background: #05a948; }
/* Price tables */
.fp26c-table-wrap { overflow-x: auto; border: 1px solid var(--l-line); border-radius: var(--c-radius); background: #fff; }
.fp26c-table-wrap--narrow { max-width: 760px; }
.fp26c-table { width: 100%; margin: 0; border: 0; border-collapse: collapse; font-size: 14px; font-variant-numeric: tabular-nums; }
.fp26c-table caption { padding: 11px 16px; color: var(--l-ink); background: var(--l-soft); font-size: 14px; font-weight: 600; text-align: left; caption-side: top; }
.fp26c-table :is(th, td) { padding: 10px 16px; border: 0; border-top: 1px solid var(--l-line); text-align: right; vertical-align: middle; line-height: 1.4; }
.fp26c-table :is(th, td):first-child { text-align: left; }
.fp26c-table thead th { border-top: 0; color: #fff; background: var(--l-ink); font-size: 14px; font-weight: 600; white-space: nowrap; }
.fp26c-table tbody th[scope="row"] { color: var(--l-ink); font-weight: 600; }
.fp26c-table tbody th small { margin-left: 4px; color: var(--c-muted); font-weight: 500; }
.fp26c-table td { color: var(--l-ink); }
.fp26c-table tbody tr:not(.fp26c-table__group):hover { background: #f7f8fb; }
.fp26c-table__group th { padding: 8px 16px !important; color: var(--l-blue) !important; background: #f7f8fb; font-size: 13px; font-weight: 700; text-align: left !important; }
.fp26c-na { color: #c3cbd6; }
.fp26c-pair { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--c-gap); align-items: start; }
.fp26c-pair--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.fp26c-section--counts .fp26c-table :is(th, td) { padding: 9px 10px; text-align: center; }
.fp26c-section--counts .fp26c-table :is(th, td):first-child { text-align: left; }

.fp26c-notes { display: grid; gap: 5px; margin-top: 14px !important; font-size: 14px; line-height: 1.55; }
.fp26c-notes li { position: relative; padding-left: 16px; }
.fp26c-notes li::before { content: ""; position: absolute; top: .62em; left: 2px; width: 6px; height: 6px; border-radius: 50%; background: var(--l-blue); }
.fp26c-notes b { color: var(--l-ink); font-weight: 600; }

/* Fact strip */
.fp26c-facts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; margin: 0 0 var(--c-space); overflow: hidden; border: 1px solid var(--l-line); border-radius: var(--c-radius); background: var(--l-line); }
.fp26c-facts > div { display: flex; align-items: flex-start; gap: 12px; padding: 16px 18px; background: var(--l-soft); }
.fp26c-facts .fp26c-icon { width: 24px; height: 24px; color: var(--l-blue); }
.fp26c-facts strong { display: block; color: var(--l-ink); font-size: 14px; line-height: 1.35; }
.fp26c-facts span { display: block; color: var(--c-muted); font-size: 13px; line-height: 1.45; overflow-wrap: anywhere; }

/* Template call-to-action, checklist, template catalogues */
.fp26c-split { display: grid; grid-template-columns: 1fr 1.15fr; gap: var(--c-gap); }
.fp26c-split--catalog { grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr); align-items: stretch; }
.fp26c-template, .fp26c-needs { padding: 24px; border-radius: var(--c-radius); }
.fp26c-template { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; margin-bottom: var(--c-space); color: #dfe2ee; background: var(--l-ink); }
.fp26c-split .fp26c-template { margin-bottom: 0; }
.fp26c-template h2 { color: #fff; }
.fp26c-template p { font-size: 14px; }
.fp26c-template .fp26c-btn { margin-top: auto; }
.fp26c-template .fp26c-btn--primary { border-color: #fff; color: var(--l-ink); background: #fff; }
.fp26c-template .fp26c-btn--primary:hover { border-color: #dfe2ee; color: var(--l-ink); background: #dfe2ee; }
.fp26c-badge { padding: 2px 10px; border-radius: 999px; color: #fff; background: #16a34a; font-size: 12px; font-weight: 600; line-height: 1.6; }
.fp26c-needs { border: 1px solid var(--l-line); background: #fff; }
.fp26c-needs ol { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 20px; margin-top: 16px; counter-reset: need; }
.fp26c-needs li { display: flex; align-items: center; gap: 10px; color: var(--l-ink); font-size: 14px; counter-increment: need; }
.fp26c-needs li::before { content: counter(need); display: grid; place-items: center; flex: none; width: 24px; height: 24px; border-radius: 50%; color: var(--l-blue); background: var(--l-soft); font-size: 12px; font-weight: 700; }
.fp26c-catalog { margin: 0; overflow: hidden; border: 1px solid var(--l-line); border-radius: var(--c-radius); background: #fff; }
.fp26c-catalog img { display: block; width: 100%; height: 100%; max-height: 520px; object-fit: contain; }
.fp26c-catalog figcaption { padding: 10px 16px; border-top: 1px solid var(--l-line); color: var(--l-ink); font-size: 14px; font-weight: 600; }
.fp26c-catalogs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--c-gap); align-items: start; }
.fp26c-catalogs img { height: auto; }

/* Order steps */
.fp26c-steps { display: grid; gap: 12px; }
.fp26c-steps--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.fp26c-steps--5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.fp26c-steps li { position: relative; display: flex; flex-direction: column; gap: 2px; padding: 18px 16px; border: 1px solid var(--l-line); border-radius: var(--c-radius); background: #fff; }
.fp26c-steps__icon { display: grid; place-items: center; width: 44px; height: 44px; margin-bottom: 10px; border-radius: 12px; color: var(--l-blue); background: var(--l-soft); }
.fp26c-steps__num { position: absolute; top: 14px; right: 16px; color: #cdd1df; font-size: 20.5px; font-weight: 700; line-height: 1; }
.fp26c-steps strong { color: var(--l-ink); font-size: 14px; }
.fp26c-steps li > span:last-child { color: var(--c-muted); font-size: 13px; line-height: 1.5; }

/* File preparation */
.fp26c-files { display: grid; grid-template-columns: 1.3fr 1fr; gap: var(--c-gap); }
.fp26c-sizes { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 12px; }
.fp26c-sizes li { display: flex; flex-direction: column; gap: 2px; padding: 16px; border: 1px solid var(--l-line); border-radius: var(--c-radius); background: #fff; }
.fp26c-sizes strong { color: var(--l-ink); font-size: 16.5px; line-height: 1.3; }
.fp26c-sizes span { color: var(--l-ink); font-size: 14px; }
.fp26c-sizes small { color: var(--c-muted); }
.fp26c-bleed { display: grid; align-content: center; gap: 10px; padding: 18px 20px; border-radius: var(--c-radius); background: var(--l-soft); font-size: 14px; line-height: 1.5; }
.fp26c-bleed p { display: flex; align-items: flex-start; gap: 10px; }
.fp26c-bleed strong { color: var(--l-ink); }
.fp26c-bleed__key { flex: none; width: 18px; height: 3px; margin-top: .7em; border-radius: 2px; }
.fp26c-bleed__key--bleed { background: #e11d48; }
.fp26c-bleed__key--trim { background: #2563eb; }
.fp26c-bleed__key--safe { background: #16a34a; }

/* Printer */
.fp26c-press { display: grid; grid-template-columns: 1.25fr 1fr; align-items: center; gap: 24px; padding: 28px; border-radius: var(--c-radius); background: var(--l-soft); }
.fp26c-press h2 + p { margin-top: 8px; font-size: 14px; }
.fp26c-specs { display: grid; gap: 8px; margin: 0; }
.fp26c-specs > div { display: flex; align-items: baseline; gap: 12px; padding: 12px 16px; border-radius: 12px; background: #fff; }
.fp26c-specs dt { min-width: 74px; color: var(--l-blue); font-size: 20.5px; font-weight: 700; line-height: 1.1; }
.fp26c-specs dd { margin: 0; color: var(--l-ink); font-size: 14px; }

/* Work examples and videos */
.fp26c-work { max-width: 860px; margin: 0 auto; overflow: hidden; border-radius: var(--c-radius); background: var(--l-soft); }
.fp26c-work > img { display: block; width: 100%; height: auto; max-height: 520px; object-fit: cover; }
.fp26c-videos { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--c-gap); }
.fp26c .fp26c-video { position: relative; display: block; overflow: hidden; aspect-ratio: 16 / 9; border-radius: var(--c-radius); background: #10173d; color: #fff; text-decoration: none; }
.fp26c-video img { width: 100%; height: 100%; object-fit: cover; opacity: .85; transition: opacity .2s; }
.fp26c-video:hover img { opacity: 1; }
.fp26c-video__play { position: absolute; top: 50%; left: 50%; display: grid; place-items: center; width: 60px; height: 42px; border-radius: 12px; background: #e5391f; transform: translate(-50%, -50%); }
.fp26c-video__play svg { width: 24px; height: 24px; }
.fp26c-video__label { position: absolute; left: 0; right: 0; bottom: 0; padding: 24px 16px 12px; background: linear-gradient(transparent, rgba(0, 0, 0, .65)); font-size: 14px; font-weight: 600; }

/* LINE */
.fp26c .fp26c-line { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px 24px; margin: 0 0 var(--c-space); padding: 20px 24px; border-radius: var(--c-radius); color: #fff; background: #06c755; text-decoration: none; }
.fp26c-line strong { font-size: clamp(16px, 1.58vw, 19.5px); }
.fp26c-line span { padding: 7px 16px; border-radius: 999px; color: #114f2d; background: #fff; font-size: 14px; font-weight: 700; }
.fp26c .fp26c-line:hover { background: #05a948; }

.fp26c-group { text-align: center; }

/* Title bar: breadcrumb, heading and pitch on the left, starting price and
   order buttons on the right, service perks underneath. Kept short so the
   product grid shows above the fold. */
.fp26c-top { margin: 28px 0 22px; padding: 18px 22px; border: 1px solid var(--l-line); border-radius: 14px; background: #fff; }
.fp26c-crumbs { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 10px; color: var(--c-muted); font-size: 13px; }
.fp26c .fp26c-crumbs a { color: var(--c-muted); text-decoration: none; }
.fp26c .fp26c-crumbs a:hover { color: var(--l-blue); }
.fp26c-crumbs [aria-current] { color: var(--l-ink); }
.fp26c-top__row { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 24px; }
.fp26c-top .fp26-landing-title { margin: 0 0 6px; color: var(--l-ink); font-size: clamp(22px, 2.2vw, 28px); font-weight: 700; line-height: 1.3; letter-spacing: 0; text-align: left; }
.fp26c-top__lead { display: -webkit-box; max-width: 720px; overflow: hidden; color: var(--l-text); font-size: 14.5px; line-height: 1.6; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.fp26c-top__buy { display: grid; justify-items: end; gap: 10px; text-align: right; }
.fp26c-top__price { color: var(--c-muted); font-size: 14px; }
.fp26c-top__price b { margin: 0 2px; color: var(--c-price); font-size: 28px; font-weight: 700; line-height: 1; font-variant-numeric: tabular-nums; }
.fp26c-top .fp26c-actions { flex-wrap: nowrap; margin-top: 0; }
.fp26c .fp26c-btn--line:not(.fp26c-btn--primary) { border-color: #06c755; color: #058f3d; }
.fp26c .fp26c-btn--line:not(.fp26c-btn--primary):hover { color: #fff; background: #06c755; }
.fp26c-perks { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px 20px; margin-top: 16px !important; padding-top: 14px !important; border-top: 1px solid var(--l-line); }
.fp26c-perks li { display: flex; align-items: center; gap: 10px; min-width: 0; }
.fp26c-perks .fp26c-icon { width: 30px; height: 30px; padding: 6px; border-radius: 8px; color: var(--l-blue); background: var(--l-soft); }
.fp26c-perks strong { display: block; color: var(--l-ink); font-size: 13.5px; font-weight: 600; line-height: 1.35; }
.fp26c-perks small { display: block; overflow: hidden; color: var(--c-muted); font-size: 12px; line-height: 1.4; text-overflow: ellipsis; white-space: nowrap; }

/* In-page menu */
.fp26c-nav { display: flex; flex-wrap: wrap; gap: 4px 22px; margin: 0 0 var(--c-space); border-bottom: 1px solid var(--l-line); }
.fp26c .fp26c-nav a { margin-bottom: -1px; padding: 12px 0 10px; border-bottom: 2px solid transparent; color: var(--l-ink); font-size: 14.5px; font-weight: 600; line-height: 1.3; text-decoration: none; transition: border-color .2s, color .2s; }
.fp26c .fp26c-nav a:hover { border-color: var(--l-blue); color: var(--l-blue); }
.fp26c [id^="fp26c-"] { scroll-margin-top: 110px; }

@media (max-width: 1199px) {
  .fp26c-tiles { --cols: 4 !important; }
}
@media (max-width: 991px) {
  .fp26c-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .fp26c-steps--5 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .fp26c-tiles { --cols: 3 !important; }
  .fp26c-split, .fp26c-split--catalog, .fp26c-press, .fp26c-files, .fp26c-pair--3 { grid-template-columns: 1fr; }
  .fp26c-top__row { grid-template-columns: 1fr; gap: 14px; }
  .fp26c-top__buy { justify-items: start; text-align: left; }
  .fp26c-perks { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
  body.fp26-landing .fp26c { --c-space: 32px; --c-gap: 12px; }
  .fp26c-top { margin: 16px -4px 18px; padding: 16px; }
  .fp26c-top__lead { -webkit-line-clamp: 3; }
  .fp26c-top__buy, .fp26c-top__buy .fp26c-actions { width: 100%; }
  .fp26c-top__buy .fp26c-btn { flex: 1 1 0; }
  .fp26c-perks { gap: 10px 12px; }
  .fp26c-perks small { display: none; }
  .fp26c-tiles { --cols: 2 !important; gap: 10px; }
  /* Even product count: help tile is a full-width row. Odd: it fills the empty cell beside the last product. */
  .fp26c .fp26c-tiles:not(.fp26c-tiles--odd) .fp26c-tile--help { grid-column: 1 / -1; flex-direction: row; }
  .fp26c-tiles:not(.fp26c-tiles--odd) .fp26c-tile--help .fp26c-tile__media { flex: 0 0 34%; }
  .fp26c-tiles:not(.fp26c-tiles--odd) .fp26c-help { height: 100%; aspect-ratio: auto; min-height: 130px; border-bottom: 0; border-right: 1px solid var(--l-line); }
  .fp26c-tiles--odd .fp26c-tile--help .fp26c-tile__text { -webkit-line-clamp: 4; }
  .fp26c-help .fp26c-icon { width: 46px; height: 46px; padding: 10px; border-radius: 13px; }
  .fp26c-help b { font-size: 15px; }
  .fp26c-help span { font-size: 11.5px; }
  .fp26c-tile--help .fp26c-tile__cta { display: flex; }
  .fp26c-tile__body { padding: 10px 11px 12px; }
  .fp26c-tile h3 { font-size: 14px; }
  .fp26c-tile__text, .fp26c-tile__points { font-size: 12.5px; }
  .fp26c-tile__price b { font-size: 18px; }
  .fp26c-tile__cta { display: none; }
  .fp26c-nav { flex-wrap: nowrap; overflow-x: auto; margin-right: -16px; padding-right: 16px; scrollbar-width: none; }
  .fp26c-nav a { flex: none; }
  .fp26c-table thead th { white-space: normal; line-height: 1.3; }
  .fp26c-table tbody th[scope="row"] { min-width: 92px; }
  .fp26c-pair, .fp26c-catalogs, .fp26c-videos { grid-template-columns: 1fr; }
  .fp26c-table { font-size: 14px; }
  .fp26c-table :is(th, td) { padding: 9px 8px; }
  .fp26c-table thead th { font-size: 13px; }
  .fp26c-table thead th:first-child, .fp26c-table tbody th { padding-left: 12px; }
  .fp26c-table caption { padding: 10px 12px; font-size: 14px; }
  .fp26c-section--counts .fp26c-table { min-width: 620px; }
  .fp26c-actions .fp26c-btn { flex: 1 1 100%; }
  .fp26c-steps--3, .fp26c-steps--5 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .fp26c-steps li:last-child:nth-child(odd) { grid-column: 1 / -1; }
  .fp26c-steps li { padding: 14px; }
  .fp26c-template, .fp26c-needs, .fp26c-press { padding: 20px; }
  .fp26c-needs ol { grid-template-columns: 1fr; }
  .fp26c-facts > div { padding: 14px; }
  .fp26c .fp26c-line { padding: 18px 20px; }
}
@media (max-width: 420px) {
  .fp26c-facts { grid-template-columns: 1fr; }
}

/* ---------- Detail area (below the catalogue) ----------
   Product-detail layout: each section is a white card on the left, a sticky
   order box on the right. Scoped to .fp26c-detail so the product-page
   description tab keeps its own styling. */
.fp26c-detail { display: grid; grid-template-columns: minmax(0, 1fr) 300px; align-items: start; gap: 24px; margin: 0 0 var(--c-space); }
.fp26c-detail__main { min-width: 0; }
.fp26c-detail .fp26c-nav { position: sticky; top: 0; z-index: 3; margin: 0 0 16px; padding: 0 18px; border: 1px solid var(--l-line); border-radius: 12px; background: #fff; }
.fp26c-detail .fp26c-section { margin: 0 0 16px; padding: 22px 24px; border: 1px solid var(--l-line); border-radius: 14px; background: #fff; }
.fp26c-detail .fp26c-head { margin: -2px 0 16px; padding-bottom: 14px; border-bottom: 1px solid var(--l-line); }
.fp26c-detail .fp26c-actions { display: none; }
.fp26c-detail .fp26c-aside { margin: -6px 0 16px !important; padding: 0 4px; font-size: 13px; }

/* Price tables: light header, prices in ink, compact width */
.fp26c-detail .fp26c-table-wrap { border-radius: 10px; }
.fp26c-detail .fp26c-table-wrap--narrow { max-width: none; }
.fp26c-detail .fp26c-table thead th { color: var(--l-ink); background: var(--l-soft); border-bottom: 1px solid var(--l-line); font-weight: 700; }
.fp26c-detail .fp26c-table caption { border-bottom: 1px solid var(--l-line); color: var(--l-ink); background: #fff; }
.fp26c-detail .fp26c-table td { font-weight: 600; }
.fp26c-detail .fp26c-table__group th { color: var(--l-ink) !important; background: #fafbfd; }
.fp26c-detail .fp26c-notes { padding: 14px 16px; border-radius: 10px; background: var(--l-soft); }

/* Template + checklist: two light panels of equal height */
.fp26c-detail .fp26c-split { padding: 0; border: 0; background: none; align-items: stretch; }
.fp26c-detail .fp26c-template { margin: 0; color: var(--l-text); background: linear-gradient(150deg, #eef3ff 0%, #e3ebfc 100%); border: 1px solid #d6e0f7; }
.fp26c-detail .fp26c-template h2 { color: var(--l-ink); }
.fp26c-detail .fp26c-template .fp26c-btn--primary { border-color: var(--l-blue); color: #fff; background: var(--l-blue); }
.fp26c-detail .fp26c-template .fp26c-btn--primary:hover { border-color: #18378a; color: #fff; background: #18378a; }
.fp26c-detail > .fp26c-detail__main > .fp26c-template { margin-bottom: 16px; }
.fp26c-detail .fp26c-split--catalog .fp26c-catalog { border-radius: 14px; }
.fp26c-detail .fp26c-needs { padding: 22px 24px; }
.fp26c-detail .fp26c-split:not(.fp26c-split--catalog) { grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr); }
.fp26c-detail .fp26c-needs ol { gap: 9px 16px; }

/* Order steps: numbered timeline */
.fp26c-detail .fp26c-steps { position: relative; grid-template-columns: repeat(var(--n, 5), minmax(0, 1fr)); gap: 12px; counter-reset: step; }
.fp26c-detail .fp26c-steps--3 { --n: 3; }
.fp26c-detail .fp26c-steps::before { content: ""; position: absolute; top: 22px; left: 10%; right: 10%; height: 2px; background: var(--l-line); }
.fp26c-detail .fp26c-steps li { align-items: center; padding: 0; border: 0; background: none; text-align: center; }
.fp26c-detail .fp26c-steps__icon { position: relative; width: 46px; height: 46px; margin-bottom: 10px; border: 2px solid #fff; border-radius: 50%; color: #fff; background: var(--l-blue); box-shadow: 0 0 0 1px var(--l-line); }
.fp26c-detail .fp26c-steps__icon .fp26c-icon { width: 20px; height: 20px; }
.fp26c-detail .fp26c-steps__num { position: static; order: -1; margin-bottom: 4px; color: var(--l-blue); font-size: 12px; letter-spacing: .06em; }
.fp26c-detail .fp26c-steps__num::before { content: "STEP "; }
.fp26c-detail .fp26c-steps strong { font-size: 14.5px; }

/* Printer: card with three stat boxes */
.fp26c-detail .fp26c-press { grid-template-columns: 1fr; gap: 16px; background: #fff; }
.fp26c-detail .fp26c-specs { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.fp26c-detail .fp26c-specs > div { flex-direction: column; gap: 2px; padding: 14px 16px; border-radius: 10px; background: var(--l-soft); }
.fp26c-detail .fp26c-specs dt { min-width: 0; }
.fp26c-detail .fp26c-specs dd { font-size: 13px; }

/* Files, examples, videos */
.fp26c-detail .fp26c-files { grid-template-columns: 1fr; }
.fp26c-detail .fp26c-work { max-width: none; border-radius: 10px; }
.fp26c-detail .fp26c-work > img { max-height: 460px; }

/* Sticky order box */
.fp26c-buy { position: sticky; top: 16px; }
.fp26c-buy__card { display: grid; gap: 12px; padding: 20px; border: 1px solid var(--l-line); border-radius: 14px; background: #fff; box-shadow: 0 10px 28px rgba(27, 42, 107, .07); }
.fp26c-buy__name { color: var(--l-ink); font-size: 15.5px; font-weight: 700; line-height: 1.4; }
.fp26c-buy__price { padding-bottom: 12px; border-bottom: 1px solid var(--l-line); color: var(--c-muted); line-height: 1.2; }
.fp26c-buy__price b { color: var(--c-price); font-size: 30px; font-weight: 700; font-variant-numeric: tabular-nums; }
.fp26c-buy__list { display: grid; gap: 8px; margin-bottom: 4px !important; }
.fp26c-buy__list li { display: flex; gap: 8px; font-size: 13px; line-height: 1.45; color: var(--c-muted); }
.fp26c-buy__list strong { color: var(--l-ink); font-weight: 600; }
.fp26c-buy__list .fp26c-icon { width: 16px; height: 16px; margin-top: 2px; color: #16a34a; }
.fp26c-buy .fp26c-btn { width: 100%; }
.fp26c-buy__call { color: var(--c-muted); font-size: 13px; text-align: center; }
.fp26c .fp26c-buy__call a { color: var(--l-blue); font-weight: 600; text-decoration: none; }

/* Group logos: a quiet strip, not a second hero */
.fp26c-group .logoshowcase-slider img, .fp26c-group img { max-height: 56px !important; width: auto !important; }

@media (max-width: 991px) {
  .fp26c-detail { grid-template-columns: 1fr; }
  .fp26c-buy { position: static; }
  .fp26c-detail .fp26c-steps { --n: 3 !important; row-gap: 22px; }
  .fp26c-detail .fp26c-steps::before { display: none; }
}
@media (max-width: 767px) {
  .fp26c-detail .fp26c-section { margin-left: -4px; margin-right: -4px; padding: 18px 14px; }
  .fp26c-detail .fp26c-nav { margin-left: -4px; margin-right: -4px; padding: 0 14px; border-radius: 0; }
  .fp26c-detail .fp26c-steps { --n: 2 !important; }
  .fp26c-detail .fp26c-specs { grid-template-columns: 1fr; }
  .fp26c-detail .fp26c-split { margin-left: 0; margin-right: 0; }
}@media (max-width: 991px) {
  .fp26c-detail .fp26c-split:not(.fp26c-split--catalog) { grid-template-columns: 1fr; }
}
@media (max-width: 767px) {
  .fp26c-detail .fp26c-needs ol { grid-template-columns: 1fr; }
}

/* Tables shown as artwork */
.fp26c-tableimg { margin: 0; }
.fp26c-tableimg img { display: block; width: 100%; height: auto; border-radius: 12px; }

.fp26c-imgstack { display: grid; gap: 18px; }

.fp26c-imgstack { display: grid; gap: 18px; }

.fp26c-crop--fill { background: #f5f6f8; }

/* Ready-made square tile: the image simply fills the frame. */
.fp26c-crop--tile img { position: static !important; display: block; width: 100% !important; height: 100% !important; object-fit: cover; }
