/* Shared styling for iJeeto's legal + info pages.
   Brand palette sampled from the iJeeto star logo (guidelines 9.3). */
:root {
  --purple: #4A1A63;
  --purple-dark: #351048;
  --purple-soft: #6B3A85;
  --amber: #FFC42E;
  --orange: #FF7A2F;
  --orange-dark: #DD5E15;
  --teal: #2FAFAF;
  --cream: #FFF7EA;
  --cream-2: #FCEBD2;
  --font-brand: ui-rounded, "SF Pro Rounded", Nunito, Quicksand,
                "Hiragino Maru Gothic ProN", "Trebuchet MS", system-ui, sans-serif;
}

* { box-sizing: border-box; margin: 0; padding: 0; }

body {
  font-family: var(--font-brand);
  background: var(--cream);
  color: var(--purple);
  line-height: 1.65;
  padding: 28px 18px 56px;
  background-image:
    radial-gradient(circle at 12% 4%, rgba(255,196,46,0.18), transparent 38%),
    radial-gradient(circle at 88% 2%, rgba(47,175,175,0.14), transparent 36%);
  background-repeat: no-repeat;
}

.wrap { width: min(720px, 100%); margin: 0 auto; }

/* ---- header ---- */
.top { display: flex; align-items: center; gap: 12px; margin-bottom: 26px; }
.top img { width: 46px; height: 46px; }
.top a { text-decoration: none; color: inherit; display: flex; align-items: center; gap: 12px; }
.top strong { font-size: 20px; }
.top strong .i { color: var(--orange); }

h1 { font-size: clamp(26px, 5.5vw, 34px); letter-spacing: -0.4px; margin-bottom: 6px; }
.updated { color: var(--purple-soft); font-size: 14px; margin-bottom: 28px; }

h2 {
  font-size: clamp(18px, 3.6vw, 21px);
  margin: 30px 0 10px;
  padding-top: 18px;
  border-top: 2px solid var(--cream-2);
}
h2:first-of-type { border-top: none; padding-top: 0; }
h3 { font-size: 16px; margin: 18px 0 6px; color: var(--purple-soft); }

p, li { font-size: 16px; }
p { margin-bottom: 12px; }
ul, ol { margin: 0 0 14px 22px; }
li { margin-bottom: 7px; }
strong { color: var(--purple-dark); }
a { color: var(--orange-dark); }

/* ---- callout box, used for the promises that matter ---- */
.note {
  background: #fff;
  border: 2px solid var(--cream-2);
  border-left: 5px solid var(--teal);
  border-radius: 14px;
  padding: 15px 18px;
  margin: 18px 0;
}
.note.warm { border-left-color: var(--orange); }
.note p:last-child { margin-bottom: 0; }

/* ---- key/value table for company details ---- */
.facts { width: 100%; border-collapse: collapse; margin: 14px 0 20px; }
.facts th, .facts td {
  text-align: left; vertical-align: top;
  padding: 10px 12px;
  border-bottom: 2px solid var(--cream-2);
  font-size: 15px;
}
.facts th { width: 34%; color: var(--purple-soft); font-weight: 700; }

/* ---- footer nav ---- */
footer {
  margin-top: 44px; padding-top: 20px;
  border-top: 2px solid var(--cream-2);
  font-size: 13px; color: var(--purple-soft);
}
footer nav { display: flex; flex-wrap: wrap; gap: 8px 18px; margin-bottom: 12px; }
footer a { color: var(--purple-soft); }
.entity { font-size: 12px; line-height: 1.55; }

/* touch targets stay finger-sized on phones (guidelines 6) */
footer a, .top a { display: inline-block; min-height: 24px; }
