/* Requisites Notes: compact Field folio, within the existing Olga page shell. */
.bt-editorial-hub-page .wp-block-post-content:has(.bt-requisite-note) { max-width: none; }
.bt-requisite-note {
	--note-ink: var(--wp--preset--color--contrast, #221e19);
	--note-accent: var(--wp--preset--color--accent, #7c4e36);
	--note-rule: color-mix(in srgb, var(--note-ink) 17%, transparent);
	--note-surface: color-mix(in srgb, var(--note-accent) 10%, var(--wp--preset--color--canvas, #f7f4ed));
	container: requisite-note / inline-size;
	inline-size: 100%;
	max-inline-size: 64rem !important;
	margin-inline: auto;
	font-family: var(--wp--preset--font-family--body);
	font-size: clamp(1rem, .97rem + .15vw, 1.08rem);
	line-height: 1.55;
	font-synthesis: none;
}
.bt-requisite-note :where(h1, h2, p, figure, ul) { margin: 0; }
.bt-requisite-note :where(ul) { padding: 0; list-style: none; }
.bt-requisite-note :where(img, svg) { display: block; max-inline-size: 100%; }
.bt-requisite-note :where(h1, h2) { font-weight: 400; text-wrap: balance; }
.bt-requisite-note p { text-wrap: pretty; }
.bt-requisite-note a:focus-visible { outline: 2px solid var(--note-accent); outline-offset: 4px; }
.bt-requisite-note .note-header {
	display: grid;
	gap: .85rem;
	padding-block-end: clamp(1.2rem, 1rem + .8vw, 1.8rem);
	border-block-end: 1px solid var(--note-ink);
}
.bt-requisite-note .breadcrumb,
.bt-requisite-note .eyebrow,
.bt-requisite-note .trip-fit,
.bt-requisite-note .gallery-nav,
.bt-requisite-note figcaption,
.bt-requisite-note .buy-link,
.bt-requisite-note .note-price__qualifier { font-family: var(--wp--preset--font-family--ui); }
.bt-requisite-note .breadcrumb { font-size: .7rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.bt-requisite-note .note-heading {
	display: grid;
	grid-template-columns: minmax(0, 1fr) clamp(4.5rem, 14cqi, 8.75rem);
	gap: clamp(.75rem, 3cqi, 2rem);
	align-items: center;
}
.bt-requisite-note .note-heading > div { display: grid; gap: .45rem; }
.bt-requisite-note .note-heading:not(:has(.manufacturer-logo)) { grid-template-columns: minmax(0, 1fr); }
.bt-requisite-note .eyebrow { color: var(--note-accent); font-size: .72rem; font-weight: 700; letter-spacing: .15em; text-transform: uppercase; }
.bt-requisite-note h1 { font-family: var(--wp--preset--font-family--display); font-size: clamp(2.7rem, 1.85rem + 3.1vw, 5.1rem); line-height: 1.1; letter-spacing: -.04em; }
.bt-requisite-note .manufacturer-logo { inline-size: 100%; block-size: auto; }
.bt-requisite-note .manufacturer-logo--symbol { inline-size: auto; block-size: clamp(2rem, 5cqi, 3.5rem); justify-self: end; }
.bt-requisite-note .manufacturer-logo--light { filter: brightness(0); }
.bt-requisite-note h1.note-title--detailed { font-size: clamp(2rem, 1.4rem + 2.5cqi, 3.75rem); }
.bt-requisite-note .trip-fit { display: flex; flex-wrap: wrap; gap: .55rem .9rem; font-size: .7rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
.bt-requisite-note .trip-fit li { display: inline-flex; align-items: center; gap: .25rem; }
.bt-requisite-note .trip-fit svg { inline-size: 1.25rem; block-size: 1.25rem; color: var(--note-accent); }
.bt-requisite-note .note-composition {
	display: grid;
	grid-template-columns: minmax(14rem, .55fr) minmax(0, 1.45fr);
	gap: clamp(1.5rem, 5cqi, 4.5rem);
	align-items: start;
	margin-block-start: clamp(1.2rem, 1rem + .8vw, 1.8rem);
}
.bt-requisite-note .note-gallery { display: block; min-inline-size: 0; }
.bt-requisite-note .gallery-track {
	display: grid;
	grid-auto-columns: 100%;
	grid-auto-flow: column;
	grid-template-rows: minmax(0, 1fr);
	block-size: clamp(22rem, 39cqi, 28rem);
	overflow-x: auto;
	scroll-snap-type: inline mandatory;
	overscroll-behavior-inline: contain;
	scrollbar-width: thin;
}
.bt-requisite-note .note-gallery figure { display: grid; grid-template-rows: minmax(0, 1fr); min-inline-size: 0; min-block-size: 0; margin: 0; scroll-snap-align: start; }
.bt-requisite-note .gallery-next { display: block; inline-size: 100%; block-size: 100%; min-inline-size: 0; min-block-size: 0; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; cursor: pointer; }
.bt-requisite-note .gallery-next:focus-visible { outline: 2px solid var(--note-accent); outline-offset: -3px; }
.bt-requisite-note .note-gallery img { inline-size: 100%; block-size: 100%; min-block-size: 0; object-fit: contain; }
.bt-requisite-note .note-gallery .packshot { padding: .75rem; }
.bt-requisite-note .gallery-nav { display: flex; flex-wrap: wrap; gap: .3rem; justify-content: flex-end; margin-block-start: .4rem; font-size: .7rem; font-weight: 700; }
.bt-requisite-note .gallery-nav a { display: grid; place-items: center; min-inline-size: 2.75rem; min-block-size: 2.75rem; border: 1px solid var(--note-rule); text-decoration: none; }
.bt-requisite-note .gallery-nav a[aria-current="true"] { border-color: var(--note-accent); color: var(--note-accent); }
.bt-requisite-note .note-copy { display: grid; min-inline-size: 0; }
.bt-requisite-note .note-section { display: grid; gap: .7rem; padding-block: 1rem; border-block-end: 1px solid var(--note-rule); }
.bt-requisite-note .note-section h2 { color: var(--note-accent); font-family: var(--wp--preset--font-family--body); font-size: clamp(1.22rem, 1.12rem + .4vw, 1.45rem); line-height: 1.25; letter-spacing: normal; }
.bt-requisite-note .note-section p { max-inline-size: 58ch; }
.bt-requisite-note .where-details { display: grid; flex: 1 1 10rem; min-inline-size: 0; gap: .7rem; }
.bt-requisite-note .where-details p + p { margin-block-start: .8em; }
.bt-requisite-note .note-section--where { display: flex; flex-wrap: wrap; align-items: flex-start; column-gap: clamp(1.2rem, 1rem + .8vw, 1.8rem); padding-inline: 1rem; background: var(--note-surface); }
.bt-requisite-note .note-price { display: grid; flex: 0 0 auto; align-content: start; justify-items: end; gap: .35rem; margin-inline-start: auto; color: var(--note-accent); font-size: clamp(2.5rem, 2rem + 2cqi, 3.75rem); line-height: 1; }
.bt-requisite-note .note-price__qualifier { font-size: .72rem; letter-spacing: .1em; line-height: 1.4; text-transform: uppercase; }
.bt-requisite-note .buy-link { font-size: .78rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
@container requisite-note (max-width: 52rem) {
	.bt-requisite-note .note-composition { grid-template-columns: minmax(13rem, .68fr) minmax(0, 1.32fr); gap: 1.5rem; }
}
@container requisite-note (max-width: 42rem) {
	.bt-requisite-note .note-composition { grid-template-columns: minmax(0, 1fr); }
	.bt-requisite-note .note-copy { border-block-start: 2px solid var(--note-ink); }
	.bt-requisite-note .gallery-track { block-size: 22rem; }
}
@container requisite-note (max-width: 30rem) {
	.bt-requisite-note h1 { font-size: clamp(2.45rem, 1.55rem + 8cqi, 3.7rem); }
}
