/**
 * Generic WordPress pages (About, Contact, etc.).
 * Scoped to body.pooyatrans-generic-page — does not change Blog / WC / specialty pages.
 */

.pooyatrans-generic-page .pooyatrans-page {
	width: 100%;
	min-width: 0;
	padding-block: clamp(48px, 7vw, 96px);
	overflow-x: clip;
}

.pooyatrans-generic-page .pooyatrans-page__container {
	width: 100%;
	max-width: var(--container-max, 1200px);
	margin-inline: auto;
	padding-inline: max(24px, var(--container-gutter, 24px));
	box-sizing: border-box;
}

@media (max-width: 560px) {
	.pooyatrans-generic-page .pooyatrans-page__container.container,
	.pooyatrans-generic-page .pooyatrans-page__container {
		padding-inline: max(20px, var(--container-gutter-sm, 14px));
	}
}

.pooyatrans-generic-page .pooyatrans-page__content,
.pooyatrans-generic-page .pooyatrans-page__content.entry-content {
	width: 100%;
	max-width: none;
	min-width: 0;
	text-align: start;
}

.pooyatrans-generic-page .pooyatrans-page__content > *:first-child {
	margin-block-start: 0;
}

.pooyatrans-generic-page .pooyatrans-page__content > *:last-child {
	margin-block-end: 0;
}

/* Readable prose — direct children without wide/full alignment */
.pooyatrans-generic-page .pooyatrans-page__content > p:not(.alignwide):not(.alignfull),
.pooyatrans-generic-page .pooyatrans-page__content > h1:not(.alignwide):not(.alignfull),
.pooyatrans-generic-page .pooyatrans-page__content > h2:not(.alignwide):not(.alignfull),
.pooyatrans-generic-page .pooyatrans-page__content > h3:not(.alignwide):not(.alignfull),
.pooyatrans-generic-page .pooyatrans-page__content > h4:not(.alignwide):not(.alignfull),
.pooyatrans-generic-page .pooyatrans-page__content > h5:not(.alignwide):not(.alignfull),
.pooyatrans-generic-page .pooyatrans-page__content > h6:not(.alignwide):not(.alignfull),
.pooyatrans-generic-page .pooyatrans-page__content > ul:not(.alignwide):not(.alignfull),
.pooyatrans-generic-page .pooyatrans-page__content > ol:not(.alignwide):not(.alignfull),
.pooyatrans-generic-page .pooyatrans-page__content > blockquote:not(.alignwide):not(.alignfull),
.pooyatrans-generic-page .pooyatrans-page__content > pre:not(.alignwide):not(.alignfull) {
	max-inline-size: var(--container-narrow, 760px);
	margin-inline: auto;
}

/* Wide layout blocks — full container */
.pooyatrans-generic-page .pooyatrans-page__content > .wp-block-columns,
.pooyatrans-generic-page .pooyatrans-page__content > .wp-block-media-text,
.pooyatrans-generic-page .pooyatrans-page__content > .wp-block-gallery,
.pooyatrans-generic-page .pooyatrans-page__content > .wp-block-cover,
.pooyatrans-generic-page .pooyatrans-page__content > .wp-block-table,
.pooyatrans-generic-page .pooyatrans-page__content > .wp-block-image.alignwide,
.pooyatrans-generic-page .pooyatrans-page__content > .wp-block-embed,
.pooyatrans-generic-page .pooyatrans-page__content > .wp-block-video,
.pooyatrans-generic-page .pooyatrans-page__content > .woocommerce,
.pooyatrans-generic-page .pooyatrans-page__content > .wp-block-woocommerce-product-collection,
.pooyatrans-generic-page .pooyatrans-page__content > .wp-block-woocommerce-handpicked-products,
.pooyatrans-generic-page .pooyatrans-page__content > .wp-block-woocommerce-product-template,
.pooyatrans-generic-page .pooyatrans-page__content > .wp-block-group:not(.is-layout-constrained) {
	width: 100%;
	max-width: none;
	max-inline-size: none;
}

/* Constrained groups keep Gutenberg's own layout */
.pooyatrans-generic-page .pooyatrans-page__content > .wp-block-group.is-layout-constrained {
	width: 100%;
}

/* Simple forms — readable measure, centered in container */
.pooyatrans-generic-page .pooyatrans-page__content > .fluentform,
.pooyatrans-generic-page .pooyatrans-page__content > .fluentform_wrapper,
.pooyatrans-generic-page .pooyatrans-page__content > .frm-fluent-form,
.pooyatrans-generic-page .pooyatrans-page__content > .ff-el-form-top,
.pooyatrans-generic-page .pooyatrans-page__content > .wpcf7,
.pooyatrans-generic-page .pooyatrans-page__content > .wp-block-buttons {
	max-inline-size: var(--container-narrow, 760px);
	width: 100%;
	margin-inline: auto;
}

