/**
 * El Enólogo — an editorial portrait built on the global visual system.
 */

body.bdf-oenologist {
	--bdf-oe-paper: #f8f4ec;
	--bdf-oe-cream: #eee7da;
	--bdf-oe-ink: #081a33;
	--bdf-oe-gold: #a67a32;
	--bdf-oe-gold-light: #d7b26e;
	--bdf-oe-line: rgba(8, 26, 51, .19);
	background: var(--bdf-oe-paper);
}

.bdf-oe-main {
	overflow: hidden;
	background: var(--bdf-oe-paper);
}

.bdf-oe-section {
	padding: clamp(100px, 11vw, 180px) max(6vw, calc((100vw - 1380px) / 2));
}

.bdf-oe-sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.bdf-oe-opening h2 {
	margin: 0;
	color: var(--bdf-oe-ink);
	font-family: var(--bdf-serif);
	font-size: clamp(54px, 6.2vw, 102px);
	font-weight: 350;
	letter-spacing: -.05em;
	line-height: .92;
}

/* Hero: the portrait interrupts an oversized typographic signature. */
.bdf-oe-hero {
	position: relative;
	isolation: isolate;
	height: clamp(760px, calc(100svh - var(--bdf-header-height)), 980px);
	min-height: 760px;
	overflow: hidden;
	color: var(--bdf-white);
	background: radial-gradient(circle at 65% 38%, rgba(166, 122, 50, .2), transparent 29%), linear-gradient(118deg, #06162a 0%, #0b2744 64%, #07182d 100%);
}

.bdf-oe-hero::after {
	position: absolute;
	z-index: 6;
	top: 0;
	bottom: 0;
	left: clamp(24px, 5vw, 86px);
	width: 1px;
	content: "";
	background: rgba(255, 255, 255, .2);
}

.bdf-oe-hero-lines {
	position: absolute;
	z-index: -1;
	inset: 0;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	pointer-events: none;
}

.bdf-oe-hero-lines i {
	border-right: 1px solid rgba(255, 255, 255, .055);
}

.bdf-oe-hero-heading {
	position: relative;
	z-index: 4;
	width: min(88vw, 1380px);
	height: 100%;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	padding: 0 0 4vh;
}

.bdf-oe-hero-heading .bdf-eyebrow {
	margin-bottom: 42px;
}

.bdf-oe-hero h1 {
	position: relative;
	z-index: 4;
	margin: 0;
	color: inherit;
	font-family: var(--bdf-serif);
	font-size: clamp(112px, 14.4vw, 238px);
	font-weight: 300;
	letter-spacing: -.075em;
	line-height: .66;
}

.bdf-oe-hero h1 span {
	display: block;
}

.bdf-oe-hero h1 span:last-child {
	margin-left: .64em;
}

.bdf-oe-hero-role {
	max-width: 280px;
	margin: 55px 0 0;
	padding-left: 30px;
	border-left: 1px solid var(--bdf-oe-gold-light);
	color: rgba(255, 255, 255, .7);
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .13em;
	line-height: 1.75;
	text-transform: uppercase;
}

.bdf-oe-hero-portrait {
	position: absolute;
	z-index: 3;
	top: 7%;
	right: clamp(9vw, 12vw, 210px);
	bottom: 0;
	width: min(39vw, 595px);
	margin: 0;
	overflow: hidden;
	background: #172131;
	clip-path: inset(0 0 0 0);
}

.bdf-oe-hero-portrait::after {
	position: absolute;
	inset: 0;
	content: "";
	background: linear-gradient(90deg, rgba(5, 18, 33, .32), transparent 29%), linear-gradient(0deg, rgba(5, 18, 33, .34), transparent 30%);
	pointer-events: none;
}

.bdf-oe-hero-portrait img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 52% 42%;
	filter: saturate(.72) contrast(1.08) sepia(.06);
	transform: scale(1.015);
}

.bdf-oe-hero-portrait figcaption {
	position: absolute;
	z-index: 2;
	right: 25px;
	bottom: 26px;
	color: rgba(255, 255, 255, .64);
	font-size: 8px;
	font-weight: 700;
	letter-spacing: .15em;
	text-transform: uppercase;
}

.bdf-oe-hero-intro {
	position: absolute;
	z-index: 5;
	right: max(4vw, 45px);
	top: 18%;
	width: 250px;
}

