/*
 * About page-scoped composition.
 * Ports prototypes/6/13-about.html (Surface 13, rev.3 · R13/R14/R15) into the
 * WP theme. Reserve-cool register with one paper/off-white press band.
 * Selectors are page-unique (.ab-* / .story-* / .prop-* / .blake-* / .team-* /
 * .core-* / .wine-* / .frontline-* / .receipts-* / .cred-* / .press-* / .faq-*).
 * The v6 prototype palette tokens are scoped onto the .rhinory-about wrapper so
 * this file is self-contained and does not collide with the theme --rhinory-*
 * tokens. Shared chrome (.wrap, .eyebrow, .btn, .side-nav, .snv-*, .reveal) is
 * provided site-wide by the theme style.css + rhinory-scroll.js; this file only
 * adds the page-unique surface plus reveal stagger + the #bookBar visit bar.
 * Brief docs/briefs/2026-06-02-port-13-about.md.
 */

.rhinory-about {
	/* v6 prototype palette, scoped to the About surface. */
	--reserve: #0F1A14;
	--reserve-2: #152217;
	--ink: #0A0807;
	--ink-2: #141210;
	--ivory: #F1E8D6;
	--paper: #FAF4E6;
	--acacia: #D4A24C;
	--rhino: #9C968A;
	--rule: rgba(241, 232, 214, 0.16);
	--rule-soft: rgba(241, 232, 214, 0.08);
	--rule-dk: rgba(15, 26, 20, 0.14);
}

.rhinory-about .wrap { max-width: 1280px; margin: 0 auto; padding: 0 40px; }
.rhinory-about picture { display: contents; }

/* Local eyebrow + btn so the surface is self-contained regardless of the
   theme's token namespace. */
.rhinory-about .eyebrow {
	font-family: "JetBrains Mono", monospace; font-size: 11px; letter-spacing: 0.28em;
	text-transform: uppercase; color: var(--acacia);
	display: inline-flex; align-items: center; gap: 12px;
}
.rhinory-about .eyebrow::before { content: ""; width: 30px; height: 1px; background: var(--acacia); }
.rhinory-about .btn {
	display: inline-flex; align-items: center; gap: 10px; padding: 14px 26px;
	font-family: "JetBrains Mono", monospace; font-size: 11px; letter-spacing: 0.18em;
	text-transform: uppercase; font-weight: 500; text-decoration: none;
	transition: background .2s, color .2s, transform .2s, border-color .2s;
}
.rhinory-about .btn-primary { background: var(--acacia); color: var(--reserve); }
.rhinory-about .btn-primary:hover { background: var(--ivory); transform: translateY(-1px); }
.rhinory-about .btn-ghost { border: 1px solid var(--ivory); color: var(--ivory); }
.rhinory-about .btn-ghost:hover { background: var(--ivory); color: var(--reserve); }

/* ===== HERO ===== */
.ab-hero {
	position: relative; min-height: 90vh; background: #000; color: var(--ivory);
	overflow: hidden; border-bottom: 1px solid var(--rule);
}
.ab-hero-img {
	position: absolute; inset: -10% 0 -10% 0;
	background-image: linear-gradient(180deg, rgba(10, 8, 7, 0.62) 0%, rgba(10, 8, 7, 0.18) 28%, rgba(15, 26, 20, 0.94) 100%),
		radial-gradient(80% 60% at 20% 80%, rgba(15, 26, 20, 0.72) 0%, rgba(15, 26, 20, 0) 70%),
		linear-gradient(135deg, #1f1c18 0%, #0e0c0a 100%);
	background-size: cover; background-position: center 42%;
	animation: abKenBurns 26s ease-in-out infinite alternate;
}
@keyframes abKenBurns { from { transform: scale(1.06); } to { transform: scale(1.16); } }
.ab-hero-grain { position: absolute; inset: 0; pointer-events: none; opacity: .06; }
.ab-hero-inner {
	position: relative; z-index: 2; padding: 160px 0 110px 0;
	display: grid; grid-template-columns: 1.55fr 1fr; gap: 80px; align-items: end;
}
.ab-triad {
	font-family: "JetBrains Mono", monospace; font-size: 11px; letter-spacing: 0.34em;
	text-transform: uppercase; color: var(--acacia); margin-bottom: 30px;
	display: flex; align-items: center; gap: 14px;
}
.ab-triad::before { content: ""; width: 36px; height: 1px; background: var(--acacia); }
.ab-triad strong { color: var(--ivory); font-weight: 500; letter-spacing: 0.34em; }
.ab-place-stamp {
	font-family: "JetBrains Mono", monospace; font-size: 10px; letter-spacing: 0.28em;
	text-transform: uppercase; color: var(--rhino); margin-bottom: 18px;
	display: inline-flex; align-items: center; gap: 12px; padding: 6px 12px;
	border: 1px solid var(--rule); background: rgba(15, 26, 20, 0.55);
}
.ab-place-stamp strong { color: var(--acacia); font-weight: 500; }
.ab-headline {
	font-family: "Cormorant Garamond", Georgia, serif; font-weight: 400;
	font-size: clamp(54px, 7.2vw, 114px); line-height: 0.94; letter-spacing: -0.014em;
	margin: 0 0 30px 0; text-wrap: pretty;
}
.ab-headline em { font-style: italic; font-weight: 300; color: var(--acacia); }
.ab-sub { font-size: 18px; line-height: 1.62; max-width: 56ch; color: rgba(241, 232, 214, 0.94); margin: 0 0 32px 0; }
.ab-sub strong { color: var(--ivory); font-weight: 500; }
.ab-hero-ctas { display: flex; gap: 14px; flex-wrap: wrap; }

.ab-dossier {
	background: rgba(10, 8, 7, 0.78); backdrop-filter: blur(18px) saturate(140%);
	-webkit-backdrop-filter: blur(18px) saturate(140%);
	border: 1px solid var(--rule); padding: 28px 30px; position: relative;
}
.ab-dossier::before {
	content: 'ABOUT · AT A GLANCE'; position: absolute; top: -9px; left: 22px;
	background: #0a0807; padding: 0 10px;
	font-family: "JetBrains Mono", monospace; font-size: 9.5px; letter-spacing: 0.28em; color: var(--acacia);
}
.ab-dossier-row {
	display: grid; grid-template-columns: auto 1fr; gap: 14px; padding: 13px 0;
	border-bottom: 1px solid var(--rule-soft); align-items: baseline;
}
.ab-dossier-row:first-of-type { padding-top: 4px; }
.ab-dossier-row:last-of-type { border-bottom: 0; }
.ab-dossier-row .lbl {
	font-family: "JetBrains Mono", monospace; font-size: 9.5px; letter-spacing: 0.22em;
	text-transform: uppercase; color: var(--rhino); white-space: nowrap;
}
.ab-dossier-row .val { font-family: "Cormorant Garamond", serif; font-size: 19px; line-height: 1.18; color: var(--ivory); text-align: right; }
.ab-dossier-row .val em { font-style: italic; color: var(--acacia); font-weight: 300; }
.ab-dossier-foot {
	margin-top: 16px; padding-top: 14px; border-top: 1px solid var(--rule);
	font-family: "JetBrains Mono", monospace; font-size: 9.5px; letter-spacing: 0.18em;
	text-transform: uppercase; color: var(--rhino); line-height: 1.7;
}
.ab-dossier-foot strong { color: var(--acacia); font-weight: 500; }
.ab-dossier-foot a { color: var(--acacia); text-decoration: none; }

/* ===== STORY BAND (rev.3 linear arc) ===== */
.story-band {
	background: var(--reserve); color: var(--ivory); padding: 120px 0 130px 0;
	border-block: 1px solid var(--rule); position: relative; overflow: hidden;
}
.story-shell { position: relative; z-index: 2; max-width: 1280px; margin: 0 auto; padding: 0 40px; }
.sb-intro { max-width: 880px; margin: 0 auto 12px; text-align: center; }
.sb-intro .eyebrow { display: inline-flex; margin-bottom: 30px; }
.sb-intro h2 {
	font-family: "Cormorant Garamond", serif; font-weight: 400;
	font-size: clamp(48px, 5.8vw, 92px); line-height: 0.96; letter-spacing: -0.014em;
	margin: 0 0 28px 0; text-wrap: pretty;
}
.sb-intro h2 em { font-style: italic; font-weight: 300; color: var(--acacia); }
.sb-intro .lede {
	font-family: "Cormorant Garamond", serif; font-style: italic; font-weight: 300;
	font-size: 23px; line-height: 1.5; color: rgba(241, 232, 214, 0.94); max-width: 54ch; margin: 0 auto;
}
.sb-intro .lede strong { color: var(--acacia); font-weight: 400; font-style: italic; }
.sb-intro .lede em { color: var(--acacia); font-style: italic; }

.sb-centerpiece {
	max-width: 960px; margin: 80px auto 72px; position: relative;
	background: rgba(10, 8, 7, 0.55); border: 1px solid var(--rule); padding: 72px 80px 60px 80px;
}
.sb-centerpiece::before {
	content: '§ 2016 · SOUTH AFRICA · VERBATIM'; position: absolute; top: -9px; left: 40px;
	background: var(--reserve); padding: 0 14px;
	font-family: "JetBrains Mono", monospace; font-size: 10px; letter-spacing: 0.30em; color: var(--acacia);
}
.sb-centerpiece .story-mark {
	font-family: "Cormorant Garamond", serif; font-size: 140px; line-height: 0.55;
	color: var(--acacia); font-style: italic; font-weight: 300; opacity: .42;
	margin: 0 0 -6px -10px; display: block;
}
.sb-centerpiece blockquote {
	margin: 0; font-family: "Cormorant Garamond", serif; font-weight: 400;
	font-size: clamp(24px, 2.45vw, 32px); line-height: 1.42; letter-spacing: -0.006em;
	color: var(--ivory); text-wrap: pretty;
}
.sb-centerpiece blockquote em { font-style: italic; color: var(--acacia); font-weight: 300; }
.sb-centerpiece blockquote strong { font-weight: 500; color: var(--ivory); }
.sb-centerpiece .story-attr {
	margin-top: 44px; padding-top: 26px; border-top: 1px solid var(--rule);
	display: flex; align-items: baseline; justify-content: space-between; gap: 24px; flex-wrap: wrap;
}
.sb-centerpiece .story-attr .names {
	font-family: "Cormorant Garamond", serif; font-style: italic; font-weight: 400;
	font-size: 24px; line-height: 1.2; color: var(--ivory);
}
.sb-centerpiece .story-attr .role {
	font-family: "JetBrains Mono", monospace; font-size: 10px; letter-spacing: 0.24em;
	text-transform: uppercase; color: var(--acacia);
}

.sb-story-pivot { margin: 80px auto 0; max-width: 680px; }
.story-device {
	padding: 18px 0; display: flex; align-items: center; gap: 18px;
	font-family: "JetBrains Mono", monospace; font-size: 11px; letter-spacing: 0.34em;
	text-transform: uppercase; color: var(--acacia);
	border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule);
}
.story-device::before, .story-device::after { content: ""; height: 1px; background: var(--rule); flex: 1; }
.story-device strong { color: var(--ivory); font-weight: 500; letter-spacing: 0.34em; }

