/*
Theme Name: Hello Olobuild
Theme URI: https://olobuild.com
Description: Tema WordPress leggero e minimale, progettato per funzionare perfettamente con Olobuild page builder. Nessun CSS invasivo, nessun conflitto — solo il necessario.
Version: 1.0.0
Author: Olobuild
Author URI: https://olobuild.com
Requires at least: 6.0
Tested up to: 6.9
Requires PHP: 7.4
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: hello-olobuild
Tags: full-site-editing, page-builder, blank, starter, minimal
*/

/* ── Reset minimale ── */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }

body {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
  font-size: 16px;
  line-height: 1.6;
  color: #1F2937;
  background: #fff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* ── Tipografia base (NO override aggressivi) ── */
h1, h2, h3, h4, h5, h6 { font-weight: 700; line-height: 1.2; }
h1 { font-size: 2.5rem; }
h2 { font-size: 2rem; }
h3 { font-size: 1.5rem; }
h4 { font-size: 1.25rem; }
h5 { font-size: 1.125rem; }
h6 { font-size: 1rem; }

a { color: inherit; text-decoration: none; }
a:hover { text-decoration: underline; }

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

ul, ol { list-style: none; }

/* ── Layout base ── */
.wp-site-blocks { min-height: 100vh; }

/* Olobuild sticky footer */
body.olo-has-footer .wp-site-blocks {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}
body.olo-has-footer .wp-site-blocks > main,
body.olo-has-footer .wp-site-blocks > .is-layout-flow {
  flex: 1 0 auto;
}

/* ── Rimuovi tutti i constraint del block theme ── */
.is-layout-constrained > :where(:not(.alignfull)) {
  max-width: none;
}
.wp-site-blocks > * {
  max-width: none;
}

/* ── WP Admin bar fix ── */
@media screen and (max-width: 600px) {
  #wpadminbar { position: fixed !important; }
}

/* ── Utility: nascosto ma accessibile ── */
.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute;
  height: 1px;
  width: 1px;
  overflow: hidden;
}

/* ── WP defaults minimi ── */
.alignfull { width: 100%; max-width: 100%; }
.alignwide { max-width: 1200px; margin-left: auto; margin-right: auto; }

/* ── No WP block spacing/gap override ── */
:where(.wp-site-blocks) > * { margin-block-start: 0; margin-block-end: 0; }
:where(.wp-site-blocks) > * + * { margin-block-start: 0; }
