/* Café 1689 — shared design tokens. Edit this file to update the visual system. */
:root {
  /* Brand and product palette */
  --color-brand: #FF6F00;
  --color-background: #f4f1e8;
  --color-text: #20221e;
  --color-text-muted: #6a6e60;
  --color-copy: #666a5e;
  --color-intro: #65685c;
  --color-caption: #676b5f;
  --color-brand-caption: #6b6d60;
  --color-border: #d7d6cb;
  --color-border-strong: #cfd0c4;
  --color-button: #24261f;
  --color-on-button: #fff;
  --color-hover: #dedcd2;
  --color-option-border: #d0d0c5;
  --color-option-active: #e5e4d9;
  --color-option-active-border: #646957;
  --color-link-border: #777b6b;
  --color-merch-surface: #e6e2d5;
  --color-merch-border: #aaa998;
  --color-gallery-surface: #e8e5db;
  --color-gallery-border: #cfcfc3;
  --color-modal-backdrop: #161a14b5;
  --shadow-mobile-menu: 0 14px 20px #20221e14;
  --color-menu-backdrop: #161a1480;
  --coffee-blend: #99cfb4;
  --coffee-aruzi: #e6d778;
  --coffee-rosado: #e5aac4;
  --coffee-geisha: #98bfd6;
  --coffee-sl28: #a299ca;

  /* Typography */
  --font-body: 'Barlow', Arial, Helvetica, sans-serif;
  --font-heading: 'Ultra', Georgia, serif;
  --text-min: 12px;
  --text-detail: 14px;
  --text-body: 16px;
  --weight-regular: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;
  --button-case: uppercase;

  /* Spacing, page layout and controls */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-7: 28px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --page-max: 1440px;
  --page-gutter: 56px;
  --section-space: 82px;
  --scroll-offset: 28px;
  --radius-pill: 30px;
  --focus-width: 3px;
  --focus-offset: 5px;

  /* Main heading scales */
  --title-hero: clamp(52px, 5.2vw, 80px);
  --title-section: clamp(32px, 3.3vw, 48px);
  --title-product: 26px;
  --title-farm: 25px;
  --title-merch: 36px;
  --title-contact: 52px;
  --seal-size: 140px;
  --seal-number: 29px;
  --seal-line-height: 1;
  --seal-gap: 2px;
  --producer-portrait-size: 160px;
  --header-compact-padding: 10px;
  --header-compact-logo: 46px;
  --brand-name-size: 20px;
  --brand-name-mobile-size: 16px;
  --detail-max-width: 1180px;
  --detail-image-height: 520px;
  --detail-thumbnail-width: 110px;
  --icon-size: 18px;
  --icon-stroke: 1.6;

  /* Motion */
  --motion-reveal: .75s;
  --motion-photo: 1s;
  --motion-dialog: .3s;
  --motion-hover: .22s;
  --motion-image-hover: .5s;
  --ease-entrance: cubic-bezier(.22, 1, .36, 1);
  --reveal-distance: 24px;
  --photo-distance: 18px;
  --dialog-distance: 14px;
  --entry-stagger: 70ms;
  --product-stagger: 80ms;
  --photo-delay: 140ms;
}
@media (max-width:1050px) {
  :root { --page-gutter:28px; --title-hero:60px; --title-merch:29px; }
}
@media (max-width:700px) {
  :root {
    --page-gutter:18px;
    --section-space:50px;
    --title-hero:clamp(40px, 11vw, 56px);
    --title-section:32px;
    --title-product:21px;
    --title-merch:29px;
    --title-contact:38px;
    --seal-size:124px;
    --seal-number:26px;
  }
}