.sb-heritage-centered { max-width: 780px; margin: 48px auto 72px; text-align: center; }
.sb-heritage-centered .eye {
	font-family: "JetBrains Mono", monospace; font-size: 10.5px; letter-spacing: 0.30em;
	text-transform: uppercase; color: var(--acacia);
	display: inline-flex; align-items: center; gap: 14px; margin-bottom: 24px; justify-content: center;
}
.sb-heritage-centered .eye::before, .sb-heritage-centered .eye::after { content: ""; width: 32px; height: 1px; background: var(--acacia); }
.sb-heritage-centered p {
	margin: 0 0 16px 0; font-family: "Cormorant Garamond", serif; font-style: italic; font-weight: 300;
	font-size: clamp(23px, 2.3vw, 30px); line-height: 1.36; color: var(--ivory); text-wrap: pretty;
}
.sb-heritage-centered p em { color: var(--acacia); font-style: italic; }
.sb-heritage-centered p strong { color: var(--ivory); font-weight: 500; font-style: italic; }
.sb-heritage-centered .sig {
	font-family: "JetBrains Mono", monospace; font-size: 9.5px; letter-spacing: 0.24em;
	text-transform: uppercase; color: var(--rhino); margin: 0;
}

.sb-finale {
	display: grid; grid-template-columns: 1.1fr 1.2fr; gap: 0;
	border: 1px solid var(--rule); background: rgba(10, 8, 7, 0.42); overflow: hidden;
}
.sb-finale-photo { margin: 0; position: relative; aspect-ratio: 5/4; overflow: hidden; background-color: #1a1a1a; }
.sb-finale-photo-inner {
	position: absolute; inset: 0;
	background: linear-gradient(160deg, #25201a 0%, #14110d 100%);
	background-size: cover; background-position: center 30%; transform: scale(1.04);
	animation: abKenBurns 22s ease-in-out infinite alternate;
}
.sb-finale-photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(15, 26, 20, 0) 60%, rgba(15, 26, 20, 0.55) 100%); }
.sb-finale-photo .yr-stamp {
	position: absolute; top: 14px; left: 14px; z-index: 2;
	background: rgba(10, 8, 7, 0.86); border: 1px solid var(--rule); padding: 6px 12px;
	font-family: "JetBrains Mono", monospace; font-size: 9.5px; letter-spacing: 0.22em;
	text-transform: uppercase; color: var(--acacia);
}
.sb-finale-body { padding: 40px 44px; display: flex; flex-direction: column; gap: 14px; justify-content: center; }
.sb-finale-body .role { font-family: "JetBrains Mono", monospace; font-size: 10px; letter-spacing: 0.24em; text-transform: uppercase; color: var(--acacia); }
.sb-finale-body h3 { font-family: "Cormorant Garamond", serif; font-weight: 400; font-size: 32px; line-height: 1.08; margin: 0; letter-spacing: -0.008em; }
.sb-finale-body h3 em { font-style: italic; color: var(--acacia); font-weight: 300; }
.sb-finale-body p { margin: 0; font-size: 15px; line-height: 1.66; opacity: .88; max-width: 50ch; }
.sb-finale-body p em { font-style: italic; color: var(--acacia); }
.sb-meta {
	margin-top: 6px; padding-top: 14px; border-top: 1px solid var(--rule);
	display: flex; flex-wrap: wrap; gap: 18px;
	font-family: "JetBrains Mono", monospace; font-size: 9.5px; letter-spacing: 0.22em;
	text-transform: uppercase; color: var(--rhino); line-height: 1.7;
}
.sb-meta strong { color: var(--acacia); font-weight: 500; }

