/* OpexIQ Design System — Base element styling */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font:var(--type-body);color:var(--text-body);background:var(--surface-page);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,h4,h5,h6{margin:0;color:var(--text-heading);text-wrap:balance}
h1{font:var(--type-h1);letter-spacing:var(--ls-heading)}
h2{font:var(--type-h2);letter-spacing:var(--ls-heading)}
h3{font:var(--type-h3)}
h4{font:var(--type-h4)}
p{margin:0;text-wrap:pretty}
a{color:var(--text-accent);text-decoration:none;transition:color var(--dur-fast) var(--ease-standard)}
a:hover{color:var(--action-primary-bg-hover);text-decoration:underline;text-underline-offset:3px}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}
img,svg{display:block;max-width:100%}
hr{border:0;border-top:var(--rule-hairline) solid var(--border-subtle);margin:0}
::selection{background:var(--opex-red);color:#fff}
.opex-eyebrow{font:var(--type-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-accent)}
.opex-accent{color:var(--text-accent)}
.opex-marker{display:inline-block;width:var(--marker-width);height:var(--marker-height);background:var(--opex-red)}
.opex-container{width:100%;max-width:var(--container-lg);margin:0 auto;padding:0 var(--gutter)}
