/*
 * Il sottomenu più vicino al margine destro deve aprirsi verso l'interno.
 * Evita che il menu desktop allarghi il documento oltre il viewport.
 */
.lpn-site-nav .menu > li:last-child > .sub-menu {
	right: 0 !important;
	left: auto !important;
}

/*
 * Casa Creativa — assestamento mobile canonico
 * Corregge i telai desktop rigidi di Vestibolo, Stanze e Risonanze
 * senza modificare la composizione desktop.
 */

@media (max-width: 1024px) {
	html,
	body {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		overflow-x: hidden !important;
	}

	.lpn-page,
	.lpn-category-page,
	.lpn-tag-page {
		min-width: 0 !important;
		max-width: 100% !important;
		overflow-x: hidden !important;
	}

	.lpn-site-header,
	.lpn-site-footer,
	.site-main,
	main {
		max-width: 100% !important;
	}

	img,
	svg,
	video,
	audio {
		max-width: 100%;
	}
}

/* --------------------------------------------------
   VESTIBOLO / HOME
-------------------------------------------------- */

@media (max-width: 900px) {
	body.home .lpn-page .lpn-wrap {
		width: 100% !important;
		max-width: 100% !important;
		padding-right: 18px !important;
		padding-left: 18px !important;
	}

	body.home .lpn-page__sideword {
		display: none !important;
	}

	body.home .lpn-hero__grid,
	body.home .lpn-manifesto__layout,
	body.home .lpn-opening__layout,
	body.home .lpn-week__head,
	body.home .lpn-week-grid,
	body.home .lpn-daily__layout,
	body.home .lpn-daily__content,
	body.home .lpn-transit__layout,
	body.home .lpn-transit__box,
	body.home .lpn-breath__grid,
	body.home .lpn-social__box,
	body.home .lpn-codex__layout,
	body.home .lpn-close__layout {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	body.home .lpn-hero__grid > *,
	body.home .lpn-manifesto__layout > *,
	body.home .lpn-opening__layout > *,
	body.home .lpn-week__head > *,
	body.home .lpn-week-grid > *,
	body.home .lpn-daily__layout > *,
	body.home .lpn-daily__content > *,
	body.home .lpn-transit__layout > *,
	body.home .lpn-transit__box > *,
	body.home .lpn-breath__grid > *,
	body.home .lpn-social__box > *,
	body.home .lpn-codex__layout > *,
	body.home .lpn-close__layout > * {
		min-width: 0 !important;
		max-width: 100% !important;
	}

	body.home .lpn-title {
		max-width: 9ch !important;
		font-size: clamp(3.35rem, 14vw, 5rem) !important;
		line-height: .88 !important;
		letter-spacing: -.075em !important;
		overflow-wrap: anywhere;
	}

	body.home .lpn-lead {
		max-width: 42ch !important;
	}

	body.home .lpn-hero-stage {
		min-height: 540px !important;
		padding: 18px !important;
	}

	body.home .lpn-hero-stage__panel {
		width: 100% !important;
		max-width: 100% !important;
		padding: 24px 20px 20px !important;
	}

	body.home .lpn-orientation__path {
		grid-template-columns: 76px minmax(0, 1fr) !important;
		min-width: 0 !important;
	}

	body.home .lpn-orientation__path strong,
	body.home .lpn-card__title,
	body.home .lpn-subbox__title,
	body.home .lpn-article__title {
		overflow-wrap: anywhere;
	}

	body.home .lpn-opening__image {
		height: auto !important;
		aspect-ratio: 16 / 9;
	}

	body.home .lpn-week-grid,
	body.home .lpn-breath__grid,
	body.home .lpn-social__box,
	body.home .lpn-transit__box {
		gap: 16px !important;
	}

	body.home .lpn-card,
	body.home .lpn-subbox,
	body.home .lpn-breath__intro,
	body.home .lpn-breath__post,
	body.home .lpn-article {
		min-height: 0 !important;
	}

	body.home .lpn-word-build,
	body.home .lpn-echo-rupture__viewport {
		max-width: 100vw !important;
		overflow: hidden !important;
	}
}

@media (max-width: 640px) {
	body.home .lpn-page .lpn-wrap {
		padding-right: 14px !important;
		padding-left: 14px !important;
	}

	body.home .lpn-hero {
		padding-top: 28px !important;
	}

	body.home .lpn-title {
		font-size: clamp(3rem, 16vw, 4.1rem) !important;
	}

	body.home .lpn-cta-group {
		align-items: stretch !important;
	}

	body.home .lpn-cta-group .lpn-cta {
		width: 100% !important;
		justify-content: center !important;
		text-align: center !important;
	}

	body.home .lpn-hero-stage {
		min-height: 500px !important;
		padding: 12px !important;
	}

	body.home .lpn-hero-stage__panel {
		padding: 20px 16px 18px !important;
	}

	body.home .lpn-orientation__path {
		grid-template-columns: 68px minmax(0, 1fr) !important;
		gap: 8px !important;
	}

	body.home .lpn-card,
	body.home .lpn-subbox,
	body.home .lpn-breath__intro,
	body.home .lpn-breath__post,
	body.home .lpn-article {
		padding: 20px 18px !important;
	}
}

/* --------------------------------------------------
   STANZE / ARCHIVI DI CATEGORIA
-------------------------------------------------- */

@media (max-width: 900px) {
	.lpn-category-page {
		min-width: 0 !important;
	}

	.lpn-category-page .lpn-wrap {
		width: 100% !important;
		max-width: 100% !important;
		padding-right: 18px !important;
		padding-left: 18px !important;
	}

	.lpn-category-page .lpn-page-sideword {
		display: none !important;
	}

	.lpn-category-page .lpn-hero__grid,
	.lpn-category-page .lpn-intro,
	.lpn-category-page .lpn-featured,
	.lpn-category-page .lpn-close__layout {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	.lpn-category-page .lpn-hero__grid > *,
	.lpn-category-page .lpn-intro > *,
	.lpn-category-page .lpn-featured > *,
	.lpn-category-page .lpn-close__layout > * {
		min-width: 0 !important;
		max-width: 100% !important;
	}

	.lpn-category-page .lpn-title {
		max-width: 10ch !important;
		font-size: clamp(3rem, 13vw, 4.8rem) !important;
		line-height: .92 !important;
		letter-spacing: -.07em !important;
		overflow-wrap: anywhere;
	}

	.lpn-category-page .lpn-hero__media,
	.lpn-category-page .lpn-figure--hero-main,
	.lpn-category-page .lpn-intro__figure,
	.lpn-category-page .lpn-close__figure {
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
		margin-left: 0 !important;
		aspect-ratio: 16 / 10;
	}

	.lpn-category-page .lpn-featured {
		min-height: 0 !important;
	}

	.lpn-category-page .lpn-featured__media {
		height: auto !important;
		min-height: 0 !important;
		aspect-ratio: 16 / 9;
	}

	.lpn-category-page .lpn-featured__content {
		padding: 26px 22px !important;
		min-height: 0 !important;
	}

	.lpn-category-page .lpn-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.lpn-category-page .lpn-grid > * {
		min-width: 0 !important;
	}

	.lpn-category-page .lpn-section {
		padding-top: 52px !important;
		padding-bottom: 52px !important;
	}

	.lpn-category-page .lpn-band__inner,
	.lpn-category-page .lpn-close__panel {
		min-height: 0 !important;
	}

	.lpn-category-page .lpn-actions {
		flex-wrap: wrap !important;
	}
}

@media (max-width: 640px) {
	.lpn-category-page .lpn-wrap {
		padding-right: 14px !important;
		padding-left: 14px !important;
	}

	.lpn-category-page .lpn-hero {
		padding-top: 28px !important;
		padding-bottom: 32px !important;
	}

	.lpn-category-page .lpn-title {
		font-size: clamp(2.7rem, 14vw, 3.8rem) !important;
	}

	.lpn-category-page .lpn-grid {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	.lpn-category-page .lpn-intro__text,
	.lpn-category-page .lpn-featured__content,
	.lpn-category-page .lpn-close__panel {
		padding: 22px 18px !important;
		min-height: 0 !important;
	}

	.lpn-category-page .lpn-card__content {
		min-height: 0 !important;
	}

	.lpn-category-page .lpn-btn {
		width: 100% !important;
		justify-content: center !important;
		text-align: center !important;
	}
}

/* --------------------------------------------------
   RISONANZE / ARCHIVI TAG
-------------------------------------------------- */

@media (max-width: 900px) {
	.lpn-tag-page {
		min-width: 0 !important;
	}

	.lpn-tag-page .lpn-wrap {
		width: 100% !important;
		max-width: 100% !important;
		padding-right: 18px !important;
		padding-left: 18px !important;
	}

	.lpn-tag-page .lpn-hero__grid,
	.lpn-tag-page .lpn-featured {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	.lpn-tag-page .lpn-hero__grid > *,
	.lpn-tag-page .lpn-featured > * {
		min-width: 0 !important;
		max-width: 100% !important;
	}

	.lpn-tag-page .lpn-title {
		max-width: 11ch !important;
		font-size: clamp(3rem, 13vw, 4.6rem) !important;
		line-height: .94 !important;
		letter-spacing: -.065em !important;
		overflow-wrap: anywhere;
	}

	.lpn-tag-page .lpn-hero__media {
		min-height: 0 !important;
	}

	.lpn-tag-page .lpn-figure--hero {
		position: relative !important;
		top: auto !important;
		right: auto !important;
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
		aspect-ratio: 1 / 1;
	}

	.lpn-tag-page .lpn-featured {
		min-height: 0 !important;
	}

	.lpn-tag-page .lpn-featured__media {
		height: auto !important;
		min-height: 0 !important;
		aspect-ratio: 16 / 9;
	}

	.lpn-tag-page .lpn-featured__content {
		padding: 26px 22px !important;
		min-height: 0 !important;
	}

	.lpn-tag-page .lpn-grid {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	.lpn-tag-page .lpn-grid > * {
		min-width: 0 !important;
	}

	.lpn-tag-page .lpn-section {
		padding-top: 50px !important;
		padding-bottom: 50px !important;
	}

	.lpn-tag-page .lpn-actions {
		flex-wrap: wrap !important;
	}
}

@media (max-width: 640px) {
	.lpn-tag-page .lpn-wrap {
		padding-right: 14px !important;
		padding-left: 14px !important;
	}

	.lpn-tag-page .lpn-hero {
		padding-top: 28px !important;
		padding-bottom: 20px !important;
	}

	.lpn-tag-page .lpn-title {
		font-size: clamp(2.7rem, 14vw, 3.8rem) !important;
	}

	.lpn-tag-page .lpn-panel,
	.lpn-tag-page .lpn-featured__content,
	.lpn-tag-page .lpn-card__content {
		padding: 22px 18px !important;
		min-height: 0 !important;
	}

	.lpn-tag-page .lpn-btn {
		width: 100% !important;
		justify-content: center !important;
		text-align: center !important;
	}
}


/* --------------------------------------------------
   OFFICINA / SCRIVERE PER RESPIRARE
-------------------------------------------------- */

@media (max-width: 900px) {
	.spr-page,
	.spr-page .spr-wrap {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
	}

	.spr-page .spr-wrap {
		padding-right: 18px !important;
		padding-left: 18px !important;
	}

	.spr-page .spr-hero__grid,
	.spr-page .spr-intro__grid,
	.spr-page .spr-posts__head,
	.spr-page .spr-grid,
	.spr-page .spr-close__grid {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	.spr-page .spr-hero__grid > *,
	.spr-page .spr-intro__grid > *,
	.spr-page .spr-posts__head > *,
	.spr-page .spr-grid > *,
	.spr-page .spr-close__grid > * {
		min-width: 0 !important;
		max-width: 100% !important;
	}

	.spr-page .spr-title {
		font-size: clamp(3rem, 13vw, 4.6rem) !important;
		overflow-wrap: anywhere;
	}

	.spr-page .spr-hero__panel {
		min-height: 0 !important;
	}

	.spr-page .spr-intro__visual,
	.spr-page .spr-close__visual {
		min-height: 280px !important;
	}

	.spr-page .spr-grid__item {
		min-height: 0 !important;
	}
}

@media (max-width: 640px) {
	.spr-page .spr-wrap {
		padding-right: 14px !important;
		padding-left: 14px !important;
	}

	.spr-page .spr-title {
		font-size: clamp(2.7rem, 14vw, 3.8rem) !important;
	}

	.spr-page .spr-hero__panel,
	.spr-page .spr-intro__content,
	.spr-page .spr-grid__content,
	.spr-page .spr-close__content {
		padding-right: 18px !important;
		padding-left: 18px !important;
	}
}

/* --------------------------------------------------
   PAGINA AUTORE
-------------------------------------------------- */

@media (max-width: 900px) {
	.lpn-about-page,
	.lpn-about-page .lpn-wrap {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
	}

	.lpn-about-page .lpn-wrap {
		padding-right: 18px !important;
		padding-left: 18px !important;
	}

	.lpn-about-page .lpn-about-hero__grid,
	.lpn-about-page .lpn-manifesto__layout,
	.lpn-about-page .lpn-path__layout,
	.lpn-about-page .lpn-path__grid,
	.lpn-about-page .lpn-double__layout,
	.lpn-about-page .lpn-list,
	.lpn-about-page .lpn-close__layout {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	.lpn-about-page .lpn-about-hero__grid > *,
	.lpn-about-page .lpn-manifesto__layout > *,
	.lpn-about-page .lpn-path__layout > *,
	.lpn-about-page .lpn-path__grid > *,
	.lpn-about-page .lpn-double__layout > *,
	.lpn-about-page .lpn-list > *,
	.lpn-about-page .lpn-close__layout > * {
		min-width: 0 !important;
		max-width: 100% !important;
	}

	.lpn-about-page .lpn-title {
		font-size: clamp(3rem, 13vw, 4.6rem) !important;
		overflow-wrap: anywhere;
	}

	.lpn-about-page .lpn-about-hero__media,
	.lpn-about-page .lpn-visual__figure,
	.lpn-about-page .lpn-double__figure,
	.lpn-about-page .lpn-close__figure {
		width: 100% !important;
		height: auto !important;
		min-height: 280px !important;
		aspect-ratio: 16 / 10;
	}
}

@media (max-width: 640px) {
	.lpn-about-page .lpn-wrap {
		padding-right: 14px !important;
		padding-left: 14px !important;
	}

	.lpn-about-page .lpn-title {
		font-size: clamp(2.7rem, 14vw, 3.8rem) !important;
	}

	.lpn-about-page .lpn-path__grid,
	.lpn-about-page .lpn-list {
		grid-template-columns: minmax(0, 1fr) !important;
	}
}

/* --------------------------------------------------
   BIBLIOTECA / RACCONTI LUNGHI
-------------------------------------------------- */

@media (max-width: 900px) {
	body.page-template-page-racconti-lunghi .lpn-page .lpn-wrap {
		width: 100% !important;
		max-width: 100% !important;
		padding-right: 18px !important;
		padding-left: 18px !important;
	}

	body.page-template-page-racconti-lunghi .lpn-hero__grid,
	body.page-template-page-racconti-lunghi .lpn-intro__layout,
	body.page-template-page-racconti-lunghi .lpn-featured,
	body.page-template-page-racconti-lunghi .lpn-mid__layout,
	body.page-template-page-racconti-lunghi .lpn-archive-grid,
	body.page-template-page-racconti-lunghi .lpn-close__layout {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	body.page-template-page-racconti-lunghi .lpn-hero__grid > *,
	body.page-template-page-racconti-lunghi .lpn-intro__layout > *,
	body.page-template-page-racconti-lunghi .lpn-featured > *,
	body.page-template-page-racconti-lunghi .lpn-mid__layout > *,
	body.page-template-page-racconti-lunghi .lpn-archive-grid > *,
	body.page-template-page-racconti-lunghi .lpn-close__layout > * {
		min-width: 0 !important;
		max-width: 100% !important;
	}

	body.page-template-page-racconti-lunghi .lpn-title {
		font-size: clamp(3rem, 13vw, 4.6rem) !important;
		overflow-wrap: anywhere;
	}

	body.page-template-page-racconti-lunghi .lpn-hero__media,
	body.page-template-page-racconti-lunghi .lpn-hero__media--archive {
		min-height: 0 !important;
	}

	body.page-template-page-racconti-lunghi .lpn-intro__figure,
	body.page-template-page-racconti-lunghi .lpn-close__figure {
		width: 100% !important;
		height: auto !important;
		min-height: 240px !important;
		transform: none !important;
		aspect-ratio: 16 / 10;
	}

	body.page-template-page-racconti-lunghi .lpn-featured {
		min-height: 0 !important;
	}
}

@media (max-width: 640px) {
	body.page-template-page-racconti-lunghi .lpn-page .lpn-wrap {
		padding-right: 14px !important;
		padding-left: 14px !important;
	}

	body.page-template-page-racconti-lunghi .lpn-title {
		font-size: clamp(2.7rem, 14vw, 3.8rem) !important;
	}
}

/* --------------------------------------------------
   VOCI IN TRANSITO
-------------------------------------------------- */

@media (max-width: 900px) {
	.lpn-voci-page,
	.lpn-voci-page .lpn-wrap {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
	}

	.lpn-voci-page .lpn-wrap {
		padding-right: 18px !important;
		padding-left: 18px !important;
	}

	.lpn-voci-page__sideword {
		display: none !important;
	}

	.lpn-voci-page .lpn-hero__grid,
	.lpn-voci-page .lpn-featured,
	.lpn-voci-page .lpn-featured--rete,
	.lpn-voci-page .lpn-grid,
	.lpn-voci-page .lpn-close__layout {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	.lpn-voci-page .lpn-hero__grid > *,
	.lpn-voci-page .lpn-featured > *,
	.lpn-voci-page .lpn-grid > *,
	.lpn-voci-page .lpn-close__layout > * {
		min-width: 0 !important;
		max-width: 100% !important;
	}

	.lpn-voci-page .lpn-title {
		font-size: clamp(3rem, 13vw, 4.6rem) !important;
		overflow-wrap: anywhere;
	}

	.lpn-voci-page .lpn-hero__media {
		min-height: 0 !important;
	}

	.lpn-voci-page .lpn-figure--hero-main {
		position: relative !important;
		top: auto !important;
		right: auto !important;
		width: 100% !important;
		height: auto !important;
		aspect-ratio: 16 / 10;
	}

	.lpn-voci-page .lpn-hero__note,
	.lpn-voci-page .lpn-transit-note {
		position: relative !important;
		top: auto !important;
		right: auto !important;
		bottom: auto !important;
		left: auto !important;
		width: 100% !important;
		margin-top: 16px !important;
	}

	.lpn-voci-page .lpn-featured {
		min-height: 0 !important;
	}

	.lpn-voci-page .lpn-featured__media {
		height: auto !important;
		min-height: 0 !important;
		aspect-ratio: 16 / 9;
	}

	.lpn-voci-page .lpn-close__figure {
		width: 100% !important;
		height: auto !important;
		aspect-ratio: 16 / 10;
	}
}

@media (max-width: 640px) {
	.lpn-voci-page .lpn-wrap {
		padding-right: 14px !important;
		padding-left: 14px !important;
	}

	.lpn-voci-page .lpn-title {
		font-size: clamp(2.7rem, 14vw, 3.8rem) !important;
	}
}
