/* Shared styles for /terms and /privacy.
   Same placeholder palette as index.html (which stays self-contained).
   Unlock You has no approved brand yet (W2-01) — neutral warm linen, no teal, no violet. */
:root{
  --linen:      #F6F1E8;
  --linen-hi:   #FCFAF5;
  --ink:        #2C2A26;
  --ink-soft:   #5C564D;
  --clay-deep:  #8A4230;
  --brass:      #B0873A;
  --brass-text: #6E5320;

  --sans: ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;
  --serif: "Newsreader", Georgia, "Times New Roman", serif;
  --ease: cubic-bezier(.2,.72,.24,1);
}

*,*::before,*::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; }
html,body{ overflow-x:clip; }
body{
  margin:0;
  min-height:100svh;
  background:var(--linen);
  color:var(--ink);
  font-family:var(--sans);
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  background-image:
    repeating-linear-gradient(90deg, rgba(44,42,38,.018) 0 1px, transparent 1px 3px),
    repeating-linear-gradient(0deg,  rgba(44,42,38,.016) 0 1px, transparent 1px 3px),
    radial-gradient(120% 60% at 50% 0%, rgba(255,255,255,.4), transparent 62%);
  background-attachment:fixed;
}

.wrap{
  max-width:74ch;
  margin-inline:auto;
  padding:clamp(24px,5vw,48px) clamp(20px,5vw,40px) clamp(24px,4vw,40px);
}

/* ---------- Masthead ---------- */
.masthead{
  text-align:center;
  padding-bottom:clamp(22px,3.4vw,32px);
  border-bottom:1px solid rgba(176,135,58,.42);
}
.masthead a{
  display:inline-block;
  text-decoration:none;
  border-radius:6px;
}
.masthead a:focus-visible{ outline:none; box-shadow:0 0 0 3px rgba(176,135,58,.45); }
.wordmark{
  margin:0;
  font-family:var(--mono);
  font-weight:600;
  letter-spacing:.42em;
  text-indent:.42em;
  font-size:clamp(.78rem,2.4vw,.95rem);
  color:var(--ink);
}
.wordmark__sub{
  margin:.6em 0 0;
  font-family:var(--mono);
  letter-spacing:.30em;
  text-indent:.30em;
  font-size:clamp(.54rem,1.6vw,.64rem);
  text-transform:uppercase;
  color:var(--brass-text);
}

/* ---------- Document ---------- */
.doc{ padding:clamp(26px,4vw,40px) 0 0; }
.doc h1{
  margin:0;
  font-family:var(--serif);
  font-optical-sizing:auto;
  font-weight:500;
  font-size:clamp(2rem,5.6vw,2.9rem);
  line-height:1.08;
  letter-spacing:-.014em;
  text-wrap:balance;
}
.doc .meta{
  margin:.7em 0 0;
  font-family:var(--mono);
  font-size:.68rem;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--brass-text);
}
.doc .lede{
  margin:clamp(18px,2.6vw,24px) 0 0;
  font-size:1.06rem;
  color:#463F37;
  text-wrap:pretty;
}
.doc h2{
  margin:clamp(30px,4vw,42px) 0 0;
  font-family:var(--serif);
  font-weight:600;
  font-size:clamp(1.18rem,3.2vw,1.4rem);
  line-height:1.25;
  letter-spacing:-.005em;
  color:var(--ink);
}
.doc h2 .num{
  font-family:var(--mono);
  font-size:.72em;
  font-weight:500;
  color:var(--brass-text);
  margin-right:.6em;
}
.doc p{ margin:.85em 0 0; color:#3B3630; }
.doc ul{ margin:.85em 0 0; padding-left:1.15em; color:#3B3630; }
.doc li{ margin:.45em 0 0; }
.doc li::marker{ color:var(--brass); }
.doc strong{ color:var(--ink); }
.doc a{
  color:var(--clay-deep);
  text-underline-offset:.18em;
  text-decoration-color:rgba(138,66,48,.45);
  border-radius:4px;
}
.doc a:hover{ text-decoration-color:var(--clay-deep); }
.doc a:focus-visible{ outline:none; box-shadow:0 0 0 3px rgba(176,135,58,.45); }

/* callout — used for the contact block and the coaching disclaimer */
.note{
  margin:clamp(22px,3vw,30px) 0 0;
  padding:clamp(15px,2.2vw,20px) clamp(16px,2.4vw,22px);
  background:var(--linen-hi);
  border:1px solid rgba(176,135,58,.45);
  border-radius:11px;
}
.note p:first-child{ margin-top:0; }

/* ---------- Footer ---------- */
.foot{
  margin:clamp(34px,5vw,52px) 0 0;
  padding-top:clamp(18px,2.6vw,24px);
  border-top:1px solid rgba(176,135,58,.42);
  text-align:center;
  font-family:var(--mono);
  font-size:.68rem;
  letter-spacing:.06em;
  color:var(--ink-soft);
  /* keep clear of the fixed chat-widget bubble bottom-right */
  padding-bottom:clamp(56px,14vw,72px);
}
.foot span{ white-space:nowrap; }
.foot .dot{ color:var(--brass); padding:0 .35em; }
.foot a{
  color:var(--ink-soft);
  text-decoration-color:rgba(176,135,58,.55);
  text-underline-offset:.2em;
  border-radius:4px;
}
.foot a:hover{ color:var(--ink); text-decoration-color:var(--brass); }
.foot a:focus-visible{ outline:none; box-shadow:0 0 0 3px rgba(176,135,58,.45); }

@media (prefers-reduced-motion:reduce){
  *{ animation:none !important; transition:none !important; }
}
