/* OperPrint v36: shared presentation tokens and card grids.
   This file intentionally does not rewrite content, hero structure or navigation. */
:root{--op-accent:#f4510b;--op-border:#e4e4e4;--op-muted:#4c4c4c;--op-card-radius:14px;--op-card-gap:16px}
/* Unified card treatment, scoped to the actual content card components. */
:where(.wp-card,.op-design-card,.doc-card,.guide-card,.service-card,.stand-card,.offset-card,.tech-card,.special-card,.additional-card){box-sizing:border-box;min-width:0;overflow:hidden;background:#fff;border:1px solid var(--op-border);border-radius:var(--op-card-radius)}
:where(.wp-card,.op-design-card,.doc-card,.guide-card,.service-card,.stand-card,.offset-card,.tech-card,.special-card,.additional-card) img{max-width:100%;object-fit:cover}
:where(.wp-card,.op-design-card,.doc-card,.guide-card,.service-card,.stand-card,.offset-card,.tech-card,.special-card,.additional-card) h3{color:#151515;line-height:1.25}
:where(.wp-card,.op-design-card,.doc-card,.guide-card,.service-card,.stand-card,.offset-card,.tech-card,.special-card,.additional-card) p{line-height:1.5}
/* Keep the wide-print section as the canonical 3/2/1 grid. */
.wp-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--op-card-gap)}
.wp-card{box-shadow:0 4px 16px rgba(0,0,0,.045)}
.wp-card img{display:block;width:100%;height:250px;object-fit:cover;background:#f4f4f4}
.wp-card-copy{padding:15px 16px 17px}
.wp-card-copy h3{font-size:18px;margin:0 0 7px}
.wp-card-copy p{font-size:14px;margin:0;color:var(--op-muted)}
.wp-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:16px}
.wp-heading h2{margin-bottom:0;color:var(--op-accent)}
.wp-heading p{max-width:690px;margin:0;color:#555;line-height:1.5}
/* Shared guard against grid items forcing horizontal page overflow. */
:where(.hero-grid,.pid-hero-grid,.pa3-hero-grid,.scan34-hero-grid) > *{min-width:0}
:where(.hero-grid,.pid-hero-grid,.pa3-hero-grid,.scan34-hero-grid) img{max-width:100%}
@media(max-width:950px){.wp-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wp-heading{display:block}.wp-heading p{margin-top:8px}}
@media(max-width:600px){.wp-card-grid{grid-template-columns:1fr}.wp-card img{height:235px}}