.bdf-oe-hero-intro p {
	margin: 0 0 17px;
	color: var(--bdf-white);
	font-family: var(--bdf-serif);
	font-size: clamp(21px, 1.8vw, 29px);
	font-weight: 300;
	line-height: 1.15;
}

.bdf-oe-hero-intro span {
	color: var(--bdf-oe-gold-light);
	font-size: 8px;
	font-weight: 700;
	letter-spacing: .13em;
	line-height: 1.7;
	text-transform: uppercase;
}

.bdf-oe-hero-mark {
	position: absolute;
	z-index: 0;
	right: -.06em;
	bottom: -.26em;
	color: rgba(255, 255, 255, .035);
	font-family: var(--bdf-serif);
	font-size: clamp(290px, 38vw, 640px);
	font-weight: 300;
	line-height: .8;
	pointer-events: none;
}

.bdf-oe-hero .bdf-scroll-cue {
	z-index: 8;
	left: clamp(23px, calc(5vw - 1px), 85px);
}

/* Opening: restraint before the data enters the narrative. */
.bdf-oe-opening {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(280px, .48fr);
	gap: clamp(70px, 11vw, 175px);
	align-items: end;
	background: linear-gradient(125deg, rgba(166, 122, 50, .055), transparent 36%), var(--bdf-oe-paper);
}

.bdf-oe-opening-copy > p:last-child {
	max-width: 610px;
	margin: 43px 0 0 clamp(25px, 6vw, 92px);
	padding-left: 30px;
	border-left: 1px solid var(--bdf-oe-line);
	color: #50534e;
	font-size: clamp(16px, 1.25vw, 19px);
	line-height: 1.82;
}

.bdf-oe-opening-note {
	padding-bottom: 8px;
}

.bdf-oe-opening-note > span {
	display: block;
	color: var(--bdf-oe-ink);
	font-family: var(--bdf-serif);
	font-size: clamp(26px, 2.5vw, 40px);
	line-height: 1.08;
}

.bdf-oe-opening-note i {
	display: block;
	width: 100%;
	height: 1px;
	margin: 31px 0 20px;
	background: var(--bdf-oe-gold);
}

.bdf-oe-opening-note small {
	display: block;
	color: #73746f;
	font-size: 9px;
	font-weight: 700;
	letter-spacing: .11em;
	line-height: 1.75;
	text-transform: uppercase;
}

/* Two facts, treated as typographic signatures rather than cards. */
.bdf-oe-signals {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	padding: 0 max(6vw, calc((100vw - 1380px) / 2));
	border-top: 1px solid var(--bdf-oe-line);
	border-bottom: 1px solid var(--bdf-oe-line);
	background: var(--bdf-oe-cream);
}

.bdf-oe-signal {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: clamp(28px, 4vw, 66px);
	align-items: center;
	min-height: 310px;
	padding: 55px clamp(30px, 5vw, 76px) 55px 0;
	border-right: 1px solid var(--bdf-oe-line);
}

.bdf-oe-signal + .bdf-oe-signal {
	padding-right: 0;
	padding-left: clamp(30px, 5vw, 76px);
	border-right: 0;
}

.bdf-oe-signal-number {
	display: flex;
	align-items: flex-start;
	margin: 0;
	color: var(--bdf-oe-ink);
	font-family: var(--bdf-serif);
	font-size: clamp(112px, 11vw, 184px);
	font-weight: 300;
	letter-spacing: -.075em;
	line-height: .66;
}

.bdf-oe-signal-number span {
	margin: -.05em -.02em 0 0;
	color: var(--bdf-oe-gold);
	font-size: .42em;
}

.bdf-oe-signal strong,
.bdf-oe-signal small {
	display: block;
}

.bdf-oe-signal strong {
	max-width: 210px;
	color: var(--bdf-oe-ink);
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .14em;
	line-height: 1.6;
	text-transform: uppercase;
}

.bdf-oe-signal small {
	max-width: 245px;
	margin-top: 14px;
	color: #6a6c67;
	font-size: 11px;
	line-height: 1.65;
}

/* Career. */
.bdf-oe-career {
	position: relative;
	min-height: 740px;
	display: grid;
	grid-template-columns: minmax(350px, .8fr) minmax(360px, .65fr) minmax(220px, .36fr);
	gap: clamp(45px, 7vw, 110px);
	align-items: center;
	background: linear-gradient(90deg, transparent 72%, rgba(166, 122, 50, .06) 72.05%, transparent 72.1%), var(--bdf-oe-paper);
}

