/** Shopify CDN: Minification failed

Line 116:0 All "@import" rules must come first

**/
/* ============================================================
   PIERRE MARSON — Design Tokens
   Source of truth for all brand colours, spacing, typography.
   All other CSS files import from these variables.
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;1,300;1,400;1,500&family=Jost:wght@300;400;500&display=swap');

:root {

  /* ── Brand Colours (from PM identity file) ───────────── */
  --pm-emerald:        #174536;   /* Primary brand green  */
  --pm-emerald-deep:   #0f2b21;   /* Darker green variant */
  --pm-emerald-mid:    #204f3f;   /* Hover states         */
  --pm-gold:           #c7a463;   /* Gold accent          */
  --pm-gold-light:     #e0bc82;   /* Gold hover           */
  --pm-gold-pale:      #f0e4c8;   /* Gold tint background */
  --pm-cream:          #fafafa;   /* Page background      */
  --pm-cream-warm:     #f5f3ef;   /* Section backgrounds  */
  --pm-charcoal:       #262525;   /* Primary text         */
  --pm-stone:          #b3b3b3;   /* Secondary text       */
  --pm-stone-light:    #d9d9d9;   /* Borders, dividers    */
  --pm-white:          #ffffff;

  /* ── Semantic Aliases ────────────────────────────────── */
  --color-text-primary:    var(--pm-charcoal);
  --color-text-secondary:  var(--pm-stone);
  --color-text-accent:     var(--pm-gold);
  --color-text-inverted:   var(--pm-white);

  --color-bg-page:         var(--pm-cream);
  --color-bg-section:      var(--pm-cream-warm);
  --color-bg-dark:         var(--pm-emerald);
  --color-bg-deepdark:     var(--pm-emerald-deep);

  --color-border:          var(--pm-stone-light);
  --color-border-accent:   rgba(199, 164, 99, 0.3);
  --color-border-strong:   rgba(199, 164, 99, 0.55);

  /* ── Typography ──────────────────────────────────────── */
  --font-serif:    'Cormorant Garamond', Georgia, serif;
  --font-sans:     'Jost', Helvetica, sans-serif;

  /* Display / Editorial */
  --type-display:      clamp(3.2rem, 7vw, 6rem);
  --type-h1:           clamp(2.4rem, 5vw, 4.2rem);
  --type-h2:           clamp(1.8rem, 3.5vw, 3rem);
  --type-h3:           clamp(1.3rem, 2.2vw, 1.9rem);
  --type-h4:           1.2rem;

  /* Body / UI */
  --type-body:         1rem;         /* 16px */
  --type-body-sm:      0.9375rem;    /* 15px */
  --type-ui:           0.875rem;     /* 14px */
  --type-caption:      0.8125rem;    /* 13px */
  --type-eyebrow:      0.5625rem;    /* 9px  */
  --type-price:        0.875rem;     /* 14px */

  /* Leading */
  --leading-tight:     1.1;
  --leading-snug:      1.35;
  --leading-body:      1.9;
  --leading-loose:     2.1;

  /* Tracking */
  --tracking-tight:    -0.01em;
  --tracking-normal:   0.02em;
  --tracking-wide:     0.1em;
  --tracking-wider:    0.16em;
  --tracking-widest:   0.22em;

  /* ── Spacing (8px base grid) ─────────────────────────── */
  --space-1:    0.5rem;    /*  8px */
  --space-2:    1rem;      /* 16px */
  --space-3:    1.5rem;    /* 24px */
  --space-4:    2rem;      /* 32px */
  --space-5:    2.5rem;    /* 40px */
  --space-6:    3rem;      /* 48px */
  --space-8:    4rem;      /* 64px */
  --space-10:   5rem;      /* 80px */
  --space-12:   6rem;      /* 96px */
  --space-16:   8rem;      /* 128px */
  --space-20:   10rem;     /* 160px */
  --space-section: clamp(5rem, 10vw, 9rem);

  /* ── Layout ──────────────────────────────────────────── */
  --max-width:         1440px;
  --max-text:          640px;
  --max-narrow:        860px;
  --header-height:     72px;
  --header-height-scrolled: 60px;

  /* ── Transitions ─────────────────────────────────────── */
  --ease-out:    cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in-out: cubic-bezier(0.45, 0, 0.55, 1);
  --t-fast:      0.2s var(--ease-out);
  --t-base:      0.4s var(--ease-out);
  --t-slow:      0.7s var(--ease-out);
  --t-reveal:    0.9s var(--ease-out);

  /* ── Borders / Radius ────────────────────────────────── */
  --radius-sm:   2px;
  --radius-md:   4px;
}
/* ============================================================
   PIERRE MARSON — Design Tokens
   Source of truth for all brand colours, spacing, typography.
   All other CSS files import from these variables.
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;1,300;1,400;1,500&family=Jost:wght@300;400;500&display=swap');

:root {

  /* ── Brand Colours (from PM identity file) ───────────── */
  --pm-emerald:        #174536;   /* Primary brand green  */
  --pm-emerald-deep:   #0f2b21;   /* Darker green variant */
  --pm-emerald-mid:    #204f3f;   /* Hover states         */
  --pm-gold:           #c7a463;   /* Gold accent          */
  --pm-gold-light:     #e0bc82;   /* Gold hover           */
  --pm-gold-pale:      #f0e4c8;   /* Gold tint background */
  --pm-cream:          #fafafa;   /* Page background      */
  --pm-cream-warm:     #f5f3ef;   /* Section backgrounds  */
  --pm-charcoal:       #262525;   /* Primary text         */
  --pm-stone:          #b3b3b3;   /* Secondary text       */
  --pm-stone-light:    #d9d9d9;   /* Borders, dividers    */
  --pm-white:          #ffffff;

  /* ── Semantic Aliases ────────────────────────────────── */
  --color-text-primary:    var(--pm-charcoal);
  --color-text-secondary:  var(--pm-stone);
  --color-text-accent:     var(--pm-gold);
  --color-text-inverted:   var(--pm-white);

  --color-bg-page:         var(--pm-cream);
  --color-bg-section:      var(--pm-cream-warm);
  --color-bg-dark:         var(--pm-emerald);
  --color-bg-deepdark:     var(--pm-emerald-deep);

  --color-border:          var(--pm-stone-light);
  --color-border-accent:   rgba(199, 164, 99, 0.3);
  --color-border-strong:   rgba(199, 164, 99, 0.55);

  /* ── Typography ──────────────────────────────────────── */
  --font-serif:    'Cormorant Garamond', Georgia, serif;
  --font-sans:     'Jost', Helvetica, sans-serif;

  /* Display / Editorial */
  --type-display:      clamp(3.2rem, 7vw, 6rem);
  --type-h1:           clamp(2.4rem, 5vw, 4.2rem);
  --type-h2:           clamp(1.8rem, 3.5vw, 3rem);
  --type-h3:           clamp(1.3rem, 2.2vw, 1.9rem);
  --type-h4:           1.2rem;

  /* Body / UI */
  --type-body:         1rem;           /* 16px    */
  --type-body-sm:      0.9375rem;      /* 15px    */
  --type-ui:           0.875rem;       /* 14px    */
  --type-caption:      0.8125rem;      /* 13px    */
  --type-eyebrow:      0.703125rem;    /* 11.25px — was 9px, +25% */
  --type-price:        0.875rem;       /* 14px    */

  /* Leading */
  --leading-tight:     1.1;
  --leading-snug:      1.35;
  --leading-body:      1.9;
  --leading-loose:     2.1;

  /* Tracking */
  --tracking-tight:    -0.01em;
  --tracking-normal:   0.02em;
  --tracking-wide:     0.1em;
  --tracking-wider:    0.16em;
  --tracking-widest:   0.22em;

  /* ── Spacing (8px base grid) ─────────────────────────── */
  --space-1:    0.5rem;    /*  8px */
  --space-2:    1rem;      /* 16px */
  --space-3:    1.5rem;    /* 24px */
  --space-4:    2rem;      /* 32px */
  --space-5:    2.5rem;    /* 40px */
  --space-6:    3rem;      /* 48px */
  --space-8:    4rem;      /* 64px */
  --space-10:   5rem;      /* 80px */
  --space-12:   6rem;      /* 96px */
  --space-16:   8rem;      /* 128px */
  --space-20:   10rem;     /* 160px */
  --space-section: clamp(5rem, 10vw, 9rem);

  /* ── Layout ──────────────────────────────────────────── */
  --max-width:         1440px;
  --max-text:          640px;
  --max-narrow:        860px;
  --header-height:     72px;
  --header-height-scrolled: 60px;

  /* ── Transitions ─────────────────────────────────────── */
  --ease-out:    cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in-out: cubic-bezier(0.45, 0, 0.55, 1);
  --t-fast:      0.2s var(--ease-out);
  --t-base:      0.4s var(--ease-out);
  --t-slow:      0.7s var(--ease-out);
  --t-reveal:    0.9s var(--ease-out);

  /* ── Borders / Radius ────────────────────────────────── */
  --radius-sm:   2px;
  --radius-md:   4px;
}