/* ============================================================
   GRWTH — brand tokens & base styles
   Upload to R2 and set as css_file_link for the GRWTH business.
   Black/white theme. Display face: Arial Black (system font).
   No secondary brand font yet — body runs on the neutral stack.
   ============================================================ */

/* Fallback for devices without Arial Black (most Android/Linux).
   Archivo Black is the closest free match; it only applies where
   Arial Black is missing because it sits later in the stack. */
@import url('https://fonts.googleapis.com/css2?family=Archivo+Black&display=swap');

:root {
  /* Palette — rich black, not pure #000, to match the matte bottle */
  --black: #111111;
  --ink: #111111;            /* primary text */
  --paper: #FFFFFF;          /* page background */
  --offwhite: #F4F4F2;       /* studio-grey panels, like the product shots */
  --line: #E4E4E2;           /* borders / dividers */
  --grey: #5C5C5C;           /* secondary text */
  --grey-light: #9A9A9A;     /* captions, meta */

  /* Inverse context (black sections) */
  --inv-text: #FFFFFF;
  --inv-grey: #B5B5B5;
  --inv-line: #2A2A2A;

  /* Type */
  --font-display: "Arial Black", "Arial Bold", "Archivo Black", Arial, Helvetica, sans-serif;
  --font-body: Arial, Helvetica, "Helvetica Neue", sans-serif;

  /* Wordmark geometry — condensed + slight vertical stretch.
     letter-spacing in em so it scales with size
     (-0.025em ≈ -1px at 40px). */
  --wordmark-squeeze: 0.88;   /* horizontal condense */
  --wordmark-stretch: 1.06;   /* vertical stretch */
  --wordmark-tracking: -0.025em;

  /* ---- Compatibility aliases ----
     The Men's Pharmacist blobs reference these names. Mapped to
     neutrals so any reused HTML renders mono instead of breaking.
     Delete once GRWTH has its own blobs. */
  --ink: #111111;
  --green-600: #111111;
  --mint: #F4F4F2;
  --font-mono: "Courier New", Courier, monospace;
}

/* Base */
body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font: 400 1rem/1.6 var(--font-body);
  -webkit-font-smoothing: antialiased;
}

/* Wordmark — live-text version of the logo treatment.
   Use the SVG logo for the actual lockup; use this class when the
   brand voice is needed in headings/type, e.g.:
   <span class="grwth-wordmark">GRWTH</span> */
.grwth-wordmark {
  display: inline-block;
  font-family: var(--font-display);
  font-weight: 900;
  letter-spacing: var(--wordmark-tracking);
  text-transform: uppercase;
  line-height: 1;
  transform: scale(var(--wordmark-squeeze), var(--wordmark-stretch));
  transform-origin: left center;
}

/* Display headings — same voice, gentler geometry for readability */
.grwth-display {
  font-family: var(--font-display);
  font-weight: 900;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  line-height: 0.95;
}