.bdf-oe-career h2,
.bdf-oe-recognition h2,
.bdf-oe-origin h2,
.bdf-oe-territory h2,
.bdf-oe-alliance h2,
.bdf-oe-next h2 {
	margin: 0;
	font-family: var(--bdf-serif);
	font-size: clamp(53px, 5.8vw, 94px);
	font-weight: 350;
	letter-spacing: -.05em;
	line-height: .93;
}

.bdf-oe-career-copy {
	padding-left: clamp(26px, 4vw, 64px);
	border-left: 1px solid var(--bdf-oe-line);
}

.bdf-oe-career-copy p {
	margin: 0 0 20px;
	color: #52554f;
	font-size: clamp(14px, 1.05vw, 16px);
	line-height: 1.83;
}

.bdf-oe-career-copy .bdf-oe-career-emphasis {
	margin-top: 32px;
	color: var(--bdf-oe-ink);
	font-family: var(--bdf-serif);
	font-size: clamp(22px, 2vw, 31px);
	line-height: 1.3;
}

.bdf-oe-career-five {
	position: relative;
	justify-self: end;
	display: flex;
	flex-direction: column;
	align-items: center;
	color: var(--bdf-oe-gold);
}

.bdf-oe-career-five::before,
.bdf-oe-career-five::after {
	width: 1px;
	height: 80px;
	content: "";
	background: var(--bdf-oe-line);
}

.bdf-oe-career-five span {
	font-family: var(--bdf-serif);
	font-size: clamp(180px, 18vw, 300px);
	font-weight: 300;
	letter-spacing: -.1em;
	line-height: .8;
}

.bdf-oe-career-five small {
	margin: 15px 0 25px;
	font-size: 8px;
	font-weight: 800;
	letter-spacing: .19em;
	text-transform: uppercase;
}

