/**
 * TW Frame — tokens SEMAS + reset.
 * Source de vérité couleurs (thème + blocs).
 */

:root {
	--background: oklch(100% 0 0);
	--foreground: oklch(22% 0.01 250);
	--primary: #f9b700;
	--primary-foreground: #383E42;
	--primary-glow: color-mix(in oklab, #f9b700 55%, #fff);
	--secondary: oklch(96% 0.005 90);
	--secondary-foreground: #383E42;
	--accent: color-mix(in oklab, #f9b700 10%, #fff);
	--accent-foreground: #383E42;
	--muted: #f7f8f8;
	--muted-foreground: oklch(50% 0.01 260);
	--border: color-mix(in oklab, #383E42 12%, #fff);
	--dark: #383E42;
	--dark-foreground: oklch(98% 0.003 90);
	--menu-bg: #383E42;
	--lisere: #f9b700;
	--card: #fff;
	--card-foreground: #383E42;
	--radius: 1.25rem;
	--shadow-card: 0 14px 34px -22px color-mix(in oklab, #383E42 45%, transparent);
	--shadow-glow: 0 10px 30px -10px color-mix(in oklab, #f9b700 45%, transparent);
	--gradient-hero: linear-gradient(180deg, #f7f8f8 0%, #fff 55%, #fff 100%);
	--gradient-primary: linear-gradient(135deg, #f9b700 0%, #ffc933 100%);
	--font-sans: "Raleway", "Century Gothic", system-ui, sans-serif;
	--font-display: "Raleway", "Century Gothic", system-ui, sans-serif;
	--tw-inner: 1320px;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	font-family: var(--font-sans);
}

body,
body.tw-frame {
	margin: 0;
	font-family: var(--font-sans);
	font-size: 1rem;
	line-height: 1.5;
	color: var(--foreground);
	background: var(--background);
	-webkit-font-smoothing: antialiased;
}

button,
input,
select,
textarea,
optgroup {
	font-family: inherit;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: var(--font-display);
}

img {
	max-width: 100%;
	height: auto;
	display: block;
}

a {
	color: inherit;
}

.tw-frame-main {
	min-height: 40vh;
}

.entry-content > *:first-child {
	margin-top: 0;
}

.tw-inner {
	width: 100%;
	max-width: var(--tw-inner);
	margin-inline: auto;
	padding-inline: 1.5rem;
}

.screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}
