/* Ibogaine for Professional Boxers -- shared site stylesheet */
.ai-site {
  --ink:#112126;
  --muted:#50676e;
  --paper:#f4f1ea;
  --panel:#fbfaf6;
  --navy:#102a35;
  --line:#d4ded9;
  --aqua:#44e0bd;
  --signal:#ffb55d;
  --coral:#e97565;
  --shadow:0 18px 45px rgba(16,42,53,.10);
  color:var(--ink);
  background:var(--paper);
  font-family:"DM Sans",sans-serif;
  font-size:16px;
  line-height:1.62;
  overflow-wrap:anywhere;
}
.ai-site * { box-sizing:border-box; }
.ai-site a { color:#0a6170; text-decoration-color:#44b89d; text-underline-offset:3px; }
.ai-site a:hover { color:#a74537; }
.ai-site header {
  background:var(--navy);
  color:#eff8f5;
  border-bottom:1px solid rgba(255,255,255,.14);
}
.ai-site .nav-wrap {
  width:min(1280px,100%);
  margin:auto;
  padding:16px 28px;
  display:flex;
  gap:18px;
  align-items:center;
  min-width:0;
}
.ai-site .brand {
  display:flex;
  gap:10px;
  align-items:center;
  min-width:0;
  color:#fff;
  text-decoration:none;
}
.ai-site .logo {
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:10px;
  flex:0 0 auto;
  background:var(--aqua);
}
.ai-site .brand .brand-name {
  margin:0;
  font-family:"DM Serif Display",serif;
  font-size:1.25rem;
  font-weight:400;
  line-height:1.1;
}
.ai-site nav { margin-left:auto; min-width:0; }
.ai-site nav ul {
  display:flex;
  list-style:none;
  gap:13px;
  padding:0;
  margin:0;
  white-space:nowrap;
  overflow:auto;
}
.ai-site nav a { color:#d7e7e3; text-decoration:none; font-size:.78rem; }
.ai-site nav a:hover { color:var(--aqua); }
.ai-site nav a[aria-current="page"] { color:var(--aqua); font-weight:600; }
.ai-site .tag {
  border:1px solid rgba(68,224,189,.45);
  color:#c8f8ed;
  border-radius:999px;
  padding:7px 10px;
  white-space:nowrap;
  font-size:.76rem;
}
.ai-site .hero {
  background:var(--navy);
  color:#f4fbf9;
  padding:48px 0 70px;
}
.ai-site .hero-grid,
.ai-site main,
.ai-site .page-head,
.ai-site footer { width:min(1280px,100%); margin:auto; padding-left:28px; padding-right:28px; }
.ai-site .hero-grid {
  display:grid;
  grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);
  gap:34px;
  align-items:stretch;
}
.ai-site .eyebrow,.ai-site .micro {
  margin:0 0 10px;
  color:#56dfbe;
  font-family:"DM Mono",monospace;
  font-size:.75rem;
  letter-spacing:.10em;
  text-transform:uppercase;
}
.ai-site .hero h1 {
  margin:0 0 16px;
  max-width:760px;
  font-family:"DM Serif Display",serif;
  font-size:clamp(2.1rem,4.6vw,3.9rem);
  font-weight:400;
  line-height:1.06;
}
.ai-site p { margin:0 0 16px; }
.ai-site .lede { font-size:1.13rem; color:#d4e3df; max-width:700px; }
.ai-site .hero a { color:#8bf1d8; }
.ai-site .hero-widgets {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:26px;
}
.ai-site .widget,.ai-site .panel,.ai-site .card {
  min-width:0;
  border:1px solid var(--line);
  border-radius:16px;
  background:rgba(255,255,255,.82);
  box-shadow:var(--shadow);
}
.ai-site .widget {
  padding:16px;
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.16);
  box-shadow:none;
}
.ai-site .kpi { font-family:"DM Mono",monospace; font-size:1.2rem; color:#fff; }
.ai-site .kpi small { display:block; margin-top:4px; color:#a8c3bb; font-size:.67rem; text-transform:uppercase; }
.ai-site .spark { margin:14px 0 11px; height:6px; background:rgba(255,255,255,.12); border-radius:99px; }
.ai-site .spark i { display:block; width:82%; height:100%; border-radius:99px; background:var(--aqua); }
.ai-site .widget .micro { color:#d8ece6; font-family:"DM Sans",sans-serif; font-size:.78rem; letter-spacing:0; text-transform:none; }
.ai-site .hero-media { min-height:430px; overflow:hidden; }
.ai-site img { display:block; width:100%; height:100%; object-fit:cover; }
.ai-site main { padding-top:0; padding-bottom:0; }
.ai-site .page-head { padding:44px 0 32px; border-bottom:1px solid var(--line); }
.ai-site .page-head .eyebrow { color:#0a6170; }
.ai-site .page-head h1 {
  margin:0 0 14px;
  max-width:850px;
  color:var(--navy);
  font-family:"DM Serif Display",serif;
  font-size:clamp(2rem,3.8vw,3.1rem);
  font-weight:400;
  line-height:1.08;
}
.ai-site .page-head .lede { color:var(--muted); font-size:1.05rem; max-width:760px; }
.ai-site article > section {
  padding:64px 0;
  border-bottom:1px solid var(--line);
}
.ai-site h2 {
  max-width:850px;
  margin:0 0 23px;
  color:var(--navy);
  font-family:"DM Serif Display",serif;
  font-size:clamp(2rem,3.6vw,3rem);
  font-weight:400;
  line-height:1.1;
  text-transform:lowercase;
}
.ai-site article > section > p { max-width:860px; }
.ai-site strong { font-weight:700; color:#1c3439; }
.ai-site .img-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
  margin-top:30px;
}
.ai-site figure { margin:0; overflow:hidden; }
.ai-site figure img { aspect-ratio:3/2; }
.ai-site .img-note {
  padding:13px 15px;
  margin:0;
  background:#fdfcf9;
  color:var(--muted);
  font-size:.86rem;
}
.ai-site .card { padding:22px; transition:transform .2s ease, box-shadow .2s ease; }
.ai-site .card:hover { transform:translateY(-4px); box-shadow:0 22px 42px rgba(16,42,53,.14); }
.ai-site .card ul { margin:0; padding-left:20px; }
.ai-site .card li + li { margin-top:10px; }
.ai-site .widgets-row,.ai-site .compare {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}
.ai-site .compare { grid-template-columns:repeat(3,minmax(0,1fr)); }
.ai-site .pill {
  display:inline-block;
  padding:5px 9px;
  margin-bottom:13px;
  border-radius:999px;
  font-family:"DM Mono",monospace;
  font-size:.72rem;
  letter-spacing:.04em;
}
.ai-site .good { background:#daf8ef; color:#155a4d; }
.ai-site .warn { background:#fff0d8; color:#88511a; }
.ai-site .bad { background:#fde4df; color:#8d3329; }
.ai-site .callout {
  margin:25px 0;
  max-width:860px;
  padding:18px 22px;
  border-left:4px solid var(--coral);
  background:#fdecea;
  color:#5f231b;
  font-size:.98rem;
}
.ai-site .callout strong { color:#5f231b; }
.ai-site blockquote {
  margin:25px 0;
  max-width:860px;
  padding:18px 22px;
  border-left:4px solid var(--aqua);
  background:#e7f5ef;
  color:#24454c;
  font-family:"DM Serif Display",serif;
  font-size:1.25rem;
  line-height:1.4;
}
.ai-site .workflow {
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);
  gap:32px;
  align-items:start;
}
.ai-site .workflow h2 { margin-top:0; }
.ai-site .sticky { position:sticky; top:20px; padding:22px; border-radius:16px; background:#173842; color:#effaf6; box-shadow:var(--shadow); }
.ai-site .sticky strong { color:#fff; }
.ai-site .sticky .micro { color:#bce0d6; }
.ai-site .checklist { display:grid; gap:13px; }
.ai-site .check { display:flex; gap:10px; align-items:flex-start; padding-top:13px; border-top:1px solid rgba(255,255,255,.16); font-size:.9rem; }
.ai-site .check svg { flex:0 0 auto; margin-top:4px; }
.ai-site .bar { margin-top:25px; height:9px; border-radius:999px; background:#d9e4df; overflow:hidden; max-width:680px; }
.ai-site .bar i { display:block; height:100%; background:linear-gradient(90deg,var(--aqua),#1a8a87); border-radius:999px; }
.ai-site .tabs { background:#dfece8; margin-left:-28px; margin-right:-28px; padding-left:28px!important; padding-right:28px!important; }
.ai-site .tab-nav { display:flex; gap:8px; border-bottom:1px solid #bdd2cb; padding-bottom:14px; margin-bottom:20px; }
.ai-site .tab-nav a { padding:10px 14px; border-radius:10px; background:#f9fcfb; text-decoration:none; font-weight:600; font-size:.9rem; }
.ai-site .tab-nav a[aria-current="true"] { background:var(--navy); color:#fff; }
.ai-site .tab-panels { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.ai-site .panel-wrap { min-width:0; padding:19px; border-radius:14px; background:rgba(255,255,255,.68); border:1px solid #c5d8d1; }
.ai-site .panel-wrap .card { box-shadow:none; background:#fbfdfc; }
.ai-site details { max-width:900px; padding:17px 0; border-top:1px solid var(--line); }
.ai-site details:last-child { border-bottom:1px solid var(--line); }
.ai-site summary { cursor:pointer; color:#173942; font-weight:700; display:flex; gap:10px; align-items:center; }
.ai-site summary svg { flex:0 0 auto; }
.ai-site details p { margin:14px 0 0 26px; max-width:800px; }
.ai-site .page-nav-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-top:14px;
}
.ai-site .page-nav-card {
  display:block;
  padding:20px;
  border-radius:14px;
  border:1px solid var(--line);
  background:var(--panel);
  text-decoration:none;
  box-shadow:var(--shadow);
}
.ai-site .page-nav-card:hover { transform:translateY(-3px); }
.ai-site .page-nav-card .micro { color:#0a6170; margin-bottom:8px; }
.ai-site .page-nav-card h4 { margin:0 0 8px; color:var(--navy); font-family:"DM Serif Display",serif; font-weight:400; font-size:1.3rem; }
.ai-site .page-nav-card p { margin:0; color:var(--muted); font-size:.9rem; }
.ai-site footer { padding-top:46px; padding-bottom:46px; color:#cbe0db; background:var(--navy); }
.ai-site footer p { max-width:900px; }
.ai-site footer strong { color:#fff; }
.ai-site footer a { color:#86efd5; }
.ai-site footer .disclosure { margin-top:26px; padding-top:22px; border-top:1px solid rgba(255,255,255,.14); font-size:.85rem; color:#9fbab3; }
@media (max-width:1024px) {
  .ai-site .nav-wrap { align-items:flex-start; flex-wrap:wrap; }
  .ai-site nav { order:3; width:100%; margin-left:0; }
  .ai-site .hero-grid { grid-template-columns:minmax(0,1fr) minmax(0,.82fr); }
  .ai-site .widgets-row { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ai-site .compare { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ai-site .tab-panels { grid-template-columns:1fr; }
  .ai-site .page-nav-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:768px) {
  .ai-site .nav-wrap,.ai-site .hero-grid,.ai-site main,.ai-site .page-head,.ai-site footer { padding-left:20px; padding-right:20px; }
  .ai-site .hero { padding-top:35px; padding-bottom:48px; }
  .ai-site .hero-grid,.ai-site .workflow,.ai-site .img-grid,.ai-site .compare,.ai-site .page-nav-grid { grid-template-columns:1fr; }
  .ai-site .hero-media { min-height:300px; }
  .ai-site .hero-widgets { grid-template-columns:1fr; }
  .ai-site article > section { padding:46px 0; }
  .ai-site .tabs { margin-left:-20px; margin-right:-20px; padding-left:20px!important; padding-right:20px!important; }
  .ai-site .sticky { position:static; }
  .ai-site .tag { display:none; }
}
@media (max-width:320px) {
  .ai-site .nav-wrap,.ai-site .hero-grid,.ai-site main,.ai-site .page-head,.ai-site footer { padding-left:14px; padding-right:14px; }
  .ai-site .tabs { margin-left:-14px; margin-right:-14px; padding-left:14px!important; padding-right:14px!important; }
  .ai-site .brand .brand-name { font-size:1.08rem; }
  .ai-site .widgets-row { grid-template-columns:1fr; }
  .ai-site .tab-nav { overflow:auto; }
}
@media (prefers-reduced-motion:reduce) {
  .ai-site * { scroll-behavior:auto!important; transition:none!important; }
}
