Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions app/about/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -289,7 +289,7 @@ export default function AboutPage() {
<section className="bg-bone py-20 lg:py-28">
<div className="container-wide">
<Flourish />
<PullQuote attribution="Office of the Group · Rothenbury">
<PullQuote attribution="Rothenbury Group">
We did not build a holding company to repackage what private equity already does.
We built one because the standard model fails operators, fails founders, and fails
the businesses themselves.
Expand Down Expand Up @@ -393,7 +393,7 @@ export default function AboutPage() {
<p className="mt-6 body-lg max-w-2xl">
Rothenbury is led by a leadership team responsible for parent-level
governance. Named introductions for board and counterparty engagements are
arranged through the Office of the Group.
arranged through the Rothenbury Group.
</p>
</div>
<Link href="/leadership/" className="btn-secondary group whitespace-nowrap">
Expand Down
10 changes: 5 additions & 5 deletions app/contact/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ export default function ContactPage() {
</nav>
<div className="mt-6 grid gap-12 lg:grid-cols-[1.5fr_1fr] items-end">
<h1 className="font-serif text-bone text-[38px] sm:text-[56px] lg:text-[88px] leading-[1.06] sm:leading-[1.02] tracking-tightest text-balance">
<span className="italic text-bronze-200">A private introduction</span> through the Office of the Group.
<span className="italic text-bronze-200">A private introduction</span> through the Rothenbury Group.
</h1>
<p className="text-ivory/90 text-lg leading-relaxed max-w-md font-serif italic">
Inquiries from operators, allocators, counterparties, and the
Expand Down Expand Up @@ -105,7 +105,7 @@ export default function ContactPage() {
Confidential, by design.
</h2>
<p className="mt-5 body-md max-w-xl">
Submissions are received privately by the Office of the Group and
Submissions are received privately by Rothenbury Group and
routed to the appropriate member of leadership. Specific portfolio
detail and named-leadership engagements are arranged by direct
correspondence after a first introduction.
Expand All @@ -118,7 +118,7 @@ export default function ContactPage() {
<aside className="space-y-8 lg:sticky lg:top-32">
<div className="border border-line bg-cream/30 p-7 lg:p-8">
<h3 className="text-[10px] uppercase tracking-[0.22em] text-bronze-700 font-medium">
Office of the Group
Rothenbury Group
</h3>
<ul className="mt-6 space-y-5 text-sm">
<li className="flex items-start gap-3">
Expand All @@ -134,7 +134,7 @@ export default function ContactPage() {
</address>
) : (
<span className="text-navy leading-relaxed">
Office of the Group
Rothenbury Group
<br />
Toronto · New York
</span>
Expand Down Expand Up @@ -199,7 +199,7 @@ export default function ContactPage() {
Toronto · New York · Across North America
</div>
<div className="text-[10px] uppercase tracking-[0.22em] text-bronze-200">
Office of the Group
Rothenbury Group
</div>
</div>
</div>
Expand Down
6 changes: 3 additions & 3 deletions app/insights/[slug]/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,7 @@ function renderBody(body: string) {
// Inject pull quote and a flourish after the chosen paragraph
if (idx === pullQuoteIdx && pullQuoteText) {
out.push(
<PullQuote key={`pq-${idx}`} attribution={`From the Office of the Group`}>
<PullQuote key={`pq-${idx}`} attribution={`From Rothenbury Group`}>
{pullQuoteText}
</PullQuote>
);
Expand Down Expand Up @@ -206,7 +206,7 @@ export default function InsightDetailPage({ params }: { params: { slug: string }
</p>
<div className="mt-8 flex items-center gap-3 text-[11px] uppercase tracking-[0.24em] text-ivory/70">
<span className="h-px w-10 bg-bronze-200/70" />
By the Office of the Group · Rothenbury
By Rothenbury Group
</div>
</div>
</div>
Expand All @@ -220,7 +220,7 @@ export default function InsightDetailPage({ params }: { params: { slug: string }
<div className="prose prose-lg">{renderBody(article.body)}</div>
<Flourish className="my-14" />
<div className="text-xs uppercase tracking-[0.22em] text-ink-mute italic">
Published by the Office of the Group · {formatDate(article.date)}
Published by Rothenbury Group · {formatDate(article.date)}
</div>
</article>
<aside className="lg:sticky lg:top-28 self-start">
Expand Down
2 changes: 1 addition & 1 deletion app/insights/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@ export default function InsightsPage() {
<div className="max-w-2xl">
<div className="eyebrow">Latest letters & notes</div>
<h2 className="mt-5 display-3 text-balance">
Recent perspectives from the Office of the Group.
Recent perspectives from the Rothenbury Group.
</h2>
</div>

Expand Down
6 changes: 3 additions & 3 deletions app/leadership/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ const MEMBERS: Member[] = [
{
name: "Office of the Founder",
title: "Founder, President & COO",
bio: "Day-to-day governance of the Group is led by the founder and a small leadership team. The founder operates between the Toronto and New York offices and is reachable via the Office of the Group for board, investor, and counterparty correspondence.",
bio: "Day-to-day governance of the Group is led by the founder and a small leadership team. The founder operates between the Toronto and New York offices and is reachable via the Rothenbury Group for board, investor, and counterparty correspondence.",
status: "private",
},
{
Expand Down Expand Up @@ -94,7 +94,7 @@ export default function LeadershipPage() {
<div className="text-center px-6">
<Lock className="mx-auto w-7 h-7 text-bronze-700" strokeWidth={1.25} />
<div className="mt-4 font-serif italic text-2xl text-navy">
Office of the Group
Rothenbury Group
</div>
<div className="mt-3 text-[10px] uppercase tracking-[0.22em] text-bronze-700">
Toronto · New York
Expand Down Expand Up @@ -131,7 +131,7 @@ export default function LeadershipPage() {
<p className="mt-10 max-w-2xl text-sm text-ink-soft italic leading-relaxed">
Rothenbury Group keeps leadership identification private as a matter of
operating policy. Board introductions and named-leadership engagements are
arranged directly through the Office of the Group.
arranged directly through the Rothenbury Group.
</p>
</div>
</section>
Expand Down
6 changes: 3 additions & 3 deletions app/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ const REGIONS = [
{
label: "Canada",
accent: "burgundy" as const,
anchor: "Office of the Group, Toronto",
anchor: "Rothenbury Group, Toronto",
cities: ["Toronto", "Vancouver", "Montreal", "Calgary"],
note: "Operating partners across real estate, contracting, and services.",
},
Expand Down Expand Up @@ -150,7 +150,7 @@ export default function HomePage() {
</div>
<span className="inline-flex items-center gap-2 px-3 py-1 border border-bronze-200/35 bg-walnut/30 text-[10px] uppercase tracking-[0.22em] text-bronze-200 font-medium">
<span className="w-1.5 h-1.5 rounded-full bg-bronze-200" />
Office of the Group · Toronto · New York
Rothenbury Group · Toronto · New York
</span>
</div>
<h1 className="mt-4 font-serif text-ivory text-[34px] sm:text-[54px] lg:text-[68px] leading-[1.03] sm:leading-[0.98] tracking-tightest text-balance">
Expand Down Expand Up @@ -472,7 +472,7 @@ export default function HomePage() {
/>
<div className="absolute inset-0 bg-gradient-to-t from-walnut/60 via-transparent to-transparent" />
<div className="absolute bottom-5 left-5 right-5 text-[11px] uppercase tracking-[0.22em] text-bronze-200/90 font-mono">
The boardroom · Office of the Group
The boardroom · Rothenbury Group
</div>
</div>
</div>
Expand Down
2 changes: 1 addition & 1 deletion app/privacy/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ export default function PrivacyPage() {
<h2 id="contact" className="font-serif text-2xl text-navy">Contact</h2>
<p>
For privacy questions or to exercise your rights, contact us through our Contact
page. Written privacy requests are routed through the Office of the Group.
page. Written privacy requests are routed through the Rothenbury Group.
</p>
</LegalLayout>
</>
Expand Down
6 changes: 3 additions & 3 deletions app/thesis/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ export default function ThesisPage() {
<div className="grid gap-16 lg:grid-cols-[2.4fr_1fr]">
<article className="max-w-3xl">
<div className="text-[10px] uppercase tracking-[0.24em] text-bronze-700 font-mono">
Letter from the Office of the Group
Letter from the Rothenbury Group
</div>
<h2 className="mt-5 display-3 text-balance">
Why this exists, in three plain sentences.
Expand Down Expand Up @@ -491,7 +491,7 @@ export default function ThesisPage() {
themselves.&rdquo;
</p>
<p className="mt-3 text-[11px] uppercase tracking-[0.2em] text-ink-soft">
Office of the Group · Rothenbury
Rothenbury Group
</p>
</div>
</aside>
Expand All @@ -501,7 +501,7 @@ export default function ThesisPage() {

<CTASection
eyebrow="Speak with the principals"
heading="Private introductions are arranged through the Office of the Group."
heading="Private introductions are arranged through the Rothenbury Group."
body="We respond to qualified inquiries from operators, founders, allocators, and counterparties within two business days."
/>
</>
Expand Down
4 changes: 2 additions & 2 deletions components/ContactForm.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ export default function ContactForm() {
<CheckCircle2 className="mx-auto w-10 h-10 text-bronze-700" strokeWidth={1.25} />
<h3 className="mt-6 font-serif text-3xl text-navy">Received.</h3>
<p className="mt-4 text-ink-soft leading-relaxed max-w-md mx-auto">
Your request has been logged with the Office of the Group. A member of
Your request has been logged with the Rothenbury Group. A member of
the leadership team will respond within two business days.
</p>
</div>
Expand All @@ -79,7 +79,7 @@ export default function ContactForm() {
<p className="mt-2 text-[13px] text-ink-soft leading-relaxed">
Specific portfolio detail, leadership identification, and capital
commitments are discussed privately. Inquiries below are reviewed by
the Office of the Group.
the Rothenbury Group.
</p>
</div>

Expand Down
17 changes: 12 additions & 5 deletions components/Footer.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ export default function Footer() {
Request a private introduction
</Link>
<p className="text-[11px] uppercase tracking-[0.22em] text-bronze-200">
Office of the Group
Rothenbury Group
</p>
</div>
</div>
Expand Down Expand Up @@ -135,9 +135,16 @@ export default function Footer() {
{NAP.email}
</a>
) : null}
<address className="not-italic text-ivory/95 leading-relaxed">
{NAP.street}
<br />
{NAP.city}, {NAP.region} {NAP.postalCode}
<br />
{NAP.country}
</address>
<p>
Operating partners across the United States and Canada. The Office of
the Group coordinates correspondence between Toronto and New York.
Operating partners across the United States and Canada. Rothenbury Group
coordinates correspondence between Toronto and New York.
</p>
</div>

Expand Down Expand Up @@ -190,7 +197,7 @@ export default function Footer() {
Principal-only updates
</div>
<p className="mt-5 font-serif text-2xl lg:text-3xl text-ivory leading-snug max-w-2xl text-balance">
Quarterly notes from the Office of the Group.
Quarterly notes from the Rothenbury Group.
<span className="text-bronze-200">
{" "}
Distributed privately, by name only.
Expand Down Expand Up @@ -227,7 +234,7 @@ export default function Footer() {
jurisdictions.
</p>
<p className="text-ivory/55 text-[11px]">
Office of the Group · Toronto, Ontario · New York, NY.
Rothenbury Group · Toronto, Ontario · New York, NY.
</p>
</div>
<p className="lg:text-right">© {year} {BRAND.publicName}. All rights reserved.</p>
Expand Down
2 changes: 1 addition & 1 deletion components/OperatingSupportStack.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ export default function OperatingSupportStack({ stacked = false }: { stacked?: b
fill="#5A1A2B"
letterSpacing="0.5"
>
The Parent · Office of the Group
The Parent · Rothenbury Group
</text>

{/* Ground label */}
Expand Down
2 changes: 1 addition & 1 deletion components/PanAmericanMap.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ const VIEW_H = 600;

// Default operating geometry — Toronto · NY operating spine plus secondary hubs.
const DEFAULT_MARKERS: Marker[] = [
{ lon: -79.3832, lat: 43.6532, label: "Toronto", country: "ca", hub: true, caption: "Office of the Group" },
{ lon: -79.3832, lat: 43.6532, label: "Toronto", country: "ca", hub: true, caption: "Rothenbury Group" },
{ lon: -74.006, lat: 40.7128, label: "New York", country: "us", hub: true, caption: "U.S. anchor" },
// Canada secondaries
{ lon: -75.6972, lat: 45.4215, label: "Ottawa", country: "ca" },
Expand Down
2 changes: 1 addition & 1 deletion components/PrincipalSignup.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ export default function PrincipalSignup() {
Received
</div>
<p className="mt-2 text-sm text-ivory/85 leading-relaxed">
Your request has been logged with the Office of the Group.
Your request has been logged with the Rothenbury Group.
</p>
</div>
);
Expand Down
8 changes: 4 additions & 4 deletions lib/constants.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ export const BRAND = {

/**
* Public NAP. The Group does not publish a phone line. Email is routed through
* the Office of the Group. Address is held at the city level only.
* the Rothenbury Group. Address is held at the city level only.
*
* Typed as plain strings (not const-literal) so equality checks against TBD
* narrow correctly across components.
Expand All @@ -41,10 +41,10 @@ export const NAP: {
website: string;
} = {
name: "Rothenbury Group",
street: "Office of the Group",
street: "120 Adelaide Street West, Suite 2508",
city: "Toronto",
region: "Ontario",
postalCode: "",
postalCode: "M5H 1T1",
country: "Canada",
// Phone is intentionally not published. Institutional inquiries route through
// the contact form. Keep TBD so the visibility check in the header / footer
Expand Down Expand Up @@ -81,7 +81,7 @@ export const SOCIAL = {

export const CTA = {
primary: "Request a private introduction",
secondary: "Speak with the Office of the Group",
secondary: "Speak with the Rothenbury Group",
tertiary: "Read the thesis",
} as const;

Expand Down