/*
Theme Name: Kaino-o
Template: twentytwentyfive
Description: Thème enfant de Twenty Twenty-Five pour kaino-o.com
Version: 1.0.4
Requires at least: 6.7
Text Domain: kaino
*/


/* ==========================================================================
   1. GÉNÉRAL
   ========================================================================== */

/* Évite une barre de défilement horizontale (bandeaux en 100vw) */
.wp-site-blocks {
	overflow-x: clip;
}

/* Colle le footer au contenu (TT5 ajoute un espace entre les zones) */
.wp-site-blocks > footer {
	margin-block-start: 0;
}


/* ==========================================================================
   2. EN-TÊTE — Sélecteur de langue Polylang (FR / EN)
   ========================================================================== */

/* Sous-menu (menu de bureau) : largeur du plus long élément, coins arrondis, ombre légère. */
.wp-block-navigation .wp-block-navigation__responsive-container:not(.is-menu-open) .has-child .wp-block-navigation__submenu-container {
	width: max-content !important; /* WordPress force width: auto au survol. */
	min-width: 0;
	padding: 8px;
	background: #fff;
	border: none;
	border-radius: 10px;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08), 0 2px 6px rgba(0, 0, 0, 0.05);
}
.wp-block-navigation .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	white-space: nowrap;
	padding: 8px 14px;
	border-radius: 6px;
}
.wp-block-navigation .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover {
	background: #f3f6fa;
}

/* Menu + sélecteur de langue : léger décalage vers le bas, sur ordinateur */
@media (min-width: 600px) {
	.kaino-nav-row {
		margin-top: 10px!important;
	}
}

.wp-block-polylang-language-switcher {
	display: flex;
	align-items: center;
	gap: 0;
	list-style: none;
	margin: 0;
	padding: 0;
}

.wp-block-polylang-language-switcher .lang-item {
	margin: 0;
	padding: 0;
	font-family: var(--wp--preset--font-family--prata);
	font-size: 10px;
	line-height: 23px;
	letter-spacing: .3em;
	text-transform: uppercase;
}

/* Séparateur « / » entre les langues */
.wp-block-polylang-language-switcher .lang-item + .lang-item::before {
	content: "/";
	margin: 0 .8em;
	color: var(--wp--preset--color--muted);
}

/* Langue active en noir, l'autre en gris */
.wp-block-polylang-language-switcher a {
	color: var(--wp--preset--color--contrast);
	text-decoration: none;
}
.wp-block-polylang-language-switcher .lang-item:not(.current-lang) a {
	color: var(--wp--preset--color--muted);
}
.wp-block-polylang-language-switcher .lang-item:not(.current-lang) a:hover {
	color: var(--wp--preset--color--contrast);
}

/* ==========================================================================
   2b. EN-TÊTE — Menu : survol et page courante
   ========================================================================== */

/* Aucun soulignement natif */
.wp-block-navigation a {
	text-decoration: none !important;
}

/* Filet sous les entrées de 1er niveau */
.wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content {
	position: relative;
}
.wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content::after {
	content: "";
	position: absolute;
	left: 0;
	right: .3em;            /* compense l'espacement après la dernière lettre */
	bottom: -6px;           /* distance au mot */
	height: 1px;            /* 2px si tu le veux plus marqué */
	background: var(--wp--preset--color--muted);
	transform: scaleX(0);
	transform-origin: center;
	transition: transform .3s ease;
}

/* Survol : filet gris */
.wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content:hover::after {
	transform: scaleX(1);
}

/* Page courante : filet noir */
.wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content[aria-current="page"]::after {
	transform: scaleX(1);
	background: var(--wp--preset--color--contrast);
}

/* Menu mobile (overlay) : parents en gras, enfants en normal */
/* .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content {
	font-weight: 700;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	font-weight: 400;
} */
/* Menu mobile (overlay) : parents restent en Prata capitales et les 7 collections passent en Heebo minuscules, un peu en retrait */
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	font-family: var(--wp--preset--font-family--heebo);
	font-weight: 300;
	font-size: 14px;
	letter-spacing: .05em;
	text-transform: none;
	padding-left: 1em;
}

