/*
Theme Name: Blobfish
Theme URI: https://github.com/dynamicdevotion/blobfish
Description: Tema minimo pensato per il plugin Blobfish Core: fornisce solo lo scheletro del documento e i punti di aggancio per header, contenuto e footer. Niente barre laterali, niente aree widget, un solo foglio di stile.
Version: 0.33.0
Author: Dynamic Devotion
Author URI: https://www.dynamicdevotion.it
Requires at least: 6.6
Requires PHP: 8.0
Tested up to: 7.1
Text Domain: blobfish
Tags: minimal, accessibility-ready, block-styles, full-width-template
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/

/* ==========================================================================
   Blobfish · stile del documento
   Poche regole: colori, misure e componenti stanno nel plugin (base.css) e
   nei tipi di sezione. Qui c'è solo ciò che serve a qualunque pagina.
   ========================================================================== */

:root {
	--bf-larghezza: var(--bf_width, 1200px);
	--bf-testo: var(--bf_testo, #15232d);
	--bf-sfondo: var(--bf_chiaro, #ffffff);
	--bf-primario: var(--bf_primario, #1d5c63);
	--bf-spazio: clamp(1.25rem, 0.9rem + 1.5vw, 2rem);
}

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

body {
	margin: 0;
	background: var(--bf-sfondo);
	color: var(--bf-testo);
	font-family: var(--bf_font_testo, var(--as-font-testo, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif));
	font-size: var(--bf_text_size, 1.0625rem);
	line-height: 1.6;
	-webkit-text-size-adjust: 100%;
}

:where(h1, h2, h3, h4, h5, h6) {
	font-family: var(--bf_font_titoli, var(--bf_font_testo, inherit));
	line-height: 1.15;
	text-wrap: balance;
}

:where(p, li) {
	text-wrap: pretty;
}

:where(img, video, svg, iframe) {
	max-width: 100%;
	height: auto;
}

a {
	color: var(--bf-primario);
}

:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 3px;
}

/* Il contenitore vale solo per le pagine di ripiego e per WooCommerce:
   le sezioni del plugin hanno il proprio. */
.bf-contenitore {
	width: 100%;
	max-width: var(--bf-larghezza);
	margin-inline: auto;
	padding-inline: var(--bf-spazio);
}

.bf-ripiego {
	padding-block: var(--bf-spazio);
}

.bf-ripiego--header .bf-contenitore,
.bf-ripiego--footer .bf-contenitore {
	display: flex;
	flex-wrap: wrap;
	gap: var(--bf-spazio);
	align-items: center;
	justify-content: space-between;
}

.bf-ripiego--footer {
	margin-top: 3rem;
	border-top: 1px solid color-mix(in srgb, currentColor 15%, transparent);
}

.bf-marchio {
	font-size: 1.25rem;
	font-weight: 700;
	text-decoration: none;
	color: inherit;
}

.bf-menu,
.bf-elenco {
	display: flex;
	flex-wrap: wrap;
	gap: 1.5rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.bf-elenco {
	flex-direction: column;
	gap: 1.5rem;
}

.bf-ripiego__contenuto {
	padding-block: clamp(2rem, 1.5rem + 2.5vw, 3.5rem);
}

/* Collegamento "Vai al contenuto": visibile solo con la tastiera. */
.bf_skip {
	position: absolute;
	top: -100px;
	left: 1rem;
	z-index: 1000;
	padding: 0.75rem 1rem;
	background: #fff;
	color: #000;
}

.bf_skip:focus {
	top: 1rem;
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: 0.01ms !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
}

/* ---------- WooCommerce ----------
   Le pagine del negozio restano di WooCommerce: qui le mettiamo solo
   dentro il contenitore del tema. */

.woocommerce-notices-wrapper:empty {
	display: none;
}

.bf-woo {
	padding-block: clamp(2rem, 1.5rem + 2.5vw, 3.5rem);
}
