/**
 * Newsletter block styles.
 * Matches Figma Newsletter Section (node 823:11722 / 500:1613).
 */

.newsletter {
	box-sizing: border-box;
	isolation: isolate;
	overflow: hidden;
	padding: 40px 40px 10px;
	position: relative;
	width: 100%;
}

/* Defaults when no block color support classes are set. */
.newsletter:not(.has-background) {
	background-color: var(--wp--preset--color--butter-yellow, #f5e29e);
}

.newsletter:not(.has-text-color) {
	color: var(--wp--preset--color--coffee, #3c1f10);
}

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

.newsletter__inner {
	align-items: stretch;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	gap: 3px;
	margin-left: auto;
	margin-right: auto;
	max-width: 1440px;
	position: relative;
	width: 100%;
	z-index: 1;
}

@media (min-width: 64rem) {
	.newsletter__inner {
		align-items: center;
		flex-direction: row;
		gap: 23px;
	}
}

/* InnerBlocks participate in the parent flex layout. */
.newsletter__inner > .block-editor-inner-blocks,
.newsletter .block-editor-inner-blocks > .block-editor-block-list__layout {
	display: contents;
}

/* -------------------------------------------------------------------------
   Header group — Figma node 500:1315 (title + copy, 3px gap)
   ------------------------------------------------------------------------- */

.newsletter__header,
.newsletter .wp-block-group.newsletter__header {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	gap: 3px !important;
	margin: 0;
	min-width: 0;
	width: 100%;
}

.newsletter__header.is-layout-flex,
.newsletter .wp-block-group.newsletter__header.is-layout-flex {
	--wp--style--block-gap: 3px;
}

/* Legacy: heading + copy without header group — stack in one column cell. */
@media (min-width: 64rem) {
	.newsletter__inner:not(:has(.newsletter__header)) {
		align-items: center;
		display: grid;
		column-gap: 23px;
		grid-template-columns: minmax(0, 1fr) auto;
		grid-template-rows: auto;
	}

	.newsletter__inner:not(:has(.newsletter__header)) > .newsletter__heading,
	.newsletter__inner:not(:has(.newsletter__header)) > .wp-block-heading.newsletter__heading,
	.newsletter__inner:not(:has(.newsletter__header)) > .newsletter__copy,
	.newsletter__inner:not(:has(.newsletter__header)) > .wp-block-paragraph.newsletter__copy {
		grid-column: 1;
		grid-row: 1;
	}

	.newsletter__inner:not(:has(.newsletter__header)) > .newsletter__heading,
	.newsletter__inner:not(:has(.newsletter__header)) > .wp-block-heading.newsletter__heading {
		align-self: start;
	}

	.newsletter__inner:not(:has(.newsletter__header)) > .newsletter__copy,
	.newsletter__inner:not(:has(.newsletter__header)) > .wp-block-paragraph.newsletter__copy {
		align-self: start;
		margin-top: calc(1.1 * var(--wp--preset--font-size--h-1, 4rem) + 3px) !important;
	}

	.newsletter__inner:not(:has(.newsletter__header)) > .newsletter__embed,
	.newsletter__inner:not(:has(.newsletter__header)) > .wp-block-group.newsletter__embed {
		grid-column: 2;
		grid-row: 1;
	}
}

/* -------------------------------------------------------------------------
   Title + copy
   ------------------------------------------------------------------------- */

.newsletter__heading,
.newsletter h2.newsletter__heading,
.newsletter .wp-block-heading.newsletter__heading,
.newsletter__header .newsletter__heading,
.newsletter__header .wp-block-heading.newsletter__heading,
.editor-styles-wrapper .newsletter h2.newsletter__heading,
.editor-styles-wrapper .newsletter .wp-block-heading.newsletter__heading {
	color: inherit;
	font-family: var(--wp--preset--font-family--pp-neue-montreal, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
	font-size: var(--wp--preset--font-size--h-1, 4rem);
	font-weight: 400;
	letter-spacing: -0.02em;
	line-height: 1.1;
	margin: 0 !important;
	margin-block: 0 !important;
	padding: 0;
	text-transform: capitalize;
}

.newsletter__copy,
.newsletter p.newsletter__copy,
.newsletter .wp-block-paragraph.newsletter__copy,
.newsletter__header .newsletter__copy,
.newsletter__header .wp-block-paragraph.newsletter__copy,
.editor-styles-wrapper .newsletter p.newsletter__copy,
.editor-styles-wrapper .newsletter .wp-block-paragraph.newsletter__copy {
	color: inherit;
	font-family: var(--wp--preset--font-family--pp-neue-montreal, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
	font-size: var(--wp--preset--font-size--paragraph-m, 1rem);
	font-weight: 400;
	letter-spacing: 0.02em;
	line-height: 1.4;
	margin: 0 !important;
	margin-block: 0 !important;
	padding: 0;
}

/* -------------------------------------------------------------------------
   Substack embed slot — height must not affect header stack
   ------------------------------------------------------------------------- */

.newsletter__embed,
.newsletter .wp-block-group.newsletter__embed {
	align-items: flex-start;
	align-self: stretch;
	display: flex;
	flex: 0 0 auto;
	justify-content: flex-start;
	margin: 1.5rem 0 0;
	max-width: 100%;
	min-width: 0;
	width: 100%;
}

@media (min-width: 64rem) {
	.newsletter__embed,
	.newsletter .wp-block-group.newsletter__embed {
		align-items: center;
		align-self: center;
		justify-content: center;
		margin-top: 0;
		width: auto;
	}
}

.newsletter__embed .wp-block-html,
.newsletter__embed iframe,
.newsletter__embed > * {
	max-width: 100%;
}

/* -------------------------------------------------------------------------
   Substack subscribe form — Figma Email Field + Subscribe (500:1318)
   ------------------------------------------------------------------------- */

.newsletter__embed form,
.newsletter__embed .substack-widget form,
.newsletter__embed .substack-widget-embed form {
	align-items: stretch;
	display: flex;
	margin: 0;
	max-width: 100%;
	width: 100%;
}

.newsletter__embed input[type="email"],
.newsletter__embed input[type="text"],
.newsletter__embed .substack-widget input[type="email"] {
	-webkit-appearance: none;
	appearance: none;
	background: #fff;
	border: 1px solid var(--wp--preset--color--coffee, #3c1f10);
	border-radius: 5px 0 0 5px;
	box-shadow: none;
	box-sizing: border-box;
	color: var(--wp--preset--color--coffee, #3c1f10);
	flex: 0 1 auto;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-size: 15px;
	font-weight: 400;
	letter-spacing: 0.15px;
	line-height: normal;
	margin: 0;
	min-height: 0;
	min-width: 0;
	padding: 16px 50px 16px 16px;
	width: auto;
}

.newsletter__embed input[type="email"]:focus,
.newsletter__embed input[type="text"]:focus,
.newsletter__embed .substack-widget input[type="email"]:focus {
	border-color: var(--wp--preset--color--coffee, #3c1f10);
	outline: 2px solid var(--wp--preset--color--coffee, #3c1f10);
	outline-offset: 0;
}

.newsletter__embed input[type="email"]::placeholder,
.newsletter__embed input[type="text"]::placeholder,
.newsletter__embed .substack-widget input[type="email"]::placeholder {
	color: var(--wp--preset--color--coffee, #3c1f10);
	opacity: 0.75;
}

.newsletter__embed button,
.newsletter__embed input[type="submit"],
.newsletter__embed .substack-widget button,
.newsletter__embed .substack-widget input[type="submit"] {
	-webkit-appearance: none;
	appearance: none;
	background: var(--wp--preset--color--coffee, #3c1f10);
	border: 1px solid var(--wp--preset--color--coffee, #3c1f10);
	border-radius: 0 5px 5px 0;
	box-shadow: none;
	box-sizing: border-box;
	color: #fff;
	cursor: pointer;
	flex: 0 0 auto;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.15px;
	line-height: normal;
	margin: 0;
	padding: 16px;
	white-space: nowrap;
}

.newsletter__embed button:hover,
.newsletter__embed button:focus,
.newsletter__embed input[type="submit"]:hover,
.newsletter__embed input[type="submit"]:focus,
.newsletter__embed .substack-widget button:hover,
.newsletter__embed .substack-widget button:focus {
	opacity: 0.92;
}

.newsletter__embed iframe {
	border: 0;
	display: block;
	min-height: 52px;
	width: 100%;
}

/* Mobile — Figma Newsletter Section (node 823:11745) */
@media (max-width: 48rem) {
	.newsletter {
		padding: 20px;
	}

	.newsletter__inner {
		align-items: stretch;
		flex-direction: column;
		gap: 10px;
	}

	.newsletter__header,
	.newsletter .wp-block-group.newsletter__header {
		gap: 3px !important;
		width: 100%;
	}

	.newsletter__heading,
	.newsletter h2.newsletter__heading,
	.newsletter .wp-block-heading.newsletter__heading,
	.newsletter__header .newsletter__heading,
	.newsletter__header .wp-block-heading.newsletter__heading,
	.newsletter .newsletter__heading.has-h-1-font-size,
	.editor-styles-wrapper .newsletter h2.newsletter__heading,
	.editor-styles-wrapper .newsletter .wp-block-heading.newsletter__heading {
		font-size: 48px !important;
		letter-spacing: -0.02em;
		line-height: 1.1;
		text-transform: capitalize;
		white-space: nowrap;
	}

	.newsletter__copy,
	.newsletter p.newsletter__copy,
	.newsletter .wp-block-paragraph.newsletter__copy,
	.newsletter__header .newsletter__copy,
	.newsletter__header .wp-block-paragraph.newsletter__copy,
	.newsletter p.newsletter__copy.has-paragraph-m-font-size,
	.newsletter .wp-block-paragraph.newsletter__copy.has-paragraph-m-font-size,
	.editor-styles-wrapper .newsletter p.newsletter__copy,
	.editor-styles-wrapper .newsletter .wp-block-paragraph.newsletter__copy {
		font-size: 16px !important;
		letter-spacing: 0.02em;
		line-height: 1.4;
		width: 100%;
	}

	.newsletter__embed,
	.newsletter .wp-block-group.newsletter__embed {
		margin-top: 0;
		width: 100%;
	}

	.newsletter__embed form,
	.newsletter__embed .substack-widget form,
	.newsletter__embed .substack-widget-embed form {
		width: 100%;
	}

	.newsletter__embed input[type="email"],
	.newsletter__embed input[type="text"],
	.newsletter__embed .substack-widget input[type="email"] {
		flex: 1 1 auto;
		min-width: 0;
		width: 100%;
	}
}

/* -------------------------------------------------------------------------
   Sidebar variant — compact tomato card (Figma 823:11875 / 682:10897)
   ------------------------------------------------------------------------- */

.single-layout__sidebar .newsletter {
	border: 1px solid var(--wp--preset--color--coffee, #3c1f10);
	box-sizing: border-box;
	padding: 10px;
	width: 100%;
}

.single-layout__sidebar .newsletter:not(.has-background) {
	background-color: var(--wp--preset--color--tomato, #f15b22);
}

.single-layout__sidebar .newsletter__inner {
	align-items: stretch;
	flex-direction: column;
	gap: 10px;
	justify-content: center;
	margin: 0;
	max-width: none;
}

.single-layout__sidebar .newsletter__header,
.single-layout__sidebar .newsletter .wp-block-group.newsletter__header {
	align-items: flex-start;
	gap: 3px !important;
	width: 100%;
}

.single-layout__sidebar .newsletter__heading,
.single-layout__sidebar .newsletter h2.newsletter__heading,
.single-layout__sidebar .newsletter .wp-block-heading.newsletter__heading,
.single-layout__sidebar .newsletter__header .newsletter__heading,
.single-layout__sidebar .newsletter__header .wp-block-heading.newsletter__heading {
	font-size: 36px;
	letter-spacing: -0.36px;
	line-height: 1.1;
	text-transform: none;
	white-space: nowrap;
}

.single-layout__sidebar .newsletter__copy,
.single-layout__sidebar .newsletter p.newsletter__copy,
.single-layout__sidebar .newsletter .wp-block-paragraph.newsletter__copy,
.single-layout__sidebar .newsletter__header .newsletter__copy,
.single-layout__sidebar .newsletter__header .wp-block-paragraph.newsletter__copy {
	font-size: 16px;
	letter-spacing: 0.32px;
	line-height: 1.4;
	width: 100%;
}

.single-layout__sidebar .newsletter__embed,
.single-layout__sidebar .newsletter .wp-block-group.newsletter__embed {
	align-self: stretch;
	justify-content: flex-start;
	margin: 0;
	width: 100%;
}

.single-layout__sidebar .newsletter__embed input[type="email"],
.single-layout__sidebar .newsletter__embed input[type="text"],
.single-layout__sidebar .newsletter__embed .substack-widget input[type="email"] {
	flex: 1 1 auto;
	width: 100%;
}

/* Legacy: no header group — stack heading + copy in sidebar */
@media (min-width: 64rem) {
	.single-layout__sidebar .newsletter__inner:not(:has(.newsletter__header)) {
		display: flex;
		flex-direction: column;
		gap: 10px;
	}

	.single-layout__sidebar .newsletter__inner:not(:has(.newsletter__header)) > .newsletter__heading,
	.single-layout__sidebar .newsletter__inner:not(:has(.newsletter__header)) > .wp-block-heading.newsletter__heading,
	.single-layout__sidebar .newsletter__inner:not(:has(.newsletter__header)) > .newsletter__copy,
	.single-layout__sidebar .newsletter__inner:not(:has(.newsletter__header)) > .wp-block-paragraph.newsletter__copy,
	.single-layout__sidebar .newsletter__inner:not(:has(.newsletter__header)) > .newsletter__embed,
	.single-layout__sidebar .newsletter__inner:not(:has(.newsletter__header)) > .wp-block-group.newsletter__embed {
		grid-column: auto;
		grid-row: auto;
		margin-top: 0 !important;
	}
}
