/*
Theme Name: Bonean Bar
Theme URI: https://boneanbar.com
Author: Bonean Bar
Author URI: https://boneanbar.com
Description: Four Seasons-grade architectural mobile cocktail salon and bespoke mixology salon for high-net-worth estate weddings, private residential galas, and VIP executive activations across Toronto, Yorkville, The Bridle Path, Forest Hill, Muskoka, and the Niagara Escarpment.
Version: 1.0.11
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 8.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: bonean-bar
Tags: luxury, architectural, mobile-bar, cocktail, mixology, events, bespoke, wedding, toronto, muskoka, bonean-bar
*/

/* Direct CSS @import for Google Fonts (Failsafe Loading) */
@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;500;600;700;800;900&family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&family=Montserrat:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400&display=swap');

/* ==========================================================================
   BONEAN BAR DESIGN SYSTEM — REGAL ARCHITECTURAL HOSPITALITY
   Luminous warm alabaster silk canvas, monumental Cinzel Roman inscriptional
   serif typography paired with architectural Montserrat & Cormorant Garamond.
   ========================================================================== */

:root {
  color-scheme: light !important;
  /* Luminous Warm Alabaster Silk Palette */
  --color-canvas: #FAF8F5;            /* Luminous Warm Alabaster Silk (Light, warm, airy) */
  --color-surface: #F4F0E8;           /* Pale Bone / Warm Linen */
  --color-elevated: #ECE6DC;          /* Soft Bisque / Warm Sandstone */
  --color-text-primary: #181513;      /* Deep Velvet Espresso (Extreme high contrast, never pure #000) */
  --color-text-secondary: #5C554E;    /* Warm Charcoal Umber (Airy editorial subtext) */
  --color-accent: #A3785E;            /* Warm Bronze Cognac / Terracotta */
  --color-accent-subtle: rgba(163, 120, 94, 0.10);
  --color-border: rgba(24, 21, 19, 0.08); /* Ultra-fine Gossamer Mineral Hairline */
  --color-border-strong: rgba(24, 21, 19, 0.18);
  --color-scrim: rgba(24, 21, 19, 0.72);
  --color-dock-bg: rgba(250, 248, 245, 0.94);

  /* Architectural Roman & Haute Typography Stacks */
  --font-display: 'Cinzel', 'Trajan Pro', Georgia, serif; /* Monumental Roman Serif for Brand Monogram & Navigation */
  --font-headline: 'Cormorant Garamond', 'EB Garamond', Garamond, Georgia, serif; /* Haute Editorial Display for All Headlines, Section Titles & Bar Names */
  --font-serif-italic: 'Cormorant Garamond', 'EB Garamond', Georgia, serif;
  --font-sans: 'Montserrat', 'Jost', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --font-mono: 'SF Mono', Consolas, Menlo, Monaco, monospace;

  /* Scale & Spacing */
  --header-height: 88px;
  --header-height-mobile: 74px;
  --dock-height-mobile: 76px;
  --container-max-width: 1480px;
  --container-editorial-width: 1220px;
  --transition-smooth: cubic-bezier(0.16, 1, 0.3, 1);
  --transition-slow: cubic-bezier(0.25, 1, 0.5, 1);
}

/* Base Reset */
*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  font-size: 16px;
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
  background-color: var(--color-canvas);
  color: var(--color-text-primary);
}

body {
  font-family: var(--font-sans);
  font-weight: 400;
  color: var(--color-text-primary);
  background-color: var(--color-canvas);
  line-height: 1.72;
  letter-spacing: -0.005em;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-x: hidden;
}

/* Strict Pill Restriction Rule Enforcement:
   ONLY the primary CTA (.btn-pill-cta) may have rounded-full.
   All cards, inputs, modules, badges must be sharp architectural edges (0px). */
img, video, canvas, svg {
  display: block;
  max-width: 100%;
  height: auto;
  border-radius: 0;
}

a {
  color: inherit;
  text-decoration: none;
  transition: color 0.3s var(--transition-smooth);
}

button, input, select, textarea {
  font-family: inherit;
  font-size: inherit;
  color: inherit;
}

::selection {
  background: var(--color-accent);
  color: var(--color-canvas);
}

/* ==========================================================================
   EXPLICIT TYPOGRAPHY DIRECTIVES (BULLETPROOF OVERRIDES)
   ========================================================================== */

/* 1. Cormorant Garamond: All Headlines, Section Titles, Bar Names & Quotes */
h1, h2, h3, h4, h5, h6,
.editorial-heading-lg,
.hero-fs-headline,
.editorial-page-title,
.installation-title,
.deepdive-title,
.card-bar-title,
.material-title,
.pour-name,
.menu-card-name,
.stage-title,
.accord-title,
.panel-title,
.result-title,
.plaque-title,
.metric-title,
.manifesto-quote-block blockquote {
  font-family: 'Cormorant Garamond', 'EB Garamond', Garamond, Georgia, serif !important;
}

/* 2. Cinzel: Brand Lockup, Navigation Bar, Header CTA & Architectural Numerals */
.brand-monogram,
.brand-sub,
.nav-link,
.header-cta,
.drawer-brand,
.drawer-nav-item,
.material-roman-numeral,
.bp-strip-num,
.doctrine-num,
.stage-number,
.step-num {
  font-family: 'Cinzel', 'Trajan Pro', Georgia, serif !important;
}

/* 3. Montserrat: Body Copy, Paragraphs, Technical Specs & Form Inputs */
body, p, input, select, textarea,
.editorial-subtext,
.hero-fs-lead,
.bp-strip-desc,
.installation-narrative,
.deepdive-lead,
.manifesto-paragraph,
.stage-desc,
.accord-desc {
  font-family: 'Montserrat', 'Jost', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
}

/* 4. Cormorant Garamond Italic Accents */
h1 em, h2 em, h3 em, h4 em,
.hero-fs-headline em,
.editorial-heading-lg em,
.editorial-page-title em,
.section-title em {
  font-family: 'Cormorant Garamond', 'EB Garamond', Georgia, serif !important;
  font-style: italic !important;
  font-weight: 400 !important;
}
