/*
Theme Name: Digital Labs
Theme URI: https://digitallabs.com
Author: Digital Labs
Description: Thème de blocs de la page d'accueil Digital Labs (SEO/GEO, RevOps et IA). Sans extension : formulaires, réglages, SEO et sécurité intégrés. Le design est compilé en local (assets/css/dl.css), aucune ressource externe.
Version: 1.1.1
Requires at least: 6.5
Tested up to: 6.8
Requires PHP: 8.0
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: digitallabs
*/

/* Compléments propres à WordPress (le design lui-même est dans assets/css/dl.css). */
.wp-site-blocks { padding: 0; }
.wp-site-blocks > * { margin-block-start: 0; margin-block-end: 0; }
.dl-header { position: sticky; top: var(--wp-admin--admin-bar--height, 0px); z-index: 50; }
/* Méga-menu Services au clavier / tactile (le survol est géré par les classes du design). */
[data-dl-megamenu][data-open="1"] > div.absolute { opacity: 1; transform: none; pointer-events: auto; }
/* Ancres : le titre ne passe pas sous l'en-tête collant. */
[id] { scroll-margin-top: 72px; }
/* Champ piège anti-spam : hors écran, invisible pour les visiteurs et les lecteurs d'écran. */
.dl-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
/* Pages légales et pages simples. */
.dl-page { background: #F8FAFC; color: #0F172A; padding: 4rem 1.5rem 6rem; }
.dl-page__inner { max-width: 48rem; margin: 0 auto; }
.dl-page h1 { font-family: 'Plus Jakarta Sans', sans-serif; font-size: 2.25rem; font-weight: 700; line-height: 1.15; margin-bottom: 1.5rem; }
.dl-page h2 { font-family: 'Plus Jakarta Sans', sans-serif; font-size: 1.25rem; font-weight: 700; margin: 2rem 0 .75rem; }
.dl-page p, .dl-page li { font-size: .9375rem; line-height: 1.7; color: #475569; margin-bottom: .75rem; }
.dl-page ul { list-style: disc; padding-left: 1.25rem; margin-bottom: 1rem; }
.dl-page a { color: #047857; text-decoration: underline; }
.dl-todo { background: #FEF3C7; color: #92400E; padding: 0 .25rem; border-radius: .25rem; }
/* Intégrations : sur mobile, les logos forment une rangée ordonnée au lieu de flotter sur le texte. */
@media (max-width: 1023px) {
	.dl-orbit { position: static !important; inset: auto !important; display: flex; flex-wrap: wrap; justify-content: center; gap: .75rem; max-width: 24rem; margin: 0 auto 2.5rem; }
	.dl-orbit > div { position: static !important; inset: auto !important; transform: none !important; }
	.dl-orbit > div > div { width: 3rem !important; height: 3rem !important; padding: .5rem !important; border-radius: .75rem; }
	.dl-orbit img { width: 100% !important; height: 100% !important; object-fit: contain; }
}
/* Bouton « retour en haut » : apparaît après un défilement, remonte au-dessus du bandeau cookies sur mobile. */
.dl-top { position: fixed; right: 1rem; bottom: 1.5rem; z-index: 40; width: 2.75rem; height: 2.75rem; border-radius: 9999px; background: #10B981; color: #fff; display: flex; align-items: center; justify-content: center; border: 0; cursor: pointer; box-shadow: 0 10px 25px rgba(15, 23, 42, .25); opacity: 0; visibility: hidden; transform: translateY(8px); transition: opacity .2s, transform .2s, visibility .2s, background-color .15s; }
.dl-top:hover { background: #047857; }
.dl-top:focus-visible { outline: 2px solid #0F172A; outline-offset: 2px; }
.dl-top.is-visible { opacity: 1; visibility: visible; transform: none; }
@media (min-width: 640px) { .dl-top { right: 1.5rem; } }
@media (max-width: 639px) { body.dl-cookie-open .dl-top { bottom: 11.5rem; } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; } }
