/* Omerica Studios legal hub - brand redesign 2026-08-16.
   Palette + fonts match omericastudios.com (site-bundle tokens).
   House rules: no dark mode, no em-dashes, body text >= 14px. */

@font-face{font-family:'Cinzel';font-style:normal;font-weight:500 700;font-display:swap;src:url(fonts/cinzel-latin.woff2) format('woff2')}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:500 700;font-display:swap;src:url(fonts/cormorant-garamond-latin.woff2) format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url(fonts/inter-latin.woff2) format('woff2')}

:root{
  --ottoman:#8b1a1a; --ottoman-deep:#5a0e0e;
  --gold:#c9a049; --cobalt:#1e3a8a; --cobalt-deep:#0f2657;
  --cream:#f5ecd9; --cream-2:#fbf6e9; --paper:#fffdf7;
  --ink:#1a1610; --ink-2:#3b3528; --ink-3:#6d6453;
  --rule-gold:rgba(201,160,73,.30); --rule-cobalt:rgba(15,38,87,.14);
  --serif:'Cormorant Garamond',Georgia,'Times New Roman',serif;
  --display:'Cinzel','Cormorant Garamond',Georgia,serif;
  --sans:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
  /* legacy variable names used by existing markup */
  --muted:var(--ink-3); --teal:var(--cobalt-deep); --bronze:var(--gold);
  --line:var(--rule-cobalt); --bg:var(--paper); --soft:var(--cream-2);
  --warn:var(--ottoman); --warnbg:#fdf3ec;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{
  margin:0;
  font:16px/1.7 var(--sans);
  color:var(--ink); background:var(--paper);
}
/* subtle top band like the main site's gold rule */
body::before{content:"";display:block;height:4px;background:linear-gradient(90deg,var(--cobalt-deep),var(--gold) 55%,var(--ottoman));}

.wrap{max-width:820px;margin:0 auto;padding:34px 22px 110px}
a{color:var(--cobalt);text-decoration-color:var(--rule-gold);text-underline-offset:3px}
a:hover{color:var(--cobalt-deep);text-decoration-color:var(--gold)}
a:focus-visible,button:focus-visible{outline:2px solid var(--cobalt);outline-offset:2px;border-radius:2px}
.skip{position:absolute;left:-9999px}
.skip:focus{left:12px;top:12px;background:var(--paper);padding:10px 14px;border:2px solid var(--cobalt);z-index:99}

/* ------------------------------------------------- header */
header.doc{border-bottom:0;padding-bottom:0;margin-bottom:30px}
.brand{font-family:var(--display);font-weight:700;color:var(--ink);letter-spacing:.14em;text-transform:uppercase;font-size:14px}
.brand a{color:inherit;text-decoration:none}
.brand a::before{content:"\2190\00a0";color:var(--gold);font-family:var(--sans)}
.brand a:hover{color:var(--cobalt-deep)}
h1{font-family:var(--display);font-weight:600;font-size:clamp(30px,5vw,44px);margin:14px 0 6px;line-height:1.18;color:var(--ink);letter-spacing:.01em}
.updated{color:var(--ink-3);font-size:13.5px;font-weight:500;letter-spacing:.04em;text-transform:uppercase}

/* sticky legal-pages nav */
nav.top{
  position:sticky;top:0;z-index:50;
  margin:22px -22px 8px;padding:10px 22px;
  background:rgba(255,253,247,.92);backdrop-filter:blur(6px);
  border-top:1px solid var(--rule-gold);border-bottom:1px solid var(--rule-gold);
  font-size:14px;font-weight:600;letter-spacing:.02em;
  display:flex;flex-wrap:wrap;gap:4px 22px;
}
nav.top a{color:var(--ink-2);text-decoration:none;padding:4px 0;border-bottom:2px solid transparent}
nav.top a:hover{color:var(--cobalt-deep);border-bottom-color:var(--gold)}

/* ------------------------------------------------- content */
h2{font-family:var(--serif);font-weight:700;font-size:26px;margin:0 0 10px;color:var(--cobalt-deep);line-height:1.25}
h3{font-family:var(--serif);font-weight:700;font-size:20px;margin:24px 0 6px;color:var(--ink)}
p,li{font-size:15.5px;color:var(--ink-2)}
li{margin:5px 0}
strong{color:var(--ink)}
.muted{color:var(--ink-3);font-size:14.5px}
.caps{text-transform:uppercase;font-size:14px;letter-spacing:.02em;line-height:1.65}

.note{background:var(--cream-2);border-left:3px solid var(--gold);padding:14px 18px;border-radius:0 8px 8px 0;margin:18px 0;font-size:14.5px}
.alert{background:var(--warnbg);border-left:3px solid var(--ottoman);padding:14px 18px;border-radius:0 8px 8px 0;margin:18px 0;font-size:14.5px;color:var(--ottoman-deep)}
.alert strong{color:var(--ottoman)}

table{border-collapse:collapse;width:100%;margin:16px 0;font-size:14.5px;background:var(--paper)}
th,td{border:1px solid var(--rule-cobalt);padding:9px 12px;text-align:left;vertical-align:top}
th{background:var(--cream-2);font-weight:600;font-family:var(--sans)}
.scroller{overflow-x:auto}

/* ------------------------------------------------- section cards (disclaimers) */
section[id]{scroll-margin-top:64px}
.anchor{
  border:1px solid var(--rule-cobalt);border-top:3px solid var(--rule-gold);
  background:var(--cream-2);
  border-radius:10px;
  padding:22px 24px 10px;margin:26px 0;
}
.anchor:target,.anchor:has([id]:target){
  border-color:var(--gold);border-top-color:var(--gold);
  box-shadow:0 0 0 3px var(--rule-gold);
  animation:omsTargetIn .9s ease-out;
}
[id]{scroll-margin-top:64px}
@keyframes omsTargetIn{from{background:#fdf6df}to{background:var(--cream-2)}}
@media(prefers-reduced-motion:reduce){.anchor:target{animation:none}}

/* table of contents */
.toc{
  background:var(--cream-2);border:1px solid var(--rule-cobalt);border-radius:10px;
  padding:18px 20px;margin:20px 0 4px;
}
.toc b{font-family:var(--serif);font-size:18px;color:var(--cobalt-deep)}
.toc ul{margin:10px 0 4px;padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:4px 18px}
.toc a{font-size:14.5px;font-weight:500;text-decoration:none;color:var(--ink-2);display:block;padding:3px 0}
.toc a::before{content:"\00a7\00a0";color:var(--gold)}
.toc a:hover{color:var(--cobalt-deep)}

/* back-to-top */
.totop{
  position:fixed;right:14px;bottom:14px;z-index:60;
  background:var(--paper);color:var(--cobalt-deep);
  border:1.5px solid var(--gold);border-radius:18px;
  font:600 12px/1 var(--sans);letter-spacing:.04em;
  padding:9px 14px;cursor:pointer;text-decoration:none;
  box-shadow:0 2px 10px rgba(26,22,16,.14);
}
.totop:hover{background:var(--cream-2)}

/* ------------------------------------------------- footer */
footer.doc{margin-top:56px;border-top:1px solid var(--rule-gold);padding-top:20px;font-size:14px;color:var(--ink-3)}
footer.doc a{margin-right:16px}
.entity{font-family:var(--serif);font-size:15px;color:var(--ink-2);margin-top:8px}

@media(max-width:560px){
  .wrap{padding:24px 16px 96px}
  nav.top{margin:18px -16px 8px;padding:9px 16px;gap:2px 16px}
  .anchor{padding:18px 16px 8px}
  h2{font-size:23px}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