/* ===== PROPERTY BAND ===== */
.prop-band { background: #000; color: var(--ivory); padding: 130px 0; border-block: 1px solid var(--rule); position: relative; overflow: hidden; }
.prop-img {
	position: absolute; inset: -8% 0 -8% 0;
	background: linear-gradient(180deg, rgba(0, 0, 0, 0.55) 0%, rgba(15, 26, 20, 0.78) 100%), linear-gradient(135deg, #14110d 0%, #0a0807 100%);
	background-size: cover;
}
.prop-inner { position: relative; z-index: 2; display: grid; grid-template-columns: 1.05fr 1fr; gap: 80px; align-items: center; }
.prop-head h2 { font-family: "Cormorant Garamond", serif; font-weight: 400; font-size: clamp(42px, 5.2vw, 72px); line-height: 1.0; letter-spacing: -0.014em; margin: 18px 0 24px 0; }
.prop-head h2 em { font-style: italic; font-weight: 300; color: var(--acacia); }
.prop-head p.lede { font-family: "Cormorant Garamond", serif; font-style: italic; font-weight: 300; font-size: 22px; line-height: 1.42; max-width: 42ch; color: rgba(241, 232, 214, 0.94); margin: 0 0 26px 0; }
.prop-head p.lede strong { font-weight: 400; color: var(--acacia); }
.prop-coda { margin-top: 30px; padding-top: 22px; border-top: 1px solid var(--rule); font-family: "Cormorant Garamond", serif; font-style: italic; font-weight: 300; font-size: 28px; line-height: 1.2; color: var(--acacia); }
.prop-coda strong { color: var(--ivory); font-style: normal; font-weight: 500; }
.prop-thesis {
	margin-top: 22px; padding: 18px 22px; background: rgba(212, 162, 76, 0.06);
	border: 1px solid rgba(212, 162, 76, 0.25); border-left: 3px solid var(--acacia);
	font-family: "Cormorant Garamond", serif; font-style: italic; font-weight: 400;
	font-size: 19px; line-height: 1.45; color: var(--ivory);
}
.prop-thesis strong { font-style: normal; color: var(--acacia); font-weight: 500; }
.prop-facts { background: rgba(10, 8, 7, 0.62); backdrop-filter: blur(14px) saturate(140%); -webkit-backdrop-filter: blur(14px) saturate(140%); border: 1px solid var(--rule); padding: 36px 38px; }
.prop-facts .eye { font-family: "JetBrains Mono", monospace; font-size: 10px; letter-spacing: 0.28em; text-transform: uppercase; color: var(--acacia); padding-bottom: 18px; margin-bottom: 18px; border-bottom: 1px solid var(--rule); display: flex; justify-content: space-between; }
.prop-facts .eye span:last-child { color: var(--rhino); }
.prop-fact { display: grid; grid-template-columns: auto 1fr; gap: 18px; padding: 16px 0; border-bottom: 1px solid var(--rule-soft); align-items: baseline; }
.prop-fact:last-child { border-bottom: 0; }
.prop-fact .lbl { font-family: "JetBrains Mono", monospace; font-size: 9.5px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--rhino); white-space: nowrap; }
.prop-fact .val { font-family: "Cormorant Garamond", serif; font-size: 20px; line-height: 1.18; color: var(--ivory); }
.prop-fact .val em { font-style: italic; color: var(--acacia); font-weight: 300; }
.prop-fact .val small { display: block; font-family: "Inter Tight", sans-serif; font-size: 13px; line-height: 1.5; color: rgba(241, 232, 214, 0.66); margin-top: 4px; font-style: italic; }

/* ===== BLAKE BAND (rev.3 left-balance) ===== */
.blake-band { background: var(--reserve); color: var(--ivory); padding: 130px 0; border-block: 1px solid var(--rule); position: relative; overflow: hidden; }
.blake-inner { position: relative; z-index: 2; display: grid; grid-template-columns: 1fr 1.05fr; gap: 80px; align-items: start; }
.blake-left { display: flex; flex-direction: column; gap: 22px; }
.blake-portrait { position: static; aspect-ratio: 4/5; overflow: hidden; background-color: #1a1a1a; border: 1px solid var(--rule); }
.blake-portrait-inner { position: absolute; inset: 0; background: linear-gradient(160deg, #2a2620 0%, #14110d 100%); background-size: cover; background-position: center 38%; }
.blake-portrait { position: relative; }
.blake-spec-vert { display: flex; flex-direction: column; border: 1px solid var(--rule); background: rgba(10, 8, 7, 0.88); }
.blake-spec-vert > div { padding: 18px 22px; border-bottom: 1px solid var(--rule); display: grid; grid-template-columns: 108px 1fr; gap: 18px; align-items: baseline; }
.blake-spec-vert > div:last-child { border-bottom: 0; }
.blake-spec-vert .lbl { font-family: "JetBrains Mono", monospace; font-size: 9.5px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--rhino); white-space: nowrap; }
.blake-spec-vert .val { font-family: "Cormorant Garamond", serif; font-size: 22px; line-height: 1.16; color: var(--ivory); }
.blake-spec-vert .val em { font-style: italic; color: var(--acacia); font-weight: 300; }
.blake-spec-vert .val small { display: block; margin-top: 4px; font-family: "Inter Tight", sans-serif; font-style: italic; font-size: 12px; line-height: 1.45; color: rgba(241, 232, 214, 0.62); }
.blake-stake { background: rgba(10, 8, 7, 0.88); border: 1px solid rgba(212, 162, 76, 0.36); padding: 34px 38px; position: relative; }
.blake-stake::before { content: '§ WHY THIS WORK'; position: absolute; top: -9px; left: 22px; background: var(--reserve); padding: 0 10px; font-family: "JetBrains Mono", monospace; font-size: 9.5px; letter-spacing: 0.28em; color: var(--acacia); }
.blake-stake .stake-num { font-family: "Cormorant Garamond", serif; font-style: italic; font-weight: 300; font-size: 64px; line-height: 1; color: var(--acacia); letter-spacing: -0.02em; margin-bottom: 14px; display: block; }
.blake-stake p { margin: 0; font-family: "Cormorant Garamond", serif; font-weight: 400; font-size: 21px; line-height: 1.42; color: var(--ivory); text-wrap: pretty; }
.blake-stake p strong { color: var(--acacia); font-weight: 500; }
.blake-stake p em { font-style: italic; color: var(--acacia); }
.blake-stake .stake-foot { margin-top: 18px; padding-top: 14px; border-top: 1px solid var(--rule); font-family: "JetBrains Mono", monospace; font-size: 9.5px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--rhino); line-height: 1.7; }
.blake-stake .stake-foot strong { color: var(--acacia); font-weight: 500; }
.blake-body { display: flex; flex-direction: column; gap: 22px; }
.blake-head h2 { font-family: "Cormorant Garamond", serif; font-weight: 400; font-size: clamp(46px, 5.5vw, 80px); line-height: 0.98; letter-spacing: -0.014em; margin: 18px 0 0 0; text-wrap: pretty; }
.blake-head h2 em { font-style: italic; font-weight: 300; color: var(--acacia); }
.blake-bio { background: rgba(10, 8, 7, 0.88); border: 1px solid var(--rule); padding: 36px 38px; position: relative; }
.blake-bio p { margin: 0 0 16px 0; font-family: "Inter Tight", sans-serif; font-weight: 400; font-size: 16px; line-height: 1.72; color: rgba(241, 232, 214, 0.94); text-wrap: pretty; }
.blake-bio p:last-child { margin-bottom: 0; }
.blake-bio p.lede { font-family: "Cormorant Garamond", serif; font-style: italic; font-size: 23px; line-height: 1.42; font-weight: 300; color: var(--ivory); padding-bottom: 20px; margin-bottom: 20px; border-bottom: 1px solid var(--rule-soft); }
.blake-bio p.lede strong { color: var(--ivory); font-weight: 500; font-style: italic; }
.blake-bio p strong { font-weight: 600; color: var(--acacia); }
.blake-bio p em { font-style: italic; color: var(--acacia); }
.blake-cal { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; }
.blake-cal-cell { background: rgba(10, 8, 7, 0.88); border: 1px solid rgba(212, 162, 76, 0.36); padding: 24px 26px; display: flex; flex-direction: column; gap: 6px; }
.blake-cal-cell .lbl { font-family: "JetBrains Mono", monospace; font-size: 10.5px; letter-spacing: 0.26em; text-transform: uppercase; color: var(--acacia); }
.blake-cal-cell .date { font-family: "Cormorant Garamond", serif; font-weight: 400; font-size: 30px; line-height: 1.05; color: var(--ivory); letter-spacing: -0.006em; }
.blake-cal-cell .date em { font-style: italic; color: var(--acacia); font-weight: 300; }
.blake-cal-cell p { margin: 8px 0 0; font-family: "Inter Tight", sans-serif; font-size: 14.5px; line-height: 1.65; color: rgba(241, 232, 214, 0.90); }
.blake-cal-cell p em { font-style: italic; color: var(--acacia); }

/* ===== TEAM BAND ===== */
.team-band { padding: 120px 0 130px 0; background: var(--ink); color: var(--ivory); border-block: 1px solid var(--rule); }
.team-head { display: grid; grid-template-columns: 1fr 1.3fr; gap: 60px; align-items: end; padding-bottom: 36px; margin-bottom: 48px; border-bottom: 1px solid var(--rule); }
.team-head h2 { font-family: "Cormorant Garamond", serif; font-weight: 400; font-size: clamp(40px, 4.8vw, 68px); line-height: 1.02; letter-spacing: -0.012em; margin: 18px 0 0 0; }
.team-head h2 em { font-style: italic; font-weight: 300; color: var(--acacia); }
.team-head p { font-size: 16px; line-height: 1.65; margin: 0; opacity: .86; max-width: 56ch; }
.team-head p strong { color: var(--acacia); font-weight: 500; }
.team-sub { font-family: "JetBrains Mono", monospace; font-size: 10px; letter-spacing: 0.26em; text-transform: uppercase; color: var(--acacia); margin: 48px 0 22px 0; display: flex; align-items: center; gap: 14px; }
.team-sub::before, .team-sub::after { content: ""; height: 1px; background: var(--rule); flex: 1; }
.team-subnote { font-family: "Inter Tight", sans-serif; font-size: 14.5px; line-height: 1.66; opacity: .78; margin: 0 0 22px 0; max-width: 62ch; }
.team-subnote em { font-style: italic; color: var(--acacia); }
.team-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.team-card { background: var(--ink-2); border: 1px solid var(--rule); display: flex; flex-direction: column; transition: transform .35s cubic-bezier(.2, .7, .2, 1), border-color .35s, box-shadow .35s; overflow: hidden; }
.team-card:hover { transform: translateY(-4px); border-color: rgba(212, 162, 76, 0.5); box-shadow: 0 24px 60px -20px rgba(0, 0, 0, .55); }
.tc-photo {
	aspect-ratio: 4/5; position: relative; overflow: hidden; border-bottom: 1px solid var(--rule);
	background: repeating-linear-gradient(135deg, rgba(212, 162, 76, 0.05) 0 14px, rgba(212, 162, 76, 0) 14px 28px), linear-gradient(160deg, #1f1c18 0%, #14110d 100%);
}
.tc-photo[data-stand-in]::before {
	content: attr(data-stand-in); position: absolute; inset: 0; z-index: 1;
	display: flex; align-items: flex-end; padding: 18px;
	font-family: "JetBrains Mono", monospace; font-size: 9.5px; letter-spacing: 0.16em;
	text-transform: uppercase; color: var(--rhino); line-height: 1.6;
}
.tc-photo .tc-tag { position: absolute; top: 14px; left: 14px; z-index: 2; background: rgba(10, 8, 7, 0.86); border: 1px solid var(--rule); padding: 6px 12px; font-family: "JetBrains Mono", monospace; font-size: 9.5px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--acacia); }
.tc-body { padding: 24px 26px 26px; display: flex; flex-direction: column; gap: 10px; flex: 1; }
.tc-body .role { font-family: "JetBrains Mono", monospace; font-size: 9.5px; letter-spacing: 0.24em; text-transform: uppercase; color: var(--acacia); }
.tc-body h3 { font-family: "Cormorant Garamond", serif; font-weight: 400; font-size: 26px; line-height: 1.12; margin: 0; letter-spacing: -0.006em; }
.tc-body h3 em { font-style: italic; color: var(--acacia); font-weight: 300; }
.tc-body p { font-size: 14.5px; line-height: 1.66; margin: 0; opacity: .84; }
.tc-body p strong { color: var(--ivory); font-weight: 500; }
.tc-body p em { font-style: italic; color: var(--acacia); }
.tc-tags { margin-top: auto; padding-top: 14px; border-top: 1px solid var(--rule-soft); display: flex; flex-wrap: wrap; gap: 6px; }
.tc-tags span { font-family: "JetBrains Mono", monospace; font-size: 9.5px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--rhino); padding: 4px 8px; background: rgba(241, 232, 214, 0.04); border: 1px solid var(--rule-soft); }
.tc-tags span strong { color: var(--acacia); font-weight: 500; }

/* Core team grid */
.core-team-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.core-cell { background: var(--ink-2); border: 1px solid var(--rule); display: flex; flex-direction: column; transition: transform .35s cubic-bezier(.2, .7, .2, 1), border-color .35s, box-shadow .35s; overflow: hidden; }
.core-cell:hover { transform: translateY(-3px); border-color: rgba(212, 162, 76, 0.42); box-shadow: 0 18px 40px -16px rgba(0, 0, 0, .45); }
.core-photo {
	aspect-ratio: 4/5; position: relative; overflow: hidden; border-bottom: 1px solid var(--rule);
	background: repeating-linear-gradient(135deg, rgba(212, 162, 76, 0.05) 0 14px, rgba(212, 162, 76, 0) 14px 28px), linear-gradient(160deg, #1f1c18 0%, #14110d 100%);
}
.core-photo::before { content: attr(data-stand-in); position: absolute; inset: 0; z-index: 2; display: flex; align-items: flex-end; justify-content: center; text-align: center; padding: 16px; font-family: "JetBrains Mono", monospace; font-size: 9px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--rhino); line-height: 1.7; }
.core-photo .core-monogram { position: absolute; top: 14px; left: 14px; z-index: 1; font-family: "Cormorant Garamond", serif; font-style: italic; font-weight: 300; font-size: 46px; line-height: 1; color: var(--acacia); opacity: .55; }
.core-body { padding: 22px 24px 24px; display: flex; flex-direction: column; gap: 8px; flex: 1; }
.core-body .role { font-family: "JetBrains Mono", monospace; font-size: 9.5px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--acacia); min-height: 1.2em; }
.core-body h4 { font-family: "Cormorant Garamond", serif; font-weight: 400; font-size: 24px; line-height: 1.12; margin: 0; letter-spacing: -0.006em; }
.core-body h4 em { font-style: italic; color: var(--acacia); font-weight: 300; }
.core-body p { font-size: 13.5px; line-height: 1.6; margin: 4px 0 0; opacity: .84; }
.core-body p strong { color: var(--ivory); font-weight: 500; }
.core-body .stand { margin-top: auto; padding-top: 14px; border-top: 1px dashed rgba(212, 162, 76, 0.28); font-family: "JetBrains Mono", monospace; font-size: 9px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--rhino); line-height: 1.6; }