/* Buttons */
.grwth-btn {
  display: inline-block;
  text-decoration: none;
  font: 700 0.95rem/1 var(--font-body);
  letter-spacing: 0.01em;
  padding: 0.9rem 1.5rem;
  border-radius: 0;             /* square edges — packaging-led */
  border: 1px solid var(--black);
  cursor: pointer;
}
.grwth-btn--primary { background: var(--black); color: #fff; }
.grwth-btn--primary:hover { background: #fff; color: var(--black); }
.grwth-btn--ghost { background: transparent; color: var(--black); }
.grwth-btn--ghost:hover { background: var(--black); color: #fff; }

/* Inverse section helper (white-on-black, like the black bottle) */
.grwth-inverse {
  background: var(--black);
  color: var(--inv-text);
}
.grwth-inverse a { color: var(--inv-text); }
.tmp-marquee{background:var(--ink);color:#E9F3EE;overflow:hidden;font:500 .74rem/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase}
  .tmp-marquee__track{display:flex;gap:2.5rem;white-space:nowrap;padding:.6rem 0;animation:tmp-scroll 28s linear infinite;width:max-content}
  @keyframes tmp-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
  @media (prefers-reduced-motion:reduce){.tmp-marquee__track{animation:none}}
  .tmp-header{position:sticky;top:0;z-index:50;background:var(--paper);border-bottom:1px solid var(--line)}
  .tmp-header__inner{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;padding:.9rem 1.25rem}
  .tmp-nav{display:flex;gap:1.4rem}
  .tmp-nav a{text-decoration:none;color:var(--ink);font:500 .92rem/1 var(--font-body);padding:.35rem 0;border-bottom:2px solid transparent}
  .tmp-nav a:hover{border-bottom-color:var(--green-600)}
  .tmp-brand{width: 90px;}
  .tmp-brand svg{width: 100%}
  .tmp-actions {margin-left:auto; display:flex;align-items:center;gap:1.1rem;justify-content:flex-end}
  .tmp-actions__link{text-decoration:none;color:var(--ink);font:500 .92rem/1 var(--font-body)}
  .tmp-actions__link:hover{color:var(--green-600)}
  .tmp-cta{text-decoration:none;background:var(--green-600);color:#fff;font:600 .9rem/1 var(--font-body);padding:.65rem 1.1rem;border-radius:8px}
  .tmp-cta:hover{background:var(--ink)}
  .tmp-burger{display:none;background:none;border:0;padding:.5rem;cursor:pointer}
  .tmp-burger span{display:block;width:22px;height:2px;background:var(--ink);margin:5px 0;border-radius:2px}
  @media (max-width:880px){
    .tmp-header__inner{grid-template-columns:auto 1fr auto}
    .tmp-brand{justify-self:start;order:1}
    .tmp-actions{order:2}
    .tmp-actions__link{display:none}
    .tmp-burger{display:block}
    .tmp-nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;background:var(--paper);border-bottom:1px solid var(--line);padding:1rem 1.25rem;gap:.25rem;order:3}
    .tmp-nav.is-open{display:flex}
    .tmp-nav a{padding:.7rem 0}
  }
    .tmp-wrap{max-width:1180px;margin:0 auto;padding:0 1.25rem}
  .tmp-eyebrow{font:500 .76rem/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--green-600);margin:0 0 1rem}
  .tmp-hero{padding:4rem 0 3.5rem}
  .tmp-hero__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:3.5rem;align-items:center}
  .tmp-hero h1{margin:0 0 1.1rem;font:600 clamp(2.1rem,4.4vw,3.3rem)/1.08 var(--font-display);letter-spacing:-.02em}
  .tmp-hero__sub{margin:0 0 1.8rem;max-width:32rem;color:#3D4D45;font-size:1.08rem}
  .tmp-hero__ctas{display:flex;gap:.6rem;flex-wrap:wrap}
  .tmp-hero__note{margin:1.4rem 0 0;font:500 .76rem/1.5 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink)}
  .tmp-hero__img{width:100%;height:auto;border-radius:14px}
  .tmp-btn{display:inline-block;text-decoration:none;font:600 .95rem/1 var(--font-body);padding:.85rem 1.4rem;border-radius:9px}
  .tmp-btn--primary{background:var(--black);color:#fff}
  .tmp-btn--primary:hover{background:var(--ink)}
  .tmp-btn--ghost{color:var(--ink);border:1px solid var(--line)}
  .tmp-btn--ghost:hover{border-color:var(--green-600)}
  .tmp-btn--secondary { background: #fff; color: var(--ink); }
    .tmp-btn--secondary:hover { background: var(--ink); color: #fff; }
  .tmp-link{color:var(--green-600);text-decoration:none;font:600 .9rem/1 var(--font-body)}
  .tmp-link:hover{color:var(--ink)}
  h2{font:600 1.7rem/1.2 var(--font-display);letter-spacing:-.01em;margin:0 0 1.8rem}
  .tmp-reviews{background:var(--mint);padding:3.5rem 0}
  .tmp-reviews__row{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,1fr);gap:1.25rem;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:.5rem}
  .tmp-review{margin:0;background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:1.4rem;scroll-snap-align:start}
  .tmp-review blockquote{margin:0 0 1rem;font:400 .93rem/1.6 var(--font-body);color:#3D4D45}
  .tmp-review figcaption{font:600 .82rem/1 var(--font-body);color:var(--ink)}
  .tmp-products{padding:3.75rem 0}
  .tmp-row-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}
  .tmp-products__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem}
  .tmp-card{display:block;text-decoration:none;color:var(--ink);border:1px solid var(--line);border-radius:12px;padding:1rem;transition:border-color .15s}
  .tmp-card:hover{border-color:var(--green-600)}
  .tmp-card img{width:100%;height:auto;border-radius:8px;margin-bottom:.9rem}
  .tmp-card h3{margin:0 0 .35rem;font:600 1.02rem/1.3 var(--font-display)}
  .tmp-card p{margin:0 0 .8rem;font-size:.88rem;color:#3D4D45}
  .tmp-card__price{font:500 .8rem/1 var(--font-mono);color:var(--green-600)}
  .tmp-props{background:var(--mint);padding:3.75rem 0}
  .tmp-props__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
  .tmp-prop{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:1.25rem}
  .tmp-prop img{width:100%;height:auto;border-radius:8px;margin-bottom:1rem}
  .tmp-prop h3{margin:0 0 .5rem;font:600 1.08rem/1.3 var(--font-display)}
  .tmp-prop p{margin:0 0 .9rem;font-size:.92rem;color:#3D4D45}
  .tmp-timeline{padding:3.75rem 0}
  .tmp-timeline h2{max-width:36rem}
  .tmp-timeline__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
  .tmp-stage{border:1px solid var(--line);border-radius:12px;padding:1.5rem}
  .tmp-stage__label{font:500 .76rem/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--green-600)}
  .tmp-stage h3{margin:.8rem 0 .5rem;font:600 1.08rem/1.3 var(--font-display)}
  .tmp-stage p{margin:0 0 1rem;font-size:.92rem;color:#3D4D45}
  .tmp-stage img{width:100%;height:auto;border-radius:8px}
  .tmp-compare{background:var(--mint);padding:3.75rem 0}
  .tmp-compare table{width:100%;border-collapse:collapse;background:var(--paper);border:1px solid var(--line);border-radius:12px;overflow:hidden}
  .tmp-compare th,.tmp-compare td{padding:.9rem 1.1rem;text-align:left;font:400 .92rem/1.4 var(--font-body);border-bottom:1px solid var(--line)}
  .tmp-compare th{font-weight:600;font-family:var(--font-display)}
  .tmp-compare tbody tr:last-child td{border-bottom:0}
  .tmp-compare__us{color:var(--green-600);font-weight:600}
  .tmp-faq{padding:3.75rem 0}
  .tmp-faq details{border:1px solid var(--line);border-radius:10px;margin-bottom:.6rem;padding:0 1.1rem}
  .tmp-faq summary{cursor:pointer;font:600 .98rem/1.4 var(--font-body);padding:1rem 0;list-style-position:outside}
  .tmp-faq details p{margin:0 0 1.1rem;font-size:.93rem;color:#3D4D45;max-width:48rem}
  .tmp-support{padding:0 0 3.75rem}
  .tmp-support__grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;background:var(--ink);border-radius:16px;padding:2.5rem;color:#E9F3EE}
  .tmp-support__grid img{width:100%;height:auto;border-radius:10px}
  .tmp-support h2{color:#fff}
  .tmp-support p{margin:0 0 1.5rem;color:#BFD6CC}
  @media (max-width:880px){
    .tmp-hero__grid,.tmp-support__grid{grid-template-columns:1fr;gap:2rem}
    .tmp-products__grid{grid-template-columns:repeat(2,1fr)}
    .tmp-props__grid,.tmp-timeline__grid{grid-template-columns:1fr}
    .tmp-compare table{font-size:.85rem}
  }