/* Catalogue-only layout. These classes never occur inside a calculator. */
.ordrel-tool-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; align-items:stretch; }
.ordrel-tool-card { display:flex; flex-direction:column; gap:16px; min-width:0; padding:24px; border:1px solid var(--order-line); border-radius:10px; background:#fff; color:var(--order-ink); }
.ordrel-tool-card h3 { position:static; padding:0; margin:0; font-size:1.25rem; line-height:1.3; letter-spacing:-.02em; color:var(--order-ink); }
.ordrel-tool-card > p { position:static; margin:0; font-size:1rem; line-height:1.5; color:var(--order-muted); }
.ordrel-example-chip { position:static; display:block; width:fit-content; max-width:100%; margin-top:auto; padding:8px 10px; border:1px solid var(--order-line); border-radius:5px; color:var(--order-ink); background:var(--order-paper); font-size:.875rem; line-height:1.4; overflow-wrap:anywhere; }
body.storefront .ordrel-tool-open { align-self:flex-start; min-height:44px; font-size:.9375rem; margin:0; }
.ordrel-catalog-heading { max-width:900px; padding:8px 0 28px; }
.ordrel-catalog-heading h1 { font-size:clamp(2rem,3.2vw,2.75rem); line-height:1.15; margin:8px 0 16px; }
.ordrel-catalog-heading > p:not(.eyebrow) { font-size:1.125rem; line-height:1.5; margin:0 0 16px; max-width:760px; }
.ordrel-catalog .ordrel-catalog-filters { display:flex; flex-wrap:wrap; justify-content:flex-start; gap:8px; padding:0 0 24px; }
.ordrel-catalog-filters button { display:inline-flex; align-items:center; min-height:44px; padding:10px 16px; border:1px solid var(--order-line); border-radius:6px; background:#fff; color:var(--order-ink); font-size:.9375rem; }
.ordrel-catalog-filters button[aria-pressed=true] { background:var(--order-blue); border-color:var(--order-blue); color:white; }
.ordrel-catalog-group { padding:28px 0 36px; border-top:1px solid var(--order-line); scroll-margin-top:24px; }
.ordrel-catalog-group > h2 { margin:0 0 24px; font-size:1.625rem; line-height:1.2; }
/* Shop uses the same stable desktop/tablet/phone column count. */
body.storefront .ordrel-shop-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; align-items:stretch; }
body.storefront .ordrel-shop-grid > .order-product { display:flex; flex-direction:column; grid-column:auto; min-width:0; }
body.storefront .ordrel-shop-grid .order-product-art { display:block; height:200px; min-height:200px; flex:none; }
body.storefront .ordrel-shop-grid .order-product-art img { display:block; width:100%; height:100%; object-fit:cover; }
body.storefront .ordrel-shop-grid .order-product > div { padding:24px; }
body.storefront .ordrel-shop-grid .order-product h3 { font-size:1.375rem; line-height:1.3; }
@media(max-width:1100px) {
  .ordrel-tool-grid,body.storefront .ordrel-shop-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:600px) {
  .ordrel-tool-grid,body.storefront .ordrel-shop-grid { grid-template-columns:minmax(0,1fr); }
  .ordrel-tool-card { padding:24px; }
  .ordrel-catalog-heading { padding-bottom:24px; }
  .ordrel-catalog-heading > p:not(.eyebrow) { font-size:1rem; }
  .ordrel-catalog-group { padding:24px 0 32px; }
  .ordrel-catalog-group > h2 { font-size:1.5rem; }
}
/* Task-led catalogue: one color and icon system for each work group. */
.ordrel-catalog { --group-accent:var(--order-blue); }
.ordrel-catalog-heading { display:grid; grid-template-columns:minmax(0,1fr) 32%; align-items:center; gap:48px; max-width:none; padding:4px 0 28px; }
.ordrel-catalog-heading h1 { font-size:clamp(2.25rem,3.5vw,3.25rem); line-height:1.1; letter-spacing:-.04em; margin:14px 0 18px; }
.ordrel-catalog-heading>div>p:not(.eyebrow) { max-width:620px; font-size:1.125rem; color:var(--order-muted); margin:0 0 12px; }
.ordrel-catalog-heading>div>a { display:inline-flex; align-items:center; min-height:44px; gap:10px; font-weight:650; text-decoration:none; }
.ordrel-catalog-heading>img { width:100%; height:235px; object-fit:cover; object-position:60% center; border-radius:10px; }
.ordrel-catalog svg { display:block; flex:none; width:22px; height:22px; }
.ordrel-catalog .ordrel-catalog-filters { border-bottom:1px solid var(--order-line); margin:0; padding:0 0 24px; gap:10px; }
.ordrel-catalog-group { border-top:0; padding:32px 0 40px; scroll-margin-top:110px; }
.ordrel-catalog-group[data-tool-group="1"] { --group-accent:var(--order-teal); }
.ordrel-catalog-group[data-tool-group="2"] { --group-accent:var(--order-orange); }
.ordrel-catalog-group[data-tool-group="3"] { --group-accent:var(--order-ink); }
.ordrel-group-heading { display:flex; align-items:center; gap:28px; margin-bottom:24px; }
.ordrel-group-heading h2 { display:flex; align-items:center; gap:14px; margin:0; font-size:1.625rem; letter-spacing:-.025em; line-height:1.3; flex:none; }
.ordrel-group-heading h2>span { color:var(--group-accent); font-size:1rem; font-weight:650; }
.ordrel-group-heading>p { margin:0; font-size:.9375rem; line-height:1.5; color:var(--order-muted); }
.ordrel-tool-card { padding:0 24px 24px; gap:18px; overflow:hidden; border-radius:10px; transition:border-color 150ms ease,box-shadow 150ms ease; }
.ordrel-tool-card:hover { border-color:var(--group-accent); box-shadow:0 5px 18px #132d3d0a; }
.ordrel-tool-card-heading { display:flex; align-items:center; gap:14px; padding:20px 24px; margin:0 -24px; min-height:100px; border-bottom:1px solid var(--order-line); border-top:3px solid var(--group-accent); background:#f5f7fa; }
.ordrel-tool-icon { display:flex; align-items:center; justify-content:center; width:42px; height:42px; flex:none; border:1px solid var(--order-line); background:#fff; border-radius:8px; color:var(--group-accent); }
.ordrel-tool-card h3 { font-size:1.1875rem; }
.ordrel-example-chip { border:0; border-left:2px solid var(--group-accent); padding:2px 0 2px 12px; border-radius:0; background:transparent; font-size:.875rem; }
.ordrel-example-chip>span { display:block; font-size:.75rem; font-weight:700; letter-spacing:.06em; color:var(--order-muted); margin-bottom:4px; }
body.storefront .ordrel-tool-open { min-height:44px; font-size:.9375rem; padding:10px 14px; }
@media(max-width:1100px) { .ordrel-catalog-heading { gap:32px; }.ordrel-group-heading { align-items:start; flex-direction:column; gap:8px; } }
@media(max-width:600px) {
 .ordrel-catalog-heading { grid-template-columns:1fr; gap:24px; }.ordrel-catalog-heading>img { height:160px; object-position:50% 58%; }
 .ordrel-catalog-heading>div>p:not(.eyebrow) { font-size:1.0625rem; }.ordrel-catalog-heading>div>a { font-size:.9375rem; }
 .ordrel-catalog-filters button { font-size:.875rem; padding:10px 12px; }
 .ordrel-tool-card { padding:0 24px 24px; }.ordrel-catalog-group { scroll-margin-top:85px; }.ordrel-group-heading h2 { font-size:1.5rem; }
}
@media(prefers-reduced-motion:reduce) { .ordrel-tool-card { transition:none; } }