/* Wine team lead + frontline */
.wine-lead { display: grid; grid-template-columns: 1.1fr 1.4fr; gap: 32px; background: linear-gradient(135deg, rgba(184, 91, 44, 0.10) 0%, rgba(212, 162, 76, 0.04) 100%); border: 1px solid rgba(212, 162, 76, 0.32); margin-bottom: 22px; overflow: hidden; transition: transform .35s cubic-bezier(.2, .7, .2, 1), border-color .35s; }
.wine-lead:hover { transform: translateY(-2px); border-color: rgba(212, 162, 76, 0.6); }
.wl-photo { aspect-ratio: 5/4; position: relative; overflow: hidden; background-color: #1a1a1a; }
.wl-photo-inner { position: absolute; inset: 0; background: linear-gradient(160deg, #2a2620 0%, #14110d 100%); background-size: cover; background-position: center 32%; }
.wl-photo .tc-tag { position: absolute; top: 14px; left: 14px; z-index: 2; background: rgba(10, 8, 7, 0.86); border: 1px solid var(--rule); padding: 6px 12px; font-family: "JetBrains Mono", monospace; font-size: 9.5px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--acacia); }
.wl-body { padding: 36px 38px 32px; display: flex; flex-direction: column; gap: 12px; justify-content: center; }
.wl-body .role { font-family: "JetBrains Mono", monospace; font-size: 10px; letter-spacing: 0.24em; text-transform: uppercase; color: var(--acacia); }
.wl-body h3 { font-family: "Cormorant Garamond", serif; font-weight: 400; font-size: 36px; line-height: 1.08; margin: 0; letter-spacing: -0.008em; }
.wl-body h3 em { font-style: italic; color: var(--acacia); font-weight: 300; }
.wl-body p { font-size: 15px; line-height: 1.66; margin: 0; opacity: .88; max-width: 50ch; }
.wl-body p strong { color: var(--ivory); font-weight: 500; }
.wl-meta { margin-top: 6px; padding-top: 14px; border-top: 1px solid var(--rule); display: flex; flex-wrap: wrap; gap: 18px; font-family: "JetBrains Mono", monospace; font-size: 10px; letter-spacing: 0.20em; text-transform: uppercase; color: var(--rhino); }
.wl-meta strong { color: var(--acacia); font-weight: 500; }
.frontline-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.frontline-cell { border: 1px solid var(--rule); background: var(--ink-2); padding: 26px 28px; display: flex; flex-direction: column; gap: 8px; transition: transform .35s cubic-bezier(.2, .7, .2, 1), border-color .35s; }
.frontline-cell:hover { transform: translateY(-3px); border-color: rgba(212, 162, 76, 0.4); }
.frontline-cell .ph { width: 64px; height: 64px; border-radius: 50%; background: repeating-linear-gradient(135deg, rgba(212, 162, 76, 0.08) 0 8px, rgba(212, 162, 76, 0) 8px 16px), linear-gradient(160deg, #2b261f 0%, #14110d 100%); border: 1px solid rgba(212, 162, 76, 0.28); display: flex; align-items: center; justify-content: center; font-family: "Cormorant Garamond", serif; font-style: italic; font-weight: 300; font-size: 26px; color: var(--acacia); margin-bottom: 6px; }
.frontline-cell .role { font-family: "JetBrains Mono", monospace; font-size: 9.5px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--acacia); }
.frontline-cell h4 { font-family: "Cormorant Garamond", serif; font-weight: 400; font-size: 22px; line-height: 1.1; margin: 0; }
.frontline-cell h4 em { font-style: italic; color: var(--acacia); font-weight: 300; }
.frontline-cell p { font-size: 13.5px; line-height: 1.6; margin: 0; opacity: .82; }
.frontline-cell .stand { margin-top: auto; padding-top: 14px; border-top: 1px dashed rgba(212, 162, 76, 0.3); font-family: "JetBrains Mono", monospace; font-size: 9px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--rhino); line-height: 1.6; }

/* ===== RECEIPTS BAND ===== */
.receipts-band { background: var(--ink); color: var(--ivory); padding: 130px 0; border-block: 1px solid var(--rule); position: relative; overflow: hidden; }
.receipts-inner { position: relative; z-index: 2; }
.receipts-head { display: grid; grid-template-columns: 1fr 1.2fr; gap: 60px; align-items: end; padding-bottom: 36px; border-bottom: 1px solid var(--rule); }
.receipts-head h2 { font-family: "Cormorant Garamond", serif; font-weight: 400; font-size: clamp(42px, 5.2vw, 72px); line-height: 1.0; letter-spacing: -0.014em; margin: 18px 0 0 0; text-wrap: pretty; }
.receipts-head h2 em { font-style: italic; font-weight: 300; color: var(--acacia); }
.receipts-head p { font-size: 16px; line-height: 1.65; margin: 0; opacity: .86; max-width: 54ch; }
.receipts-head p strong { color: var(--acacia); font-weight: 500; }
.receipts-head p em { font-style: italic; color: var(--acacia); }
.receipts-hero { padding: 64px 0 56px 0; border-bottom: 1px solid var(--rule); display: grid; grid-template-columns: auto 1fr; gap: 50px; align-items: center; }
.receipts-hero .num { font-family: "Cormorant Garamond", serif; font-weight: 300; font-size: clamp(96px, 12vw, 180px); line-height: 0.86; letter-spacing: -0.028em; color: var(--acacia); white-space: nowrap; }
.receipts-hero .num em { font-style: italic; font-weight: 300; }
.receipts-hero .num sup { font-family: "Cormorant Garamond", serif; font-size: .45em; font-style: italic; color: var(--ivory); vertical-align: 0.6em; margin-left: -6px; }
.receipts-hero .copy { max-width: 46ch; }
.receipts-hero .copy .lbl { font-family: "JetBrains Mono", monospace; font-size: 11px; letter-spacing: 0.28em; text-transform: uppercase; color: var(--acacia); display: inline-flex; align-items: center; gap: 12px; margin-bottom: 14px; }
.receipts-hero .copy .lbl::before { content: ""; width: 22px; height: 1px; background: var(--acacia); }
.receipts-hero .copy p { margin: 0; font-family: "Cormorant Garamond", serif; font-weight: 400; font-size: 26px; line-height: 1.34; color: var(--ivory); text-wrap: pretty; }
.receipts-hero .copy p em { font-style: italic; color: var(--acacia); }
.receipts-hero .copy p strong { color: var(--acacia); font-weight: 500; }
.receipts-hero .copy .src { margin-top: 14px; font-family: "JetBrains Mono", monospace; font-size: 9.5px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--rhino); }
.receipts-hero .copy .src strong { color: var(--acacia); font-weight: 500; }
.receipts-grid { padding-top: 48px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; border: 1px solid var(--rule); background: rgba(10, 8, 7, 0.42); margin-top: 0; }
.receipts-cell { padding: 30px 28px 28px; border-right: 1px solid var(--rule); display: flex; flex-direction: column; gap: 8px; transition: background .25s; }
.receipts-cell:hover { background: rgba(212, 162, 76, 0.04); }
.receipts-cell:nth-child(4n) { border-right: 0; }
.receipts-cell .num { font-family: "Cormorant Garamond", serif; font-weight: 400; font-size: clamp(36px, 3.4vw, 46px); line-height: 0.98; letter-spacing: -0.012em; color: var(--ivory); }
.receipts-cell .num em { font-style: italic; color: var(--acacia); font-weight: 300; }
.receipts-cell .lbl { font-family: "JetBrains Mono", monospace; font-size: 9.5px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--acacia); margin-bottom: 2px; }
.receipts-cell p { margin: 6px 0 0; font-size: 13.5px; line-height: 1.55; opacity: .82; }
.receipts-cell p strong { color: var(--ivory); font-weight: 500; }
.receipts-foot { border: 1px solid var(--rule); border-top: 0; background: rgba(212, 162, 76, 0.05); padding: 24px 30px; display: flex; justify-content: space-between; align-items: baseline; gap: 24px; flex-wrap: wrap; font-family: "JetBrains Mono", monospace; font-size: 10.5px; letter-spacing: 0.20em; text-transform: uppercase; color: var(--rhino); }
.receipts-foot .op { color: var(--ivory); font-family: "Cormorant Garamond", serif; font-style: italic; font-weight: 300; font-size: 19px; line-height: 1.3; letter-spacing: 0; text-transform: none; max-width: 60ch; }
.receipts-foot .op strong { color: var(--acacia); font-weight: 500; font-style: normal; }
.receipts-foot .src strong { color: var(--acacia); font-weight: 500; }

