/* ============================================================
   GLP-1 Off-Ramp — shared design system
   Single source of truth for the palette, type stack and base reset.
   Linked by every funnel page BEFORE its inline <style>, so each page may
   provide intentional semantic overrides. Do not fork values without a reason.
   ============================================================ */
:root {
  color-scheme: light;

  /* --- surfaces & lines --- */
  --w:          #ffffff;
  --panel:      #f6f7f8;
  --panel-2:    #f4f4f4;
  --warm:       #fff8f4;
  --bar:        #262626;
  --rule:       #cccccc;
  --line:       #dcdfe1;   /* near-dup of --line-2; candidates to merge */
  --line-2:     #dfe2e4;
  --field:      #c3c8cb;   /* input borders */

  /* --- ink --- */
  --k:          #000000;   /* checkout/thanks/upsell override to #141413 */
  --k-soft:     #333333;
  --k-mute:     #666666;
  --mute:       #6d7478;
  --soft:       #4a5155;
  --slate:      #2b3033;

  /* --- brand --- */
  --red:        #cc0000;
  --blue:       #1a5fb4;
  --blue-d:     #14488a;
  --verm:       #d1502f;   /* primary action */
  --verm-d:     #a83c1f;   /* action shadow */
  --verm-h:     #e05c38;   /* action hover */
  --green:      #22a244;   /* thanks overrides to #1f9340 */
  --green-d:    #17762f;   /* thanks overrides to #14702e */

  /* --- accents --- */
  --yellow:     #ffff00;
  --yellow-s:   #fff9cc;
  --yellow-soft:#fffbe0;
  --yl-s:       #fffbe0;   /* alias of --yellow-soft */

  /* --- Bennett brand palette --- */
  --brand-paper:          #fbfaf7;
  --brand-ink:            #23262e;
  --brand-body:           #3b3e47;
  --brand-muted:          #7c7f88;
  --brand-green:          #3f7d5c;
  --brand-green-rgb:      63, 125, 92;
  --brand-green-dark:     #2e5d44;
  --brand-green-light:    #52966f;
  --brand-green-deep:     #234934;
  --brand-green-soft:     #ecf4ef;
  --brand-green-soft-2:   #e4efe8;
  --brand-green-soft-3:   #d9e9df;
  --brand-green-line:     #d2e4d9;
  --brand-green-footer:   #193526;
  --brand-gold:           #f7de92;
  --brand-gold-soft:      #fff6d9;
  --brand-gold-ink:       #9a741a;
  --brand-hairline:       #eae6df;
  --brand-hairline-dark:  #dcd6cc;
  --brand-error:          #ffd2c7;
  --brand-error-border:   #b4432f;
  --brand-error-ink:      #9e3826;
  --brand-ink-rgb:        35, 38, 46;
  --brand-white-rgb:      255, 255, 255;
  --brand-green-dark-rgb: 46, 93, 68;
  --brand-guarantee-line: #e3c94e;
  --brand-sticky-was:     #949ca1;

  /* --- radii & elevation --- */
  --r6:         6px;
  --r:          8px;
  --r-button:   9px;
  --r-control:  10px;
  --r-sm:       12px;
  --r-card:     16px;
  --r-media:    18px;
  --r-feature:  20px;
  --r-module:   24px;
  --shadow:     0 8px 28px rgba(20, 20, 19, 0.07);
  --brand-card-shadow: 0 16px 42px rgba(var(--brand-green-rgb),.09);

  /* --- type --- */
  --brand-font: "Libre Franklin", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --head: "Noto Sans", "Helvetica Neue", Arial, sans-serif;
  --body: "Noto Sans", "Helvetica Neue", Arial, sans-serif;
  --ui:   "Noto Sans", "Helvetica Neue", Arial, sans-serif;
  --hand: "Noto Sans", "Helvetica Neue", Arial, sans-serif;
}

* { box-sizing: border-box; }

/* ------------------------------------------------------------
   Shared components — reused across more than one page. Anything
   page-specific still belongs in that page's inline <style>.
   ------------------------------------------------------------ */

/* Thin Bennett status bar shared by the purchase and post-purchase pages. */
.bar-secure { background: var(--brand-green-footer); color: var(--w); font-family: var(--brand-font); font-size: 13px;
              text-align: center; padding: 11px 16px; line-height: 1.6; }
.bar-secure strong { font-weight: bold; }
.bar-secure a { color: inherit; }

/* Server-backed personalized offer countdown shared by both sales pages. */
.offer-deadline { border: 1px solid var(--line); border-radius: var(--r);
                  background: var(--panel); color: var(--slate); padding: 16px;
                  font-family: var(--ui); text-align: center; }
.offer-deadline__clock { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr));
                         gap: 8px; margin-bottom: 10px; }
.offer-deadline__clock[hidden] { display: none; }
.offer-deadline__part { background: var(--w); border: 1px solid var(--line-2);
                        border-radius: var(--r6); padding: 8px 4px; }
.offer-deadline__part b { display: block; font-size: 24px; line-height: 1.1;
                          font-variant-numeric: tabular-nums; }
.offer-deadline__part span { display: block; margin-top: 3px; color: var(--mute);
                             font-size: 10px; font-weight: bold; letter-spacing: 0.06em;
                             text-transform: uppercase; }
.offer-deadline__status { margin: 0; font-size: 14px; line-height: 1.45; }
