/* Pixelminds base layer — minimal resets + brand primitives shared by all surfaces. */
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--bg-page);color:var(--text-body);font-family:var(--font-body);font-size:var(--fs-body);line-height:var(--lh-body);font-weight:var(--fw-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,h4{font-family:var(--font-display);color:var(--text-strong);font-weight:var(--fw-bold);letter-spacing:var(--ls-display);margin:0;text-wrap:balance}
h1{font-size:var(--fs-h1);line-height:var(--lh-h1)}
h2{font-size:var(--fs-h2);line-height:var(--lh-h2)}
h3{font-size:var(--fs-h3);line-height:var(--lh-h3);font-weight:var(--fw-semibold);letter-spacing:var(--ls-tight)}
h4{font-size:var(--fs-h4);line-height:var(--lh-h4);font-weight:var(--fw-semibold);letter-spacing:var(--ls-tight)}
p{margin:0;text-wrap:pretty}
a{color:var(--text-accent);text-decoration:none;transition:color var(--dur) var(--ease)}
a:hover{color:var(--purple-bright)}
img{display:block;max-width:100%}
button{font:inherit}
::selection{background:var(--purple-primary);color:#fff}
/* Layout helpers */
.pm-container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--container-pad)}
.pm-section{padding-block:var(--section-y)}
/* Eyebrow — the system's small uppercase label */
.pm-eyebrow{font-family:var(--font-body);font-size:var(--fs-eyebrow);font-weight:var(--fw-semibold);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-muted)}
/* Gradient text highlight used inside large headings */
.pm-grad{background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;color:transparent}
/* Header responsiveness — the nav row is the only element that must collapse */
@media (max-width:1240px){.pm-header-nav{gap:18px!important;font-size:13.5px}}
@media (max-width:1120px){.pm-header-lang{display:none!important}}
@media (max-width:1040px){.pm-header-nav{display:none!important}.pm-header-burger{display:flex!important}}
@media (max-width:640px){.pm-header-cta{display:none!important}}
/* Hairline rule */
.pm-rule{height:1px;background:var(--border-subtle);border:0;margin:0}