/* ===== OPERATIONAL CREDIBILITY BAND ===== */
.cred-band { background: var(--reserve); color: var(--ivory); padding: 96px 0; border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); }
.cred-head { display: flex; justify-content: space-between; align-items: baseline; gap: 28px; flex-wrap: wrap; margin-bottom: 40px; }
.cred-eyebrow { font-family: "JetBrains Mono", monospace; font-size: 11px; letter-spacing: 0.26em; text-transform: uppercase; color: var(--acacia); }
.cred-head h2 { font-family: "Cormorant Garamond", serif; font-weight: 400; font-size: clamp(30px, 3.6vw, 48px); line-height: 1.03; margin: 0; letter-spacing: -0.014em; max-width: 18ch; color: var(--ivory); }
.cred-head h2 em { font-style: italic; font-weight: 300; color: var(--acacia); }
.cred-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; border: 1px solid var(--rule); }
.cred-cell { padding: 34px 32px; border-right: 1px solid var(--rule); display: flex; flex-direction: column; gap: 12px; background: rgba(15, 26, 20, 0.5); }
.cred-cell:last-child { border-right: 0; }
.cred-cell .cred-num { font-family: "Cormorant Garamond", serif; font-weight: 300; font-size: clamp(40px, 5vw, 64px); line-height: 1; color: var(--acacia); }
.cred-cell .cred-num small { font-size: 0.32em; letter-spacing: 0.1em; color: var(--rhino); margin-left: 6px; }
.cred-cell h4 { font-family: "Cormorant Garamond", serif; font-weight: 400; font-size: 22px; margin: 0; color: var(--ivory); }
.cred-cell p { font-size: 14.5px; line-height: 1.66; margin: 0; color: rgba(241, 232, 214, 0.82); }
.cred-foot { margin-top: 22px; font-family: "JetBrains Mono", monospace; font-size: 10px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--rhino); }
.cred-foot strong { color: var(--acacia); font-weight: 500; }

