/* =============================================================================
   Soul Consulting — Design tokens
   Escala padronizada (5px). Usar só estas vars no custom.css — sem hardcode.
   ============================================================================= */

:root {
	/* —— Cores — Brand —— */
	--brand-marrom: #4c3d37;
	--brand-dourado: #ffb300;

	/* —— Cores — Concreto —— */
	--concreto-100: #c1c2c0;
	--concreto-200: #989191;
	--concreto-300: #858587;
	--concreto-400: #7d716f;
	--concreto-500: #675a54;
	--concreto-600: #3b2d28;

	/* —— Cores — Alma —— */
	--alma-50: #ffffcd;
	--alma-100: #ffde77;
	--alma-400: #ff9819;

	/* —— Cores — Neutros —— */
	--neutral-white: #ffffff;
	--light-gray: #f4f4f4;

	/* —— Overlays (hero / cards) —— */
	--overlay-hero: rgba(59, 45, 40, 0.8);
	--overlay-hero-glow: rgba(0, 0, 0, 0.45);
	--overlay-white-90: rgba(255, 255, 255, 0.9);
	--overlay-dot-track: rgba(193, 194, 192, 0.35);
	--overlay-marrom-0: rgba(76, 61, 55, 0);
	--overlay-dourado-0: rgba(255, 179, 0, 0);
	--gradient-o-que-nos-move: linear-gradient(65.5deg, var(--brand-dourado) 31%, var(--overlay-dourado-0) 146%);

	/* —— Tipografia — famílias —— */
	--font-title: "Poppins", sans-serif;
	--font-body: "Montserrat", sans-serif;

	/* —— Tipografia — tamanhos (desktop) —— */
	--font-size-hero: 62px;
	--font-size-h1: 48px;
	--font-size-h2: 36px;
	--font-size-h3: 28px;
	--font-size-h4: 22px;
	--font-size-body: 18px;
	--font-size-base: 16px;
	--font-size-sm: 14px;
	--font-size-small: 12px;
	--font-size-tiny: 10px;

	/* —— Tipografia — pesos —— */
	--font-weight-thin: 100;
	--font-weight-extra-light: 200;
	--font-weight-light: 300;
	--font-weight-regular: 400;
	--font-weight-medium: 500;
	--font-weight-semibold: 600;
	--font-weight-bold: 700;
	--font-weight-extra-bold: 800;
	--font-weight-black: 900;

	/* —— Tipografia — line-height —— */
	--line-height-90: 90%;
	--line-height-100: 100%;
	--line-height-110: 110%;
	--line-height-120: 120%;
	--line-height-130: 130%;
	--line-height-140: 140%;
	--line-height-150: 150%;

	/* —— Tipografia — letter-spacing —— */
	--letter-spacing-display: -1.5px;
	--letter-spacing-h2: -0.5px;
	--letter-spacing-eyebrow: 2.5px;
	--letter-spacing-none: 0;

	/* —— Espaçamento (passo 5px) —— */
	--space-5: 5px;
	--space-10: 10px;
	--space-15: 15px;
	--space-20: 20px;
	--space-25: 25px;
	--space-30: 30px;
	--space-35: 35px;
	--space-40: 40px;
	--space-45: 45px;
	--space-50: 50px;
	--space-55: 55px;
	--space-60: 60px;
	--space-65: 65px;
	--space-70: 70px;
	--space-75: 75px;
	--space-80: 80px;
	--space-85: 85px;
	--space-90: 90px;
	--space-95: 95px;
	--space-100: 100px;

	/* —— Border radius —— */
	--border-radius-5: 5px;
	--border-radius-10: 10px;
	--border-radius-15: 15px;
	--border-radius-20: 20px;
	--border-radius-25: 25px;
	--border-radius-30: 30px;
	--border-radius-35: 35px;
	--border-radius-40: 40px;
	--border-radius-45: 45px;
	--border-radius-50: 50px;
	--border-radius-full: 999px;

	/* —— Layout —— */
	--content-width: 1280px;
	--content-width-narrow: 95%;
	--layout-title-col: 360px;
	--hero-content-width: 1200px;
	--hero-text-width: 900px;
	--header-height: 130px;
	--hero-height: 730px;

	/* —— Tamanhos de UI (ícones, dots, inputs) —— */
	--size-dot-h: 3px;
	--size-dot-w: 5px;
	--size-dot-w-active: 20px;
	--size-dot-hit-y: 20px;
	--size-dot-hit-x: 10px;
	--size-icon-xs: 18px;
	--size-icon-sm: 24px;
	--size-icon-md: 50px;
	--size-social: 40px;
	--size-input-h: 50px;
	--size-textarea-h: 120px;
	--size-button-h: 50px;
	--size-logo-nav: 70px;
	--size-card-img-team: 300px;
	--size-card-img-blog: 320px;
	--size-card-service-h: 570px;

	/* —— Borda —— */
	--border-width: 1px;
	--border-width-button: 1.5px;

	/* —— Sombra —— */
	--shadow-sm: 0 1px 3px rgba(76, 61, 55, 0.06);
	--shadow-card: 0 0 25px rgba(0, 0, 0, 0.05);
	--shadow-card-sm: 0 0 17.5px rgba(0, 0, 0, 0.05);

	/* —— Motion —— */
	--ease: 0.25s ease;
	--ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1);
	--ease-out-quart: cubic-bezier(0.25, 1, 0.5, 1);
	--hero-slide-ms: 900ms;
	--hero-content-ms: 700ms;
	--hero-autoplay-ms: 7000ms;
	--hero-rise-y: 20px;
	--hero-kenburns-scale: 1.06;
	--hero-dots-bottom: 60px;
}

/* —— Tablet ≤980 —— */
@media (max-width: 980px) {
	:root {
		--font-size-hero: 42px;
		--font-size-h1: 36px;
		--font-size-h2: 28px;
		--font-size-h3: 24px;
		--font-size-h4: 20px;
		--font-size-body: 16px;
		--hero-height: 600px;
		--hero-content-width: 100%;
		--hero-text-width: 100%;
	}
}

/* —— Mobile ≤767 —— */
@media (max-width: 767px) {
	:root {
		--font-size-hero: 32px;
		--font-size-h1: 28px;
		--font-size-h2: 24px;
		--font-size-h3: 22px;
		--font-size-h4: 18px;
		--font-size-body: 16px;
		--font-size-base: 15px;
		--hero-height: 560px;
		--hero-dots-bottom: var(--space-40);
		--letter-spacing-display: -1px;
	}
}
