:root {
	--oranix-accent: #ff6a00;
	--oranix-accent-dark: #dd5400;
	--oranix-ink: #111111;
	--oranix-text: #292929;
	--oranix-muted: #6e6e6e;
	--oranix-line: #e8e8e4;
	--oranix-surface: #ffffff;
	--oranix-soft: #f5f5f2;
	--oranix-radius-sm: 10px;
	--oranix-radius-md: 16px;
	--oranix-radius-lg: 28px;
	--oranix-shadow: 0 18px 50px rgba(15, 15, 15, 0.08);
	--oranix-container: 1320px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
	margin: 0;
	background: var(--oranix-surface);
	color: var(--oranix-text);
	font-family: inherit;
	-webkit-font-smoothing: antialiased;
}
body.oranix-lock-scroll { overflow: hidden; }
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button { color: inherit; }
svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }

.oranix-container { width: min(calc(100% - 40px), var(--oranix-container)); margin-inline: auto; }
.oranix-main { min-height: 50vh; }
.oranix-content-area { padding-block: 72px; }
.oranix-prose { max-width: 900px; }
.oranix-prose h1 { font-size: clamp(2rem, 5vw, 4.25rem); line-height: 1.08; letter-spacing: -0.04em; }
.oranix-prose p { color: var(--oranix-muted); }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.skip-link:focus { clip: auto; width: auto; height: auto; margin: 10px; padding: 12px 18px; background: #fff; z-index: 99999; }

.oranix-eyebrow { margin: 0 0 16px; color: var(--oranix-accent); font-size: 0.78rem; font-weight: 800; letter-spacing: 0.16em; text-transform: uppercase; }
.oranix-button { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; gap: 10px; padding: 0 22px; border: 1px solid transparent; border-radius: 12px; font-weight: 750; transition: transform .2s ease, background .2s ease, border-color .2s ease; }
.oranix-button:hover { transform: translateY(-2px); }
.oranix-button--primary { background: var(--oranix-ink); color: #fff; }
.oranix-button--primary:hover { background: var(--oranix-accent); }
.oranix-button--ghost { border-color: var(--oranix-line); background: rgba(255,255,255,.65); }
.oranix-icon-button { position: relative; display: inline-grid; place-items: center; width: 42px; height: 42px; padding: 0; border: 0; border-radius: 10px; background: transparent; cursor: pointer; }
.oranix-icon-button:hover { background: var(--oranix-soft); }