/* ===== PRESS BAND (paper register) ===== */
.press-band { background: var(--paper); color: #0F1A14; padding: 120px 0 130px 0; border-block: 1px solid var(--rule-dk); }
.press-band .eyebrow { color: var(--acacia); }
.press-band .eyebrow::before { background: var(--acacia); }
.press-head { display: grid; grid-template-columns: 1fr 1.2fr; gap: 60px; align-items: end; padding-bottom: 36px; margin-bottom: 48px; border-bottom: 1px solid var(--rule-dk); }
.press-head h2 { font-family: "Cormorant Garamond", serif; font-weight: 400; font-size: clamp(42px, 5.2vw, 76px); line-height: 1.0; letter-spacing: -0.014em; margin: 18px 0 0 0; color: #0F1A14; }
.press-head h2 em { font-style: italic; font-weight: 300; color: var(--acacia); }
.press-head p { font-size: 17px; line-height: 1.65; margin: 0; max-width: 54ch; color: rgba(15, 26, 20, 0.78); }
.press-head p strong { color: var(--acacia); font-weight: 500; }
.press-head p em { font-style: italic; color: var(--acacia); }
.press-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.press-card { background: #fff; border: 1px solid var(--rule-dk); padding: 36px 32px 30px 32px; display: flex; flex-direction: column; gap: 18px; transition: transform .35s cubic-bezier(.2, .7, .2, 1), border-color .35s, box-shadow .35s; position: relative; }
.press-card:hover { transform: translateY(-4px); border-color: var(--acacia); box-shadow: 0 22px 50px -22px rgba(15, 26, 20, 0.22); }
.press-pub { font-family: "Cormorant Garamond", serif; font-weight: 500; font-size: 22px; line-height: 1.12; color: #0F1A14; padding-bottom: 14px; border-bottom: 1px solid var(--rule-dk); }
.press-pub small { display: block; margin-top: 6px; font-family: "JetBrains Mono", monospace; font-size: 9.5px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--rhino); font-weight: 400; }
.press-card blockquote { margin: 0; font-family: "Cormorant Garamond", serif; font-weight: 400; font-size: 20px; line-height: 1.42; color: #0F1A14; text-wrap: pretty; font-style: italic; }
.press-attr { margin-top: auto; padding-top: 18px; border-top: 1px solid var(--rule-dk); font-family: "JetBrains Mono", monospace; font-size: 10px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--rhino); line-height: 1.7; }
.press-attr strong { color: #0F1A14; font-weight: 500; }
.pub-marquee { background: var(--ink); color: var(--ivory); border-top: 1px solid var(--rule-dk); border-bottom: 1px solid var(--rule-dk); overflow: hidden; padding: 28px 0; position: relative; margin-top: 60px; }
.pub-marquee::before, .pub-marquee::after { content: ""; position: absolute; top: 0; bottom: 0; width: 120px; z-index: 2; pointer-events: none; }
.pub-marquee::before { left: 0; background: linear-gradient(90deg, var(--ink), rgba(10, 8, 7, 0)); }
.pub-marquee::after { right: 0; background: linear-gradient(270deg, var(--ink), rgba(10, 8, 7, 0)); }
.pub-track { display: flex; gap: 60px; white-space: nowrap; animation: pubSlide 80s linear infinite; width: max-content; font-family: "Cormorant Garamond", serif; font-weight: 500; font-size: 22px; color: var(--ivory); opacity: .88; letter-spacing: 0.01em; }
.pub-track span { display: inline-flex; align-items: center; gap: 24px; }
.pub-track .dot { width: 6px; height: 6px; background: var(--acacia); border-radius: 50%; opacity: .8; }
@keyframes pubSlide { from { transform: translateX(0); } to { transform: translateX(-50%); } }
.press-foot { margin-top: 60px; padding-top: 24px; border-top: 1px solid var(--rule-dk); display: flex; justify-content: space-between; gap: 18px; flex-wrap: wrap; font-family: "JetBrains Mono", monospace; font-size: 10.5px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--acacia); }
.press-foot strong { color: #0F1A14; font-weight: 500; }
.press-foot a { color: #0F1A14; text-decoration: none; border-bottom: 1px solid rgba(184, 91, 44, 0.45); padding-bottom: 2px; transition: color .2s, border-color .2s; }
.press-foot a:hover { color: var(--acacia); border-color: var(--acacia); }

/* ===== FAQ BAND ===== */
.faq-band { padding: 120px 0 130px 0; background: var(--reserve); color: var(--ivory); border-block: 1px solid var(--rule); }
.faq-head { display: grid; grid-template-columns: 1fr 1.2fr; gap: 60px; align-items: end; padding-bottom: 36px; margin-bottom: 48px; border-bottom: 1px solid var(--rule); }
.faq-head h2 { font-family: "Cormorant Garamond", serif; font-weight: 400; font-size: clamp(40px, 4.8vw, 68px); line-height: 1.02; letter-spacing: -0.012em; margin: 18px 0 0 0; }
.faq-head h2 em { font-style: italic; font-weight: 300; color: var(--acacia); }
.faq-head p { font-size: 16px; line-height: 1.65; margin: 0; opacity: .86; max-width: 54ch; }
.faq-head p strong { color: var(--acacia); font-weight: 500; }
.faq-head p a { color: var(--acacia); border-bottom: 1px solid rgba(212, 162, 76, .45); text-decoration: none; }
.faq-list { display: flex; flex-direction: column; gap: 0; border-top: 1px solid var(--rule); }
.faq-row { border-bottom: 1px solid var(--rule); transition: background .25s; }
.faq-row[open] { background: rgba(212, 162, 76, 0.04); }
.faq-row summary { cursor: pointer; list-style: none; display: grid; grid-template-columns: 84px 1fr auto; gap: 28px; padding: 30px 32px; align-items: baseline; transition: padding .25s; }
.faq-row summary::-webkit-details-marker { display: none; }
.faq-row:hover summary { padding-left: 42px; }
.faq-row .q-num { font-family: "JetBrains Mono", monospace; font-size: 10px; letter-spacing: 0.24em; text-transform: uppercase; color: var(--acacia); white-space: nowrap; }
.faq-row .q-text { font-family: "Cormorant Garamond", serif; font-weight: 400; font-size: 24px; line-height: 1.22; color: var(--ivory); text-wrap: pretty; }
.faq-row .q-text em { font-style: italic; color: var(--acacia); font-weight: 300; }
.faq-row .q-toggle { width: 32px; height: 32px; border: 1px solid var(--rule); border-radius: 50%; position: relative; transition: border-color .2s, transform .3s; }
.faq-row .q-toggle::before, .faq-row .q-toggle::after { content: ""; position: absolute; top: 50%; left: 50%; width: 12px; height: 1px; background: var(--acacia); transform: translate(-50%, -50%); transition: transform .25s ease; }
.faq-row .q-toggle::after { transform: translate(-50%, -50%) rotate(90deg); }
.faq-row[open] .q-toggle::after { transform: translate(-50%, -50%) rotate(0deg); }
.faq-row[open] .q-toggle { border-color: var(--acacia); }
.faq-row .q-answer { padding: 0 32px 36px calc(32px + 84px + 28px); font-family: "Inter Tight", sans-serif; font-size: 15.5px; line-height: 1.72; color: rgba(241, 232, 214, 0.92); max-width: 78ch; }
.faq-row .q-answer p { margin: 0 0 14px; }
.faq-row .q-answer p:last-child { margin-bottom: 0; }
.faq-row .q-answer ul { margin: 8px 0 14px; padding-left: 20px; }
.faq-row .q-answer li { margin-bottom: 6px; }
.faq-row .q-answer strong { color: var(--ivory); font-weight: 500; }
.faq-row .q-answer em { font-style: italic; color: var(--acacia); }
.faq-row .q-answer a { color: var(--acacia); text-decoration: none; border-bottom: 1px solid rgba(212, 162, 76, 0.45); padding-bottom: 1px; transition: color .2s, border-color .2s; }
.faq-row .q-answer a:hover { color: var(--ivory); border-color: var(--ivory); }

/* ===== CLOSING RALLY ===== */
.ab-rally { background: var(--ink); color: var(--ivory); padding: 130px 0; text-align: center; border-top: 1px solid var(--rule); position: relative; }
.ab-rally .wrap { position: relative; z-index: 2; }
.ab-rally .r-eye { font-family: "JetBrains Mono", monospace; font-size: 11px; letter-spacing: 0.34em; text-transform: uppercase; color: var(--acacia); margin-bottom: 36px; display: inline-flex; align-items: center; gap: 14px; }
.ab-rally .r-eye::before, .ab-rally .r-eye::after { content: ""; width: 36px; height: 1px; background: var(--acacia); }
.ab-rally h2 { font-family: "Cormorant Garamond", serif; font-weight: 400; font-size: clamp(54px, 8vw, 128px); line-height: 0.94; letter-spacing: -0.018em; margin: 0; }
.ab-rally h2 em { font-style: italic; font-weight: 300; color: var(--acacia); }
.ab-rally .r-sub { margin: 24px auto 0; font-family: "Cormorant Garamond", serif; font-style: italic; font-weight: 300; font-size: 22px; line-height: 1.4; opacity: .86; max-width: 42ch; }
.ab-rally .r-xlinks { margin-top: 54px; padding-top: 36px; border-top: 1px solid var(--rule); display: flex; justify-content: center; gap: 24px; flex-wrap: wrap; }
.ab-rally .r-xlink { display: flex; flex-direction: column; gap: 6px; padding: 18px 24px; border: 1px solid var(--rule); text-decoration: none; color: var(--ivory); min-width: 200px; text-align: left; transition: border-color .2s, background .2s, transform .2s; }
.ab-rally .r-xlink:hover { border-color: var(--acacia); background: rgba(212, 162, 76, 0.06); transform: translateY(-2px); }
.ab-rally .r-xlink:hover .arr { transform: translateX(4px); }
.ab-rally .r-xlink .lbl { font-family: "JetBrains Mono", monospace; font-size: 9.5px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--rhino); }
.ab-rally .r-xlink .nm { font-family: "Cormorant Garamond", serif; font-size: 22px; line-height: 1.1; display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.ab-rally .r-xlink .nm em { font-style: italic; color: var(--acacia); font-weight: 300; }
.ab-rally .r-xlink .arr { color: var(--acacia); transition: transform .25s cubic-bezier(.2, .7, .2, 1); }

/* ===== STICKY VISIT BAR (reuses #bookBar .show toggle from rhinory-scroll.js) =====
   The bar carries id="bookBar" so the site-wide book-bar show/hide drives it,
   plus class .visit-bar for this surface's styling. Scope keeps it page-unique. */
.rhinory-about .visit-bar {
	position: fixed; left: 0; right: 0; bottom: 0; z-index: 60;
	background: var(--reserve); color: var(--ivory); border-top: 1px solid var(--rule);
	padding: 14px 32px; display: flex; gap: 24px; align-items: center; justify-content: space-between;
	flex-wrap: wrap; transform: translateY(110%); transition: transform .35s cubic-bezier(.2, .7, .2, 1);
	box-shadow: 0 -20px 60px -20px rgba(0, 0, 0, .5);
}
.rhinory-about .visit-bar.show { transform: translateY(0); }
.rhinory-about .visit-bar .vb-label { font-family: "JetBrains Mono", monospace; font-size: 11px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--rhino); }
.rhinory-about .visit-bar .vb-label strong { color: var(--acacia); font-weight: 500; }
.rhinory-about .visit-bar .vb-actions { display: flex; gap: 14px; align-items: center; }
.rhinory-about .visit-bar a.vb-primary { background: var(--acacia); color: var(--reserve); padding: 12px 24px; text-decoration: none; font-family: "JetBrains Mono", monospace; font-size: 11px; letter-spacing: 0.18em; text-transform: uppercase; font-weight: 500; transition: background .2s, transform .2s; display: inline-flex; align-items: center; gap: 10px; }
.rhinory-about .visit-bar a.vb-primary:hover { background: var(--ivory); transform: translateY(-1px); }
.rhinory-about .visit-bar a.vb-ghost { color: var(--ivory); text-decoration: none; font-family: "JetBrains Mono", monospace; font-size: 11px; letter-spacing: 0.18em; text-transform: uppercase; border-bottom: 1px solid var(--rule); padding-bottom: 2px; transition: color .2s, border-color .2s; }
.rhinory-about .visit-bar a.vb-ghost:hover { color: var(--acacia); border-color: var(--acacia); }

/* ===== REVEAL stagger (theme .reveal/.visible hook from rhinory-scroll.js) ===== */
.rhinory-about .team-grid .team-card.reveal:nth-child(2) { transition-delay: 120ms; }
.rhinory-about .team-grid .team-card.reveal:nth-child(3) { transition-delay: 220ms; }
.rhinory-about .press-grid .press-card.reveal:nth-child(2) { transition-delay: 120ms; }
.rhinory-about .press-grid .press-card.reveal:nth-child(3) { transition-delay: 220ms; }
.rhinory-about .frontline-row .frontline-cell.reveal:nth-child(2) { transition-delay: 80ms; }
.rhinory-about .frontline-row .frontline-cell.reveal:nth-child(3) { transition-delay: 160ms; }
.rhinory-about .frontline-row .frontline-cell.reveal:nth-child(4) { transition-delay: 240ms; }
.rhinory-about .frontline-row .frontline-cell.reveal:nth-child(5) { transition-delay: 320ms; }
.rhinory-about .frontline-row .frontline-cell.reveal:nth-child(6) { transition-delay: 400ms; }
@media (prefers-reduced-motion: reduce) {
	.ab-hero-img, .sb-finale-photo-inner { animation: none !important; transform: scale(1.04) !important; }
	.pub-track { animation: none !important; }
}

/* ===== RESPONSIVE ===== */
@media (max-width: 1180px) {
	.team-grid, .press-grid { grid-template-columns: repeat(2, 1fr); }
	.frontline-row { grid-template-columns: repeat(2, 1fr); }
	.core-team-grid { grid-template-columns: repeat(3, 1fr); }
	.receipts-grid { grid-template-columns: repeat(2, 1fr); }
	.receipts-cell:nth-child(4n) { border-right: 1px solid var(--rule); }
	.receipts-cell:nth-child(2n) { border-right: 0; }
}
@media (max-width: 1000px) {
	.ab-hero-inner { grid-template-columns: 1fr; gap: 36px; padding: 130px 0 70px 0; }
	.story-shell { padding: 0 28px; }
	.sb-finale { grid-template-columns: 1fr; }
	.sb-centerpiece { padding: 48px 36px 40px; margin: 48px auto; }
	.prop-inner, .team-head, .press-head, .faq-head, .receipts-head, .cred-head { grid-template-columns: 1fr; gap: 28px; }
	.wine-lead { grid-template-columns: 1fr; }
	.blake-inner { grid-template-columns: 1fr; gap: 42px; }
	.blake-portrait { aspect-ratio: 16/10; }
	.core-team-grid { grid-template-columns: repeat(2, 1fr); }
	.cred-grid { grid-template-columns: 1fr; }
	.cred-cell { border-right: 0; border-bottom: 1px solid var(--rule); }
	.cred-cell:last-child { border-bottom: 0; }
	.receipts-hero { grid-template-columns: 1fr; gap: 18px; padding: 48px 0 36px 0; }
	.receipts-hero .num { font-size: clamp(76px, 18vw, 140px); }
}
@media (max-width: 760px) {
	.team-grid, .press-grid, .frontline-row, .core-team-grid { grid-template-columns: 1fr; }
	.ab-hero-inner { padding: 104px 0 56px 0; gap: 28px; }
	.ab-headline { font-size: clamp(42px, 10vw, 68px); }
	.story-band, .prop-band, .team-band, .press-band, .faq-band, .ab-rally, .blake-band, .receipts-band, .cred-band { padding: 80px 0; }
	.sb-centerpiece { padding: 40px 24px 32px; margin: 36px auto; }
	.sb-centerpiece .story-mark { font-size: 96px; }
	.blake-spec-vert > div { grid-template-columns: 1fr; gap: 4px; }
	.blake-cal { grid-template-columns: 1fr; }
	.receipts-grid { grid-template-columns: 1fr; }
	.receipts-cell { border-right: 0 !important; border-bottom: 1px solid var(--rule); }
	.receipts-cell:last-child { border-bottom: 0; }
	.faq-row summary { grid-template-columns: 1fr auto; gap: 14px; padding: 24px 22px; }
	.faq-row .q-num { display: block; padding-bottom: 6px; grid-column: 1 / -1; }
	.faq-row .q-answer { padding: 0 22px 28px; }
	.rhinory-about .visit-bar { padding: 12px 18px; gap: 12px; }
	.rhinory-about .visit-bar .vb-label { display: none; }
	.rhinory-about .visit-bar a.vb-primary { flex: 1; justify-content: center; }
}