/* ==========================================================================
   3. PIED DE PAGE
   ========================================================================== */

/* Crédits sur une ligne */
.kaino-credits {
	white-space: nowrap;
}


/* ==========================================================================
   4. ACCUEIL — Titre « Collections » avec filets
   ========================================================================== */

.kaino-sep-title {
	display: flex;
	align-items: center;
	gap: 3rem;
	letter-spacing: .08em;
}
.kaino-sep-title::before,
.kaino-sep-title::after {
	content: "";
	flex: 1;
	border-top: 1px solid var(--wp--preset--color--contrast);
}


/* ==========================================================================
   5. CARTES PHOTO (accueil + collections)
   ========================================================================== */

/* Image pleine largeur du bloc */
.kaino-card .wp-block-image img {
	width: 100%;
	height: auto;
	display: block;
}

/* Limite la hauteur des photos (verticales surtout) */
.kaino-card .wp-block-image img {
	max-height: 80vh;
	max-height: 80svh; /* tient compte des barres du navigateur sur mobile */
	object-fit: contain;
}

/* Titre sous l'image */
.kaino-card-title {
	font-size: 18px;
	letter-spacing: .12em;
	margin-block-start: 22px !important;
	margin-block-end: 0;
}

/* Légende courte (accueil) */
.kaino-card p {
	line-height: 20px;
	margin-block-start: 6px !important;
}

/* Texte long (1re photo des collections) */
.kaino-card .kaino-card-text {
	line-height: 27px;
}


/* ==========================================================================
   6. PAGES COLLECTIONS — Briques
   ========================================================================== */

/* Espacement entre briques */
.kaino-brick + .kaino-brick {
	margin-block-start: 110px !important;
}

/* Petite photo centrée (560px) */
.kaino-narrow {
	max-width: 560px !important;
	margin-inline: auto !important;
}

/* Petite photo dans la colonne de gauche (deux photos côte à côte) */
.kaino-col-small {
	max-width: 60%;
	margin-inline: auto;
}


/* ==========================================================================
   7. PAGES COLLECTIONS — Fiche technique (bandeau gris)
   ========================================================================== */

/* Bord à bord et collée au footer */
.kaino-fiche {
	width: 100vw;
	max-width: 100vw !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
	margin-block-start: 110px !important;
	margin-block-end: -100px !important; /* annule le padding-bottom du main */
}

/* Titre */
.kaino-fiche-title {
	font: 600 18px/20px var(--wp--preset--font-family--prata);
	text-transform: none;
	letter-spacing: .08em;
}

/* Sous-titre */
.kaino-fiche-title + p {
	font: 200 18px/27px var(--wp--preset--font-family--heebo) !important;
}

/* Items : toujours sur toute la largeur, passage à la ligne automatique */
.kaino-fiche .is-layout-grid {
	display: flex !important;
	flex-wrap: wrap;
	gap: 30px;
}
.kaino-fiche .kaino-fiche-item {
	flex: 1 1 110px;
}

/* Items : typo */
.kaino-fiche-item p {
	margin: 0;
	line-height: 27px;
}
.kaino-fiche-item p:first-child {
	font-size: 14px;
	font-weight: 400;
}
.kaino-fiche-item p + p {
	font-size: 13px;
	font-weight: 300;
}

/* ==========================================================================
   8. CONTACT
   ========================================================================== */

.kaino-contact p {
	text-align: right;
}

/* ==========================================================================
   9. RESPONSIVE
   ========================================================================== */

@media (max-width: 781px) {

	/* Deux photos côte à côte : la petite reprend toute la largeur */
	.kaino-col-small {
		max-width: 100%;
	}

	/* Contact : texte */
	.kaino-contact p {
		text-align: center;
	}
	/* Contact : visuel du catalogue centré */
	.kaino-contact-visuel .wp-block-image {
		display: flex;
		justify-content: center;
	}
	.kaino-contact-visuel .wp-block-image img {
		width: auto;
		max-width: min(100%, 420px);
	}
	.kaino-contact-visuel p {
		text-align: center;
		padding-top: 12px;
	}
}