/* global React */ /* ========================================================= BSpoke — Case Studies, About, Insights, CTA, Footer ========================================================= */ const CASE_STUDIES = [ { sector: "Luxury STR Portfolio", location: "South Florida", title: "Repositioned a 14-villa portfolio from soft launch to disciplined operation.", metrics: [["+27%", "YoY revenue"], ["+12.4 pts", "GOP margin"], ["6 mo", "to stabilize"]], image: "VILLA COURTYARD · POOLSIDE" }, { sector: "Independent Hotel", location: "Miami Beach", title: "Owner's representation through a 92-key reflag and operational overhaul.", metrics: [["89 keys", "repositioned"], ["On-time", "opening"], ["+18%", "ADR Y1"]], image: "BOUTIQUE HOTEL ENTRANCE" }, { sector: "Condo-Hotel Association", location: "Coral Gables", title: "Tightened reserve discipline and vendor governance across an 18-community footprint.", metrics: [["$46M+", "Budgets directed"], ["18", "Communities"], ["Board-ready", "Reporting"]], image: "RESIDENTIAL TOWER LOBBY" }]; function CaseStudiesSection({ accent = "navy" }) { return (

Selected engagements.

Discuss your asset
{CASE_STUDIES.map((c, i) =>
{c.sector} {c.location}

{c.title}

{c.metrics.map(([k, v], j) =>
{k}
{v}
)}
)}

Client names withheld by mutual agreement. Engagement details available under NDA.

); } /* ---------- About / Founder teaser ---------- */ function AboutSection({ tone = "cream" }) { return (
Yann Crine · Founder & Principal

You're not hiring a firm.
You're hiring Yann Crine.

Every engagement is led personally by Yann Crine — Founder and Managing Principal of BSpoke. With over 25 years of hands‑on experience across hotel operations, luxury residential advisory, and capital project oversight in Europe and the United States, Yann brings senior‑level expertise directly to every client relationship.

No junior consultants. No delegation. Just experienced, accountable advisory from day one.

Meet Yann Europe · United States · South Florida
); } /* ---------- Insights / Blog list ---------- */ const POSTS = [ { date: "2026 · 05 · 12", category: "Operator's Notebook", title: "What a good Asset Diagnostic actually looks like — and why most don't.", deck: "A 4-week diagnostic should leave an owner with three things: clarity on what's broken, a prioritized list of what to fix first, and a defensible cost-of-inaction number.", read: "9 min read" }, { date: "2026 · 04 · 28", category: "Owner-Side Reading", title: "The hidden tax of management agreements that aren't written for owners.", deck: "Most management agreements protect the manager. A handful of clauses, drafted differently, can shift the economics of an asset by 200–400 bps a year.", read: "7 min read" }, { date: "2026 · 04 · 11", category: "Capital Projects", title: "On‑time openings are a discipline, not a miracle.", deck: "Pre-opening operational readiness — staffing, systems, vendor onboarding — should be on a critical path months before opening day. It rarely is.", read: "6 min read" }, { date: "2026 · 03 · 29", category: "STR & Residences", title: "What HNW owners should expect from a luxury residence operator (and almost never get).", deck: "Hospitality-grade reporting, transparent pricing, vendor governance. The bar is not high. It is simply not being met.", read: "5 min read" }]; function InsightsSection({ layout = "reading" }) { return (

The Operator's Notebook.

All articles

Field notes on owner‑side hospitality — diagnostics, capital projects, vendor governance, and the operational discipline a luxury asset deserves.

{/* Featured + reading list hybrid */}
{/* Featured */}
{POSTS[0].category} · {POSTS[0].date} · {POSTS[0].read}

{POSTS[0].title}

{POSTS[0].deck}

Read the piece
{/* Reading list */}
{POSTS.slice(1).map((p, i) => )}
{/* Upload-your-articles hint */}
Subscribe to the notebook
); } /* ---------- Closing CTA ---------- */ function ClosingCTA() { return (

Your asset deserves
an advocate.

Start with a conversation. No obligations, no pitch — just a direct assessment of where your asset stands and what it would take to perform.

Schedule a Conversation

NO COMMITMENT REQUIRED  RESPONSE WITHIN 24 HOURS

); } /* ---------- Footer ---------- */ function Footer() { return ( ); } window.BSPCaseStudies = CaseStudiesSection; window.BSPAbout = AboutSection; window.BSPInsights = InsightsSection; window.BSPCTA = ClosingCTA; window.BSPFooter = Footer;