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

:root {
  --stone:       #5A4E3A;
  --stone-mid:   #6E6050;
  --stone-soft:  #8A7A68;
  --stone-pale:  #F5F0E8;
  --stone-mist:  #FAF8F4;
  --stone-border:#DDD4C0;

  --bg:          #FFFFFF;
  --bg-2:        #F8F5F0;
  --bg-3:        #F0EBE2;
  --border:      rgba(90,78,58,0.10);
  --border-mid:  rgba(90,78,58,0.18);

  --ink:         #1A1410;
  --ink-2:       #352C22;
  --ink-3:       #6A5C4A;
  --ink-4:       #9A8E7A;

  --brass:       #9A7010;
  --brass-light: #B88A20;
  --brass-pale:  #FBF6E8;

  --display: "Cormorant Garamond", Georgia, serif;
  --body:    "Cormorant Garamond", Georgia, serif;
  --sans:    "Outfit", system-ui, sans-serif;

  --gutter: clamp(16px,4vw,56px);
  --maxw: 1260px; --maxw-narrow: 740px;
  --radius: 6px; --radius-lg: 12px;
  --shadow-sm: 0 1px 4px rgba(26,20,16,0.06);
  --shadow: 0 4px 16px rgba(26,20,16,0.09);
  --shadow-lg: 0 12px 40px rgba(26,20,16,0.12);

  /* Legacy aliases */
  --forest: var(--stone); --forest-mid: var(--stone-mid); --forest-soft: var(--stone-soft);
  --forest-pale: var(--stone-pale); --forest-mist: var(--stone-mist);
  --sand: var(--bg-2); --sand-deep: var(--bg-3); --sand-card: var(--bg); --sand-border: var(--stone-border);
  --clay: var(--stone); --clay-deep: var(--stone-mid);
  --cream: var(--bg-2); --cream-deep: var(--bg-3); --cream-card: var(--bg); --cream-border: var(--stone-border);
  --gold: var(--brass); --gold-light: var(--brass-light);
  --ink-soft: var(--ink-2); --ink-mute: var(--ink-3); --ink-faint: var(--ink-4);
  --navy: var(--stone); --navy-soft: var(--stone-mid);
  --serif: var(--display); --green-ok: #2A5A3A;
}
*, *::before, *::after { box-sizing:border-box; }
html { -webkit-font-smoothing:antialiased; }
body { margin:0; padding:0; background:var(--bg); color:var(--ink); font-family:var(--sans); font-size:16px; line-height:1.65; }
a { color:inherit; text-decoration:none; }
img { max-width:100%; display:block; }
p { margin:0 0 1em; }
.container { max-width:var(--maxw); margin:0 auto; padding:0 var(--gutter); }
.container-narrow { max-width:var(--maxw-narrow); margin:0 auto; padding:0 var(--gutter); }
.label { font-family:var(--sans); font-size:10px; font-weight:600; letter-spacing:0.18em; text-transform:uppercase; color:var(--ink-3); }
.label-brass { color:var(--brass); }
.label-white { color:rgba(255,255,255,0.5); }
.eyebrow { font-family:var(--sans); font-size:10px; font-weight:600; letter-spacing:0.18em; text-transform:uppercase; color:var(--stone-soft); }
.eyebrow-mute { font-family:var(--sans); font-size:10px; font-weight:500; letter-spacing:0.14em; text-transform:uppercase; color:var(--ink-4); }
.meta { font-family:var(--sans); font-size:13px; color:var(--ink-3); }
.tag { display:inline-flex; font-family:var(--sans); font-size:10px; font-weight:600; letter-spacing:0.12em; text-transform:uppercase; padding:3px 9px; border-radius:3px; }
.tag-forest  { background:var(--bg-3); color:var(--stone); border:1px solid var(--stone-border); }
.tag-brass   { background:var(--brass-pale); color:var(--brass); border:1px solid rgba(154,112,16,0.3); }
.tag-outline { border:1px solid var(--stone); color:var(--stone); }
.tag-clay    { background:var(--bg-3); color:var(--stone); border:1px solid var(--stone-border); }
.tag-terra   { background:var(--brass-pale); color:var(--brass); border:1px solid rgba(154,112,16,0.3); }
.rule { border:none; border-top:1px solid var(--border); }
.rule-mid { border:none; border-top:1px solid var(--border-mid); }
.rule-forest { border:none; border-top:2px solid var(--stone); }
.rule-brass  { border:none; border-top:2px solid var(--brass); }
.rule-strong { border:none; border-top:2px solid var(--ink); }
.rule-clay   { border:none; border-top:2px solid var(--stone); }
.section { padding:60px 0; }
.section-sm { padding:36px 0; }
.section-sand { background:var(--bg-2); padding:60px 0; }
.section-band { background:var(--bg-2); padding:60px 0; }
.section-forest { background:var(--bg-3); border-top:1px solid var(--stone-border); border-bottom:1px solid var(--stone-border); padding:64px 0; }
.section-dark { background:var(--ink); color:#fff; padding:64px 0; }
/* Honey rec — minimal referral strip */
.honey-rec { background:var(--stone-pale); border:1px solid var(--stone-border); border-radius:var(--radius-lg); padding:18px; }
.honey-rec::before { display:none; }
.honey-rec-badge { font-family:var(--sans); font-size:9px; font-weight:600; letter-spacing:0.18em; text-transform:uppercase; color:var(--stone-soft); margin-bottom:6px; }
.honey-rec-name { font-family:var(--display); font-size:19px; font-weight:600; color:var(--ink); margin:3px 0 3px; }
.honey-rec-stars { color:var(--brass-light); font-size:13px; letter-spacing:1px; margin-bottom:4px; }
.honey-rec-quote { font-family:var(--body); font-style:italic; font-size:14px; color:var(--ink-3); line-height:1.5; margin:8px 0 10px; }
.honey-rec-list { list-style:none; padding:0; margin:0 0 12px; display:flex; flex-direction:column; gap:4px; }
.honey-rec-list li { font-family:var(--sans); font-size:11.5px; color:var(--ink-3); }
.honey-rec-list li::before { content:"✓ "; color:var(--stone); font-weight:700; }
.honey-rec-cta { display:inline-flex; background:var(--ink); color:#fff; font-family:var(--sans); font-size:12px; font-weight:600; padding:10px 16px; border-radius:var(--radius); transition:background 0.15s; }
.honey-rec-cta:hover { background:var(--ink-2); }
.honey-rec-disclaimer { font-family:var(--sans); font-size:10px; color:var(--ink-4); margin-top:8px; }
.honey-rec-disclaimer a { text-decoration:underline; color:var(--ink-3); }
.dropcap::first-letter { font-family:var(--display); font-size:5em; float:left; line-height:0.82; margin:6px 12px 0 0; color:var(--stone); font-weight:600; }
.progress-bar { position:fixed; top:0; left:0; right:0; height:3px; background:var(--border); z-index:9999; }
.progress-fill { height:100%; width:0; background:var(--brass); transition:width 0.1s; }
.breadcrumb { background:var(--bg-2); border-bottom:1px solid var(--border); padding:10px 0; }
.breadcrumb .container { display:flex; align-items:center; gap:8px; }
.breadcrumb a { font-family:var(--sans); font-size:12px; color:var(--stone); }
.breadcrumb span { font-family:var(--sans); font-size:12px; color:var(--ink-3); }
.breadcrumb .current { color:var(--ink-2); }
.data-block { background:var(--bg); border:1px solid var(--border); border-radius:var(--radius-lg); overflow:hidden; margin:28px 0; box-shadow:var(--shadow-sm); }
.data-block-head { padding:10px 16px; background:var(--bg-2); border-bottom:1px solid var(--border); }
.data-table { width:100%; border-collapse:collapse; font-family:var(--sans); font-size:13px; }
.data-table th { padding:9px 16px; text-align:left; font-weight:600; font-size:10px; letter-spacing:0.1em; text-transform:uppercase; color:var(--ink-3); background:var(--bg-2); border-bottom:1px solid var(--border); }
.data-table td { padding:10px 16px; border-bottom:1px solid var(--border); color:var(--ink-2); }
.data-table tr:last-child td { border-bottom:none; }
.data-table tbody tr:hover { background:var(--stone-mist); }
.pull-quote { margin:28px 0; padding:22px 26px; background:var(--stone-pale); border-left:3px solid var(--stone); border-radius:0 var(--radius) var(--radius) 0; }
.pull-quote p { font-family:var(--display); font-size:1.3em; font-style:italic; color:var(--stone); margin:0 0 8px; line-height:1.4; }
.pull-quote cite { font-family:var(--sans); font-size:11px; color:var(--ink-3); font-style:normal; }
@keyframes ticker { 0%{transform:translateX(0)} 100%{transform:translateX(-50%)} }

.honey-rec-cta, .honey-rec-cta:visited, .honey-rec-cta:hover, a.honey-rec-cta { color:#fff !important; text-decoration:none !important; }
