/* Kyros Advisors - shared styling for the legal pages and the site footer */

:root{
  --ink:#2D3238;
  --ink-2:rgba(45,50,56,.72);
  --ink-3:#878E97;
  --paper:#F4F5F2;
  --paper-2:#E9EDF2;
  --card:#F4F5F2;
  --line:#D7DEE8;
  --line-soft:#E9EDF2;
  --azure:#2457A6;
  --sky:#6E90C9;
  --monarch:#4E7A63;

  --display:"Archivo",system-ui,sans-serif;
  --body:"Source Serif 4",Georgia,serif;
  --mono:"IBM Plex Mono",ui-monospace,monospace;

  --gutter:clamp(20px,5vw,64px);
  --maxw:1180px;
}

@font-face{font-family:"Archivo";src:url(fonts/archivo-latin.woff2) format("woff2");
  font-weight:100 900;font-stretch:62% 125%;font-display:swap}
@font-face{font-family:"Source Serif 4";src:url(fonts/serif-latin.woff2) format("woff2");
  font-weight:200 900;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url(fonts/mono-400.woff2) format("woff2");
  font-weight:400;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url(fonts/mono-500.woff2) format("woff2");
  font-weight:500;font-display:swap}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:var(--paper);color:var(--ink);
  font-family:var(--body);font-size:17px;line-height:1.68;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}
img,svg{display:block;max-width:100%}
a{color:inherit}
:focus-visible{outline:2px solid var(--azure);outline-offset:3px;border-radius:2px}
.wrap{width:100%;max-width:var(--maxw);margin:0 auto;padding-inline:var(--gutter)}
.skip{
  position:absolute;left:-9999px;top:0;z-index:100;
  background:var(--ink);color:#fff;padding:12px 18px;border-radius:0 0 3px 0;
  font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;
  text-decoration:none;
}
.skip:focus{left:0}

h1,h2,h3{font-family:var(--display);margin:0;color:var(--ink);text-wrap:balance}
h1{font-size:clamp(2.1rem,5vw,3.4rem);font-variation-settings:"wdth" 106,"wght" 780;
   line-height:1.03;letter-spacing:-.018em}
h2{font-size:clamp(1.3rem,2.6vw,1.65rem);font-variation-settings:"wdth" 102,"wght" 720;
   line-height:1.2;letter-spacing:-.008em;margin:48px 0 14px}
h3{font-size:1.06rem;font-variation-settings:"wdth" 100,"wght" 680;margin:28px 0 8px}
p{margin:0 0 1.05em}
p:last-child{margin-bottom:0}
strong{font-weight:600}

/* ---------- page head ---------- */
.legal-nav{border-bottom:1px solid var(--line);background:var(--paper)}
.legal-nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;height:74px}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none}
.mark{width:34px;height:34px;border-radius:50%;background:var(--ink);display:grid;place-items:center;flex:none}
.mark span{font-family:var(--display);color:#fff;font-size:19px;line-height:1;
  font-variation-settings:"wdth" 92,"wght" 700;transform:translateY(-1px)}
.brand b{font-family:var(--display);font-size:15px;letter-spacing:.14em;
  font-variation-settings:"wdth" 100,"wght" 700}
.brand small{display:block;font-family:var(--mono);font-size:9px;letter-spacing:.22em;
  color:var(--ink-3);margin-top:2px}
.back{font-family:var(--mono);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;
  text-decoration:none;color:var(--ink-2);display:flex;align-items:center;gap:8px}
.back:hover{color:var(--azure)}
.back svg{width:13px;height:13px}

/* ---------- article ---------- */
.legal-head{padding:clamp(56px,8vw,96px) 0 0}
.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--ink-3);margin:0 0 18px;display:flex;align-items:center;gap:12px}
.eyebrow::before{content:"";width:26px;height:1px;background:var(--monarch);flex:none}
.updated{font-family:var(--mono);font-size:12px;letter-spacing:.06em;color:var(--ink-3);margin-top:20px}
.legal{padding:8px 0 clamp(64px,9vw,110px);max-width:74ch}
.legal .lede{font-size:clamp(1.02rem,2vw,1.18rem);color:var(--ink-2);margin:26px 0 8px;
  font-family:var(--display);font-variation-settings:"wdth" 96,"wght" 450;line-height:1.55}
.legal ul{margin:0 0 1.1em;padding-left:0;list-style:none}
.legal li{position:relative;padding-left:22px;margin-bottom:9px}
.legal li::before{content:"";position:absolute;left:0;top:13px;width:9px;height:1px;background:var(--monarch)}
.legal a{color:var(--azure);text-underline-offset:3px}
.legal table{width:100%;border-collapse:collapse;margin:0 0 1.4em;font-size:15.5px}
.legal th,.legal td{text-align:left;vertical-align:top;padding:11px 14px;border-bottom:1px solid var(--line)}
.legal th{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--ink-3);font-weight:400;border-bottom-color:var(--ink-3)}
.callout{border:1px solid var(--line);border-left:2px solid var(--monarch);
  border-radius:3px;padding:20px 22px;margin:0 0 1.3em;background:#fff}
.callout p{font-size:16px}

@media(max-width:520px){
  body{font-size:16px}
  .legal-nav .wrap{height:66px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{animation-duration:.01ms!important;transition-duration:.01ms!important}
}
