/* -----------------------------------------------------------------------
   SC Simply Rent — Theme Stylesheet
   Mobile-first. Toutes les valeurs dynamiques via CSS vars (cf. functions.php).
   ----------------------------------------------------------------------- */

/* -----------------------------------------------------------------------
   Reset minimal
   ----------------------------------------------------------------------- */

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

body, h1, h2, h3, h4, h5, h6, p, ul, ol, figure, blockquote {
	margin: 0;
	padding: 0;
}

img, svg {
	display: block;
	max-width: 100%;
}

/* -----------------------------------------------------------------------
   Body
   ----------------------------------------------------------------------- */

body {
	background: var(--ssr-bg, #ffffff);
	color: var(--ssr-text, #1a1a2e);
	font-family: var(--ssr-font, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);
	font-size: 16px;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
}

/* -----------------------------------------------------------------------
   Accessibilité — Skip link
   ----------------------------------------------------------------------- */

.ssrt-skip-link.screen-reader-text {
	position: absolute;
	left: -9999px;
	top: auto;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

.ssrt-skip-link.screen-reader-text:focus {
	position: fixed;
	top: 8px;
	left: 8px;
	width: auto;
	height: auto;
	overflow: visible;
	background: #fff;
	color: var(--ssr-primary, #e85f20);
	font-weight: 600;
	padding: 8px 16px;
	border-radius: 4px;
	box-shadow: 0 2px 8px rgba(0,0,0,.2);
	z-index: 9999;
	text-decoration: none;
}

/* -----------------------------------------------------------------------
   Header
   ----------------------------------------------------------------------- */

.ssrt-header {
	position: sticky;
	top: 0;
	z-index: 100;
	background: var(--ssr-header-bg, #ffffff);
	border-bottom: 1px solid #e2e4e9;
	box-shadow: 0 1px 4px rgba(0,0,0,.06);
	height: 64px;
}

.ssrt-header__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	max-width: var(--ssr-max-width, 1200px);
	margin: 0 auto;
	padding: 0 24px;
	height: 100%;
}

/* Logo / nom du site */
.ssrt-header__brand a {
	text-decoration: none;
	color: var(--ssr-header-text, var(--ssr-text, #1a1a2e));
	font-weight: 700;
	font-size: 18px;
	letter-spacing: -.01em;
}

/* Logo SVG — couleur via currentColor */
.ssrt-header__brand svg {
	fill: currentColor;
	color: var(--ssr-logo-color, var(--ssr-primary, #e85f20));
}

.ssrt-header__brand .custom-logo {
	height: 40px;
	width: auto;
}

/* -----------------------------------------------------------------------
   Navigation
   ----------------------------------------------------------------------- */

.ssrt-nav__list {
	display: flex;
	align-items: center;
	gap: 28px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.ssrt-nav__list a {
	color: var(--ssr-header-text, var(--ssr-text, #1a1a2e));
	text-decoration: none;
	font-size: 15px;
	font-weight: 500;
	transition: color .15s ease;
}

.ssrt-nav__list a:hover,
.ssrt-nav__list .current-menu-item > a {
	color: var(--ssr-primary, #e85f20);
}

/* -----------------------------------------------------------------------
   Contenu principal
   ----------------------------------------------------------------------- */

.ssrt-main {
	max-width: var(--ssr-max-width, 1200px);
	margin: 0 auto;
	padding: 0 24px 48px;
}

/* Page Simply Rent — pleine largeur, sans padding */
.page-template-simply-rent-php .ssrt-main {
	max-width: 100%;
	padding: 0;
}

/* -----------------------------------------------------------------------
   Titres
   ----------------------------------------------------------------------- */

h1, h2, h3, h4, h5, h6 {
	font-family: var(--ssr-font-heading, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);
	font-weight: var(--ssr-heading-weight, 700);
	text-transform: var(--ssr-heading-case, none);
	line-height: 1.25;
	color: var(--ssr-text, #1a1a2e);
}

/* -----------------------------------------------------------------------
   Article / page standard
   ----------------------------------------------------------------------- */

.ssrt-page-article {
	padding-top: 40px;
}

.ssrt-page-header {
	margin-bottom: 24px;
}

.ssrt-page-title {
	font-size: clamp(24px, 4vw, 40px);
	font-weight: 700;
}

.ssrt-page-content {
	max-width: 72ch;
}

.ssrt-page-content p,
.ssrt-page-content ul,
.ssrt-page-content ol {
	margin-bottom: 16px;
}

.ssrt-page-content a {
	color: var(--ssr-primary, #e85f20);
	text-decoration: underline;
}

/* -----------------------------------------------------------------------
   404
   ----------------------------------------------------------------------- */

.ssrt-404 {
	padding: 80px 24px;
	text-align: center;
}

.ssrt-404 h1 {
	font-size: clamp(28px, 5vw, 48px);
	margin-bottom: 16px;
}

.ssrt-404 p {
	color: #6b7280;
	margin-bottom: 32px;
}

/* Bouton générique (utilisé par 404) */
.ssrt-btn {
	display: inline-block;
	padding: 12px 28px;
	border-radius: var(--ssr-radius, 8px);
	font-weight: 600;
	text-decoration: none;
	font-size: 15px;
	transition: background .15s ease, transform .1s ease;
}

.ssrt-btn--primary {
	background: var(--ssr-primary, #e85f20);
	color: var(--ssr-btn-text, #fff);
}

.ssrt-btn--primary:hover {
	background: var(--ssr-primary-hover, #c74f18);
	transform: translateY(-1px);
}

/* -----------------------------------------------------------------------
   Footer
   ----------------------------------------------------------------------- */

.ssrt-footer {
	background: var(--ssr-bg, #ffffff);
	border-top: 1px solid #e2e4e9;
	margin-top: 48px;
}

.ssrt-footer__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 12px;
	max-width: var(--ssr-max-width, 1200px);
	margin: 0 auto;
	padding: 20px 24px;
	font-size: 14px;
	color: #6b7280;
}

.ssrt-footer__inner a {
	color: #6b7280;
	text-decoration: underline;
}

.ssrt-footer__inner a:hover {
	color: var(--ssr-primary, #e85f20);
}

/* -----------------------------------------------------------------------
   Focus-visible (accessibilité)
   ----------------------------------------------------------------------- */

:focus-visible {
	outline: 2px solid var(--ssr-primary, #e85f20);
	outline-offset: 3px;
}

/* -----------------------------------------------------------------------
   Responsive — 1024px
   ----------------------------------------------------------------------- */

@media (max-width: 1024px) {
	.ssrt-header__inner {
		padding: 0 16px;
	}

	.ssrt-main {
		padding: 0 16px 40px;
	}

	.ssrt-nav__list {
		gap: 20px;
	}
}

/* -----------------------------------------------------------------------
   Responsive — 640px
   ----------------------------------------------------------------------- */

@media (max-width: 640px) {
	.ssrt-header {
		height: auto;
		min-height: 56px;
	}

	.ssrt-header__inner {
		flex-wrap: wrap;
		padding: 12px 16px;
		gap: 12px;
	}

	.ssrt-nav__list {
		gap: 16px;
		flex-wrap: wrap;
	}

	.ssrt-nav__list a {
		font-size: 14px;
	}

	.ssrt-main {
		padding: 0 12px 32px;
	}

	.ssrt-footer__inner {
		flex-direction: column;
		align-items: flex-start;
		padding: 16px 12px;
	}
}
