/*
Theme Name: SMISS
Theme URI: https://www.smiss.fr
Author: SMISS
Author URI: https://www.smiss.fr
Description: Thème vitrine une page pour SMISS – intégrateur de solutions pour les PME / PMI (ERP, cybersécurité, RGPD, systèmes et réseaux).
Version: 1.1.5
Requires at least: 6.4
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: smiss
*/

html { scroll-behavior: smooth; }
:where(.wp-site-blocks) > * { margin-block-start: 0; }
main.wp-block-group > section { margin-block-start: 0; }
[id] { scroll-margin-top: 90px; }

/* En-tête */
.smiss-header {
	position: sticky;
	top: 0;
	z-index: 50;
	background: #ffffff;
	border-bottom: 1px solid var(--wp--preset--color--line);
}
.admin-bar .smiss-header { top: 32px; }
.smiss-header .wp-block-navigation a { text-decoration: none; font-weight: 600; }
.smiss-header .wp-block-navigation a:hover { color: var(--wp--preset--color--primary); }
.smiss-header .wp-block-navigation { font-size: 1.05rem; white-space: nowrap; }
@media (max-width: 1000px) {
	.smiss-header .wp-block-navigation__container { gap: 1rem !important; }
	.smiss-header .wp-block-navigation { font-size: .92rem; }
	.smiss-logo img { width: 140px !important; }
}
@media (max-width: 781px) { .smiss-logo img { width: 160px !important; } }

/* Bandeau d'accueil */
.smiss-hero { position: relative; overflow: hidden; }
/* Symbole du logo, version fond sombre (partie noire passée en blanc) */
.smiss-hero-symbol img { filter: drop-shadow(0 18px 40px rgba(227, 6, 19, .25)); }
@media (max-width: 781px) {
	.smiss-hero-symbol { order: -1; }
	.smiss-hero-symbol img { width: 150px !important; }
}
.smiss-hero .smiss-tagline {
	font-family: var(--wp--preset--font-family--script);
	transform: rotate(-3deg);
	display: inline-block;
}

/* Cartes expertises */
.smiss-card {
	height: 100%;
	border-top: 4px solid var(--wp--preset--color--primary);
	box-shadow: 0 6px 24px rgba(17, 17, 17, .06);
	transition: transform .2s ease, box-shadow .2s ease;
}
.smiss-card:hover { transform: translateY(-4px); box-shadow: 0 12px 32px rgba(17, 17, 17, .1); }
.smiss-card h3 { font-size: 1.3rem; }
.smiss-card ul { padding-left: 1.1em; margin: 0; }
.smiss-card li { margin-bottom: .35em; }
.smiss-card li::marker { color: var(--wp--preset--color--primary); }
.smiss-icon {
	width: 52px; height: 52px;
	border-radius: 14px;
	background: var(--wp--preset--color--primary);
	color: #fff;
	display: grid;
	place-items: center;
}
.smiss-icon svg { width: 28px; height: 28px; }

/* Bandeau chiffres */
.smiss-stats p { margin: 0; line-height: 1.35; font-size: .95rem; text-align: center; }

/* Rangées de 3 blocs : 3 colonnes égales, ou 1 seule sur mobile (jamais 2 + 1 orphelin) */
.smiss-stats-grid.is-layout-grid,
.smiss-steps.is-layout-grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
@media (max-width: 700px) {
	.smiss-steps.is-layout-grid { grid-template-columns: 1fr !important; }
}
@media (max-width: 520px) {
	.smiss-stats-grid.is-layout-grid { grid-template-columns: 1fr !important; }
}

/* Texte justifié dans les blocs (avec césure pour éviter les grands blancs) */
.smiss-hero p:not(.smiss-tagline):not(.has-small-font-size),
.smiss-step p,
.smiss-card li,
.smiss-case li,
#atouts .wp-block-column > p,
#facturation .wp-block-column > p:not(.has-small-font-size),
.smiss-timeline p,
.smiss-contact .wp-block-column > p.has-grey-color,
.wp-block-post-content p {
	text-align: justify;
	hyphens: auto;
	-webkit-hyphens: auto;
}
.smiss-stats strong { display: block; font-size: 1.9rem; font-weight: 800; line-height: 1.1; margin-bottom: .2rem; }

/* Approche en 3 étapes */
.smiss-step { position: relative; padding-top: 3.4rem; border-top: 2px solid var(--wp--preset--color--line); }
.smiss-step:nth-child(2)::before { content: "02"; }
.smiss-step:nth-child(3)::before { content: "03"; }
.smiss-step::before {
	content: "01";
	position: absolute; top: .7rem; left: 0;
	font-size: 1.9rem; font-weight: 800; line-height: 1;
	color: var(--wp--preset--color--primary);
}
.smiss-step h3 { font-size: 1.3rem; margin-top: 0; }

/* Calendrier facturation électronique */
.smiss-timeline { border-left: 3px solid var(--wp--preset--color--primary); padding-left: 1.5rem; }
.smiss-timeline p { position: relative; margin: 0 0 1.75rem; color: #d5d8dc; }
.smiss-timeline p:last-child { margin-bottom: 0; }
.smiss-timeline p::before {
	content: ""; position: absolute; left: calc(-1.5rem - 9px); top: .35rem;
	width: 15px; height: 15px; border-radius: 50%;
	background: var(--wp--preset--color--primary); border: 3px solid var(--wp--preset--color--dark);
}
.smiss-timeline strong { display: block; color: #fff; font-size: 1.25rem; }

/* Interfaces réalisées : A ⇄ B */
.smiss-links p {
	margin: 0 0 .9rem; padding: 1rem 1.25rem;
	background: var(--wp--preset--color--light); border-radius: 12px;
	color: var(--wp--preset--color--grey); font-size: .95rem; line-height: 1.4;
}
.smiss-links span { font-weight: 700; color: var(--wp--preset--color--dark); font-size: 1.05rem; }
.smiss-links span:first-child::after { content: " ⇄ "; color: var(--wp--preset--color--primary); }
.smiss-links span:nth-child(2) { margin-right: .6rem; }
.smiss-links span:nth-child(2)::after { content: ""; display: block; }

/* Secteurs */
.smiss-chips { list-style: none; padding: 0; display: flex; flex-wrap: wrap; gap: .5rem; }
.smiss-chips li {
	margin: 0; padding: .35rem .9rem; border-radius: 999px;
	border: 1px solid var(--wp--preset--color--line); font-size: .9rem; font-weight: 600;
}
.smiss-case ul { padding-left: 1.1em; margin: 0; }
.smiss-case li::marker { color: var(--wp--preset--color--primary); }

/* Atouts */
.smiss-stat strong { color: var(--wp--preset--color--primary); }

/* Partenaires */
.smiss-partners img { max-height: 64px; width: auto; object-fit: contain; }

/* Contact */
.smiss-map iframe { width: 100%; height: 100%; min-height: 340px; border: 0; border-radius: 16px; display: block; }
.smiss-contact a { color: inherit; }

/* Pages de texte (mentions légales…) */
.wp-block-post-content h2 { font-size: var(--wp--preset--font-size--large); margin-top: 2.25rem; }

/* Mobile */
@media (max-width: 781px) {
	.admin-bar .smiss-header { top: 0; }
}