/* Recognition: precision around the 100 claim is intentionally adjacent to the number. */
.bdf-oe-recognition {
	position: relative;
	isolation: isolate;
	display: grid;
	grid-template-columns: minmax(420px, .9fr) minmax(420px, 1.1fr);
	min-height: 820px;
	overflow: hidden;
	color: var(--bdf-white);
	background: radial-gradient(circle at 24% 50%, rgba(166, 122, 50, .24), transparent 30%), linear-gradient(120deg, #061629, #0b2846 66%, #07182c);
}

.bdf-oe-recognition-number {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 90px 5vw;
	border-right: 1px solid rgba(255, 255, 255, .12);
}

.bdf-oe-recognition-number span,
.bdf-oe-recognition-number small {
	color: var(--bdf-oe-gold-light);
	font-size: 9px;
	font-weight: 800;
	letter-spacing: .19em;
	text-transform: uppercase;
}

.bdf-oe-recognition-number strong {
	margin: 25px 0 17px;
	font-family: var(--bdf-serif);
	font-size: clamp(195px, 24vw, 390px);
	font-weight: 300;
	letter-spacing: -.09em;
	line-height: .62;
}

.bdf-oe-recognition-copy {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	padding: clamp(90px, 10vw, 165px) max(6vw, calc((100vw - 1380px) / 2)) clamp(90px, 10vw, 165px) clamp(60px, 8vw, 130px);
}

.bdf-oe-recognition-copy > p:not(.bdf-eyebrow) {
	max-width: 610px;
	margin: 31px 0 0;
	color: rgba(255, 255, 255, .7);
	font-size: 14px;
	line-height: 1.85;
}

.bdf-oe-recognition-copy > p:last-child {
	padding-top: 25px;
	border-top: 1px solid rgba(255, 255, 255, .16);
}

.bdf-oe-recognition-rule {
	position: absolute;
	z-index: -1;
	top: -14%;
	left: 48%;
	width: 1px;
	height: 135%;
	background: rgba(215, 178, 110, .43);
	transform: rotate(24deg);
}

/* Origin. */
.bdf-oe-origin {
	position: relative;
	display: grid;
	grid-template-columns: minmax(420px, 1.05fr) minmax(360px, .72fr);
	gap: clamp(70px, 10vw, 165px);
	align-items: center;
	background: var(--bdf-oe-cream);
}

.bdf-oe-origin-media {
	position: relative;
	z-index: 2;
	margin: 0;
	padding: 0 44px 52px 0;
}

.bdf-oe-origin-media::before {
	position: absolute;
	right: 0;
	bottom: 0;
	width: 65%;
	height: 68%;
	content: "";
	background: var(--bdf-oe-ink);
}

.bdf-oe-origin-media img {
	position: relative;
	z-index: 1;
	width: 100%;
	aspect-ratio: 4 / 5;
	object-fit: cover;
	object-position: 60% 50%;
	filter: saturate(.72) contrast(1.05) sepia(.04);
}

.bdf-oe-origin-media figcaption {
	position: absolute;
	z-index: 2;
	right: 23px;
	bottom: 20px;
	color: rgba(255, 255, 255, .63);
	font-size: 8px;
	font-weight: 700;
	letter-spacing: .13em;
	text-transform: uppercase;
}

.bdf-oe-origin-copy {
	position: relative;
	z-index: 2;
}

.bdf-oe-origin-copy > p:not(.bdf-eyebrow) {
	max-width: 540px;
	margin: 38px 0 0;
	color: #50534e;
	font-size: 15px;
	line-height: 1.9;
}

.bdf-oe-origin blockquote {
	max-width: 520px;
	margin: 52px 0 0 clamp(28px, 4vw, 68px);
	padding-left: 28px;
	border-left: 1px solid var(--bdf-oe-gold);
	color: var(--bdf-oe-ink);
	font-family: var(--bdf-serif);
	font-size: clamp(25px, 2.2vw, 36px);
	line-height: 1.25;
}

.bdf-oe-origin-word {
	position: absolute;
	right: -.06em;
	bottom: -.23em;
	color: rgba(8, 26, 51, .035);
	font-family: var(--bdf-serif);
	font-size: clamp(145px, 19vw, 320px);
	letter-spacing: -.06em;
	line-height: .8;
	pointer-events: none;
}

/* Territory. */
.bdf-oe-territory {
	position: relative;
	isolation: isolate;
	min-height: 850px;
	display: flex;
	align-items: center;
	overflow: hidden;
	color: var(--bdf-white);
	background: var(--bdf-oe-ink);
}

.bdf-oe-territory-image,
.bdf-oe-territory-shade {
	position: absolute;
	z-index: -2;
	inset: 0;
	width: 100%;
	height: 100%;
}

.bdf-oe-territory-image {
	object-fit: cover;
	object-position: 50% 50%;
	filter: saturate(.65) contrast(1.09) sepia(.07);
}

.bdf-oe-territory-shade {
	z-index: -1;
	background: linear-gradient(90deg, rgba(4, 15, 28, .93) 0%, rgba(4, 16, 30, .72) 43%, rgba(4, 16, 30, .13) 80%), linear-gradient(0deg, rgba(4, 16, 30, .83), transparent 58%);
}

.bdf-oe-territory-copy {
	width: min(88vw, 1380px);
	margin: 0 auto;
	padding-bottom: 120px;
}

.bdf-oe-territory-copy h2 {
	max-width: 780px;
}

.bdf-oe-territory-copy > p:not(.bdf-eyebrow) {
	max-width: 590px;
	margin: 38px 0 33px;
	color: rgba(255, 255, 255, .78);
	font-size: 15px;
	line-height: 1.84;
}

.bdf-oe-territory-path {
	position: absolute;
	right: 6vw;
	bottom: 0;
	left: 6vw;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	margin: 0;
	padding: 0;
	border-top: 1px solid rgba(255, 255, 255, .22);
	list-style: none;
}

.bdf-oe-territory-path li {
	position: relative;
	display: flex;
	align-items: baseline;
	gap: 18px;
	min-height: 110px;
	padding: 34px 25px;
	border-right: 1px solid rgba(255, 255, 255, .18);
	font-family: var(--bdf-serif);
	font-size: clamp(24px, 2.3vw, 37px);
}

.bdf-oe-territory-path li::after {
	position: absolute;
	right: -5px;
	top: 50%;
	width: 9px;
	height: 9px;
	border-top: 1px solid var(--bdf-oe-gold-light);
	border-right: 1px solid var(--bdf-oe-gold-light);
	content: "";
	transform: rotate(45deg);
}

.bdf-oe-territory-path li:last-child {
	border-right: 0;
}

.bdf-oe-territory-path li:last-child::after {
	display: none;
}

.bdf-oe-territory-path span {
	color: var(--bdf-oe-gold-light);
	font-family: var(--bdf-sans);
	font-size: 8px;
	font-weight: 700;
	letter-spacing: .12em;
}

/* Philosophy and principles. */
.bdf-oe-philosophy {
	color: var(--bdf-white);
	background: linear-gradient(135deg, #061528, #0a2541 70%, #07182d);
}

.bdf-oe-philosophy-inner {
	position: relative;
	width: min(88vw, 1380px);
	margin: 0 auto;
	padding: clamp(120px, 13vw, 215px) 0 clamp(110px, 12vw, 190px);
}

.bdf-oe-philosophy blockquote {
	position: relative;
	max-width: 1160px;
	margin: 52px 0 0;
}

.bdf-oe-philosophy blockquote > span {
	position: absolute;
	top: -.45em;
	left: -.17em;
	color: var(--bdf-oe-gold);
	font-family: var(--bdf-serif);
	font-size: 150px;
	line-height: 1;
}

.bdf-oe-philosophy blockquote p {
	position: relative;
	margin: 0;
	font-family: var(--bdf-serif);
	font-size: clamp(58px, 7.7vw, 126px);
	font-weight: 300;
	letter-spacing: -.055em;
	line-height: .89;
}

.bdf-oe-philosophy-note {
	display: grid;
	grid-template-columns: minmax(220px, .45fr) minmax(380px, .72fr);
	gap: 8vw;
	align-items: start;
	margin-top: clamp(80px, 9vw, 135px);
	padding-top: 42px;
	border-top: 1px solid rgba(255, 255, 255, .18);
}

.bdf-oe-philosophy-note strong {
	color: var(--bdf-oe-gold-light);
	font-family: var(--bdf-serif);
	font-size: clamp(25px, 2.4vw, 38px);
	font-weight: 350;
	line-height: 1.15;
}

.bdf-oe-philosophy-note p {
	max-width: 660px;
	margin: 0;
	color: rgba(255, 255, 255, .67);
	font-size: 14px;
	line-height: 1.9;
}

.bdf-oe-principles {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	border-top: 1px solid rgba(255, 255, 255, .18);
}

.bdf-oe-principles article {
	position: relative;
	min-width: 0;
	min-height: 340px;
	padding: 66px clamp(32px, 4vw, 72px);
	border-right: 1px solid rgba(255, 255, 255, .18);
}

.bdf-oe-principles article:last-child {
	border-right: 0;
}

.bdf-oe-principles span {
	color: var(--bdf-oe-gold-light);
	font-size: 8px;
	font-weight: 700;
	letter-spacing: .16em;
}

.bdf-oe-principles h3 {
	margin: 54px 0 22px;
	font-family: var(--bdf-serif);
	font-size: clamp(39px, 4.2vw, 67px);
	font-weight: 350;
	letter-spacing: -.04em;
	line-height: 1;
}

.bdf-oe-principles p {
	max-width: 330px;
	margin: 0;
	color: rgba(255, 255, 255, .58);
	font-size: 12px;
	line-height: 1.75;
}

/* Shared vision. */
.bdf-oe-alliance {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(420px, .95fr);
	min-height: 900px;
	background: var(--bdf-oe-paper);
}

.bdf-oe-alliance-copy {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: clamp(100px, 10vw, 175px) clamp(55px, 7vw, 115px) clamp(100px, 10vw, 175px) max(6vw, calc((100vw - 1380px) / 2));
}

.bdf-oe-alliance h2 {
	font-size: clamp(48px, 5.1vw, 82px);
}

.bdf-oe-alliance h2 span,
.bdf-oe-alliance h2 i {
	display: block;
}

.bdf-oe-alliance h2 i {
	margin: 14px 0 10px clamp(55px, 7vw, 115px);
	color: var(--bdf-oe-gold);
	font-weight: 300;
}

.bdf-oe-alliance h2 span:last-child {
	max-width: 730px;
	margin-left: clamp(55px, 7vw, 115px);
}

.bdf-oe-alliance-text {
	max-width: 660px;
	margin: 52px 0 0 clamp(55px, 7vw, 115px);
	padding-left: 30px;
	border-left: 1px solid var(--bdf-oe-line);
}

.bdf-oe-alliance-text p {
	margin: 0 0 18px;
	color: #50534e;
	font-size: 14px;
	line-height: 1.83;
}

.bdf-oe-alliance-media {
	position: relative;
	margin: 0;
	min-height: 900px;
	overflow: hidden;
	background: #17202c;
}

.bdf-oe-alliance-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 53% 46%;
	filter: saturate(.75) contrast(1.07) sepia(.04);
	transition: transform 1.4s var(--bdf-ease);
}

.bdf-oe-alliance-media:hover img {
	transform: scale(1.025);
}

.bdf-oe-alliance-media::after {
	position: absolute;
	inset: 0;
	content: "";
	background: linear-gradient(90deg, rgba(7, 24, 44, .22), transparent 35%), linear-gradient(0deg, rgba(7, 24, 44, .52), transparent 42%);
	pointer-events: none;
}

.bdf-oe-alliance-media figcaption {
	position: absolute;
	z-index: 2;
	right: 30px;
	bottom: 27px;
	color: rgba(255, 255, 255, .68);
	font-size: 8px;
	font-weight: 700;
	letter-spacing: .14em;
	text-transform: uppercase;
}

/* A ruled recap; deliberately not a card grid. */
.bdf-oe-summary {
	padding: 0 max(6vw, calc((100vw - 1380px) / 2));
	background: var(--bdf-oe-cream);
}

.bdf-oe-summary > div {
	display: grid;
	grid-template-columns: 60px minmax(240px, .75fr) minmax(300px, 1fr);
	gap: clamp(20px, 4vw, 68px);
	align-items: center;
	min-height: 150px;
	border-bottom: 1px solid var(--bdf-oe-line);
}

.bdf-oe-summary > div:first-child {
	border-top: 1px solid var(--bdf-oe-line);
}

.bdf-oe-summary span {
	color: var(--bdf-oe-gold);
	font-size: 8px;
	font-weight: 800;
	letter-spacing: .16em;
}

.bdf-oe-summary strong {
	color: var(--bdf-oe-ink);
	font-family: var(--bdf-serif);
	font-size: clamp(31px, 3.3vw, 52px);
	font-weight: 350;
	letter-spacing: -.035em;
	line-height: 1;
}

.bdf-oe-summary small {
	color: #686a65;
	font-size: 9px;
	font-weight: 700;
	letter-spacing: .12em;
	line-height: 1.65;
	text-transform: uppercase;
}

/* Final handoff from person to product. */
.bdf-oe-next {
	position: relative;
	isolation: isolate;
	display: grid;
	grid-template-columns: minmax(420px, .88fr) minmax(0, 1.12fr);
	min-height: 770px;
	overflow: hidden;
	color: var(--bdf-white);
	background: radial-gradient(circle at 76% 45%, rgba(166, 122, 50, .24), transparent 27%), linear-gradient(120deg, #061629, #0b2541 60%, #07182d);
}

.bdf-oe-next-copy {
	position: relative;
	z-index: 3;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	padding: clamp(90px, 10vw, 165px) 0 clamp(90px, 10vw, 165px) max(6vw, calc((100vw - 1380px) / 2));
}

.bdf-oe-next-copy > p:not(.bdf-eyebrow) {
	max-width: 520px;
	margin: 35px 0 36px;
	color: rgba(255, 255, 255, .69);
	font-size: 14px;
	line-height: 1.82;
}

.bdf-oe-next-bottles {
	position: relative;
	z-index: 2;
	min-height: 770px;
}

.bdf-oe-next-bottle {
	position: absolute;
	bottom: -10%;
	left: 50%;
	width: auto;
	max-height: 95%;
	filter: drop-shadow(0 35px 30px rgba(0, 0, 0, .36));
}

.bdf-oe-next-bottle-one { z-index: 2; transform: translateX(-112%) rotate(-2deg); }
.bdf-oe-next-bottle-two { z-index: 3; transform: translateX(-52%); }
.bdf-oe-next-bottle-three { z-index: 1; max-height: 91%; transform: translateX(15%) rotate(2deg); }

.bdf-oe-next-mark {
	position: absolute;
	z-index: 0;
	right: -.04em;
	bottom: -.22em;
	color: rgba(255, 255, 255, .035);
	font-family: var(--bdf-serif);
	font-size: clamp(260px, 36vw, 610px);
	line-height: .8;
	pointer-events: none;
}

.has-js .bdf-oe-main [data-reveal] {
	opacity: 0;
	transform: translateY(24px);
	transition: opacity .85s var(--bdf-ease), transform .95s var(--bdf-ease);
}

.has-js .bdf-oe-main [data-reveal].is-visible {
	opacity: 1;
	transform: none;
}

@media (max-width: 1180px) {
	.bdf-oe-hero-portrait { right: 7vw; width: 43vw; }
	.bdf-oe-hero-intro { display: none; }
	.bdf-oe-signal { gap: 28px; }
	.bdf-oe-career { grid-template-columns: .72fr .75fr .3fr; gap: 45px; }
	.bdf-oe-alliance { grid-template-columns: 1fr .88fr; }
}

@media (max-width: 900px) {
	.bdf-oe-hero { height: 830px; }
	.bdf-oe-hero-heading { justify-content: flex-end; padding-bottom: 80px; }
	.bdf-oe-hero-heading .bdf-eyebrow { position: absolute; top: 54px; left: 0; }
	.bdf-oe-hero h1 { z-index: 5; font-size: clamp(96px, 19vw, 152px); }
	.bdf-oe-hero h1 span:last-child { margin-left: .25em; }
	.bdf-oe-hero-role { margin-top: 43px; }
	.bdf-oe-hero-portrait { top: 0; right: 0; bottom: 170px; width: 65vw; }
	.bdf-oe-opening { grid-template-columns: 1fr; }
	.bdf-oe-opening-note { width: min(520px, 85%); margin-left: auto; }
	.bdf-oe-signals { grid-template-columns: 1fr; }
	.bdf-oe-signal { border-right: 0; border-bottom: 1px solid var(--bdf-oe-line); }
	.bdf-oe-signal + .bdf-oe-signal { padding-left: 0; border-bottom: 0; }
	.bdf-oe-career { grid-template-columns: 1fr minmax(170px, .28fr); }
	.bdf-oe-career-copy { grid-column: 1; }
	.bdf-oe-career-five { grid-column: 2; grid-row: 1 / 3; }
	.bdf-oe-recognition { grid-template-columns: 1fr; }
	.bdf-oe-recognition-number { min-height: 430px; border-right: 0; border-bottom: 1px solid rgba(255, 255, 255, .14); }
	.bdf-oe-recognition-copy { min-height: 600px; padding-left: 8vw; }
	.bdf-oe-origin { grid-template-columns: 1fr; }
	.bdf-oe-origin-media { width: min(88%, 680px); }
	.bdf-oe-origin-copy { max-width: 680px; margin-left: auto; }
	.bdf-oe-territory { min-height: 900px; align-items: flex-start; }
	.bdf-oe-territory-copy { padding-top: 110px; }
	.bdf-oe-territory-path { right: 0; left: 0; grid-template-columns: repeat(2, 1fr); background: rgba(6, 22, 41, .86); backdrop-filter: blur(10px); }
	.bdf-oe-territory-path li { min-height: 90px; padding: 25px; }
	.bdf-oe-territory-path li:nth-child(2) { border-right: 0; }
	.bdf-oe-territory-path li:nth-child(-n+2) { border-bottom: 1px solid rgba(255, 255, 255, .18); }
	.bdf-oe-territory-path li:nth-child(2)::after { display: none; }
	.bdf-oe-philosophy-note { grid-template-columns: 1fr 1.2fr; }
	.bdf-oe-principles { grid-template-columns: 1fr; }
	.bdf-oe-principles article { min-height: 260px; border-right: 0; border-bottom: 1px solid rgba(255, 255, 255, .18); }
	.bdf-oe-alliance { grid-template-columns: 1fr; }
	.bdf-oe-alliance-copy { min-height: 730px; }
	.bdf-oe-alliance-media { min-height: 760px; }
	.bdf-oe-next { grid-template-columns: 1fr; }
	.bdf-oe-next-copy { min-height: 620px; padding-right: 6vw; }
	.bdf-oe-next-bottles { min-height: 650px; }
}

@media (max-width: 640px) {
	.bdf-oe-section { padding-top: 84px; padding-bottom: 84px; }
	.bdf-oe-hero { height: 740px; min-height: 740px; }
	.bdf-oe-hero::after, .bdf-oe-hero .bdf-scroll-cue { display: none; }
	.bdf-oe-hero-heading { width: 88vw; padding-bottom: 54px; }
	.bdf-oe-hero-heading .bdf-eyebrow { top: 35px; }
	.bdf-oe-hero h1 { font-size: clamp(73px, 25vw, 112px); line-height: .72; }
	.bdf-oe-hero h1 span:last-child { margin-left: .08em; }
	.bdf-oe-hero-role { max-width: 245px; margin-top: 34px; padding-left: 21px; font-size: 9px; }
	.bdf-oe-hero-portrait { top: 82px; right: -5vw; bottom: 208px; width: 77vw; }
	.bdf-oe-hero-portrait img { object-position: 51% 38%; }
	.bdf-oe-hero-portrait figcaption { display: none; }
	.bdf-oe-opening h2 { font-size: clamp(46px, 14vw, 64px); }
	.bdf-oe-opening-copy > p:last-child { margin: 31px 0 0; padding-left: 21px; }
	.bdf-oe-opening-note { width: 100%; margin-left: 0; }
	.bdf-oe-signal { grid-template-columns: 1fr; min-height: 270px; gap: 27px; padding: 44px 0; }
	.bdf-oe-signal + .bdf-oe-signal { padding-left: 0; }
	.bdf-oe-signal-number { font-size: 116px; }
	.bdf-oe-career { grid-template-columns: 1fr; min-height: 0; gap: 48px; }
	.bdf-oe-career h2, .bdf-oe-recognition h2, .bdf-oe-origin h2, .bdf-oe-territory h2, .bdf-oe-alliance h2, .bdf-oe-next h2 { font-size: clamp(46px, 14vw, 64px); }
	.bdf-oe-career-copy { grid-column: 1; padding-left: 21px; }
	.bdf-oe-career-five { grid-column: 1; grid-row: auto; justify-self: start; flex-direction: row; gap: 20px; }
	.bdf-oe-career-five::before, .bdf-oe-career-five::after { width: 52px; height: 1px; }
	.bdf-oe-career-five span { font-size: 155px; }
	.bdf-oe-career-five small { margin: 0; }
	.bdf-oe-recognition-number { min-height: 345px; }
	.bdf-oe-recognition-number strong { font-size: 174px; }
	.bdf-oe-recognition-copy { min-height: 0; padding: 84px 6vw; }
	.bdf-oe-origin-media { width: 100%; padding: 0 25px 30px 0; }
	.bdf-oe-origin-media img { aspect-ratio: 4 / 5; }
	.bdf-oe-origin-media figcaption { right: 38px; bottom: 12px; }
	.bdf-oe-origin-copy { margin-left: 0; }
	.bdf-oe-origin blockquote { margin-left: 20px; }
	.bdf-oe-origin-word { display: none; }
	.bdf-oe-territory { min-height: 930px; }
	.bdf-oe-territory-image { object-position: 58% 50%; }
	.bdf-oe-territory-copy { padding-top: 85px; padding-bottom: 245px; }
	.bdf-oe-territory-copy > p:not(.bdf-eyebrow) { font-size: 14px; }
	.bdf-oe-territory-path { grid-template-columns: 1fr; }
	.bdf-oe-territory-path li { min-height: 58px; padding: 13px 6vw; border-right: 0; border-bottom: 1px solid rgba(255, 255, 255, .18); font-size: 23px; }
	.bdf-oe-territory-path li::after { display: none; }
	.bdf-oe-philosophy-inner { padding-top: 105px; padding-bottom: 95px; }
	.bdf-oe-philosophy blockquote { margin-top: 65px; }
	.bdf-oe-philosophy blockquote p { font-size: clamp(48px, 15vw, 68px); line-height: .94; }
	.bdf-oe-philosophy-note { grid-template-columns: 1fr; gap: 28px; margin-top: 75px; }
	.bdf-oe-principles article { min-height: 0; padding: 52px 6vw; }
	.bdf-oe-principles h3 { margin-top: 35px; }
	.bdf-oe-alliance-copy { min-height: 0; padding: 85px 6vw; }
	.bdf-oe-alliance h2 i, .bdf-oe-alliance h2 span:last-child { margin-left: 24px; }
	.bdf-oe-alliance-text { margin: 42px 0 0 24px; padding-left: 21px; }
	.bdf-oe-alliance-media { min-height: 590px; }
	.bdf-oe-summary { padding: 0 6vw; }
	.bdf-oe-summary > div { grid-template-columns: 36px 1fr; gap: 15px; min-height: 142px; padding: 26px 0; }
	.bdf-oe-summary small { grid-column: 2; }
	.bdf-oe-next-copy { min-height: 570px; }
	.bdf-oe-next-bottles { min-height: 510px; }
	.bdf-oe-next-bottle { bottom: -7%; max-height: 93%; }
	.bdf-oe-next-bottle-one { transform: translateX(-117%) rotate(-2deg); }
	.bdf-oe-next-bottle-two { transform: translateX(-56%); }
	.bdf-oe-next-bottle-three { max-height: 89%; transform: translateX(10%) rotate(2deg); }
}

@media (prefers-reduced-motion: reduce) {
	.has-js .bdf-oe-main [data-reveal] { opacity: 1; transform: none; }
}