.pooyatrans-generic-page .pooyatrans-page__content .fluentform input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="submit"]),
.pooyatrans-generic-page .pooyatrans-page__content .fluentform textarea,
.pooyatrans-generic-page .pooyatrans-page__content .fluentform select,
.pooyatrans-generic-page .pooyatrans-page__content .wpcf7 input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="submit"]),
.pooyatrans-generic-page .pooyatrans-page__content .wpcf7 textarea,
.pooyatrans-generic-page .pooyatrans-page__content .wpcf7 select {
	max-width: 100%;
	box-sizing: border-box;
}

.pooyatrans-generic-page .alignwide {
	width: min(100%, var(--container-max, 1200px));
	max-width: var(--container-max, 1200px);
	margin-inline: auto;
}

.pooyatrans-generic-page .alignfull {
	width: 100vw;
	max-width: 100vw;
	margin-inline: calc(50% - 50vw);
	box-sizing: border-box;
}

.pooyatrans-generic-page .alignfull > .wp-block-cover__inner-container,
.pooyatrans-generic-page .alignfull > .wp-block-group__inner-container,
.pooyatrans-generic-page .wp-block-cover.alignfull .wp-block-cover__inner-container {
	max-width: var(--container-max, 1200px);
	margin-inline: auto;
	padding-inline: max(20px, var(--container-gutter, 24px));
	box-sizing: border-box;
}

.pooyatrans-generic-page .pooyatrans-page__content img {
	max-width: 100%;
	height: auto;
}

.pooyatrans-generic-page .pooyatrans-page__content .wp-block-image:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright) img {
	width: auto;
	max-width: 100%;
}

.pooyatrans-generic-page .pooyatrans-page__content .aligncenter,
.pooyatrans-generic-page .pooyatrans-page__content .wp-block-image.aligncenter {
	margin-inline: auto;
	text-align: center;
}

.pooyatrans-generic-page .pooyatrans-page__content figure {
	max-width: 100%;
}

.pooyatrans-generic-page .pooyatrans-page__content figcaption {
	font-size: var(--font-size-xs, 0.75rem);
	line-height: var(--line-height-body, 1.7);
	color: var(--color-text-muted, #64757b);
	text-align: start;
}

.pooyatrans-generic-page .pooyatrans-page__content .wp-block-gallery {
	max-width: 100%;
}

.pooyatrans-generic-page .pooyatrans-page__content .wp-block-gallery img {
	width: 100%;
	height: auto;
	object-fit: contain;
}

.pooyatrans-generic-page .pooyatrans-page__content table {
	max-width: 100%;
}

.pooyatrans-generic-page .pooyatrans-page__content .wp-block-table,
.pooyatrans-generic-page .pooyatrans-page__content > table {
	display: block;
	width: 100%;
	overflow-x: auto;
}

.pooyatrans-generic-page .pooyatrans-page__content iframe,
.pooyatrans-generic-page .pooyatrans-page__content video,
.pooyatrans-generic-page .pooyatrans-page__content embed {
	max-width: 100%;
}

.pooyatrans-generic-page .pooyatrans-page__content .wp-block-embed__wrapper {
	max-width: 100%;
}

/* Preserve author-chosen alignment */
.pooyatrans-generic-page .pooyatrans-page__content .has-text-align-center {
	text-align: center;
}

.pooyatrans-generic-page .pooyatrans-page__content .has-text-align-left {
	text-align: left;
}

.pooyatrans-generic-page .pooyatrans-page__content .has-text-align-right {
	text-align: right;
}

.pooyatrans-generic-page .pooyatrans-page__edit {
	max-inline-size: var(--container-narrow, 760px);
	margin-inline: auto;
	margin-block-start: 2rem;
	font-size: var(--font-size-sm, 0.875rem);
	color: var(--color-text-muted, #64757b);
}

.pooyatrans-generic-page .pooyatrans-page__links {
	max-inline-size: var(--container-narrow, 760px);
	margin-inline: auto;
	margin-block-start: 2rem;
}

@media (max-width: 320px) {
	.pooyatrans-generic-page .pooyatrans-page,
	.pooyatrans-generic-page .pooyatrans-page__content,
	.pooyatrans-generic-page .pooyatrans-page__content img,
	.pooyatrans-generic-page .pooyatrans-page__content .wp-block-gallery,
	.pooyatrans-generic-page .pooyatrans-page__content .wp-block-columns {
		max-width: 100%;
	}
}
