@font-face{font-family:'EB Garamond';font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/eb-garamond-latin-400-italic.woff2) format('woff2')}
@font-face{font-family:'EB Garamond';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/eb-garamond-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'EB Garamond';font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/eb-garamond-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Uncial Antiqua';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/uncial-antiqua-latin-400-normal.woff2) format('woff2')}
/* Bretha: a law-book page in daylight. Vellum, brown-black ink, red lead for the rubrics, copper green for the gloss,
   a little orpiment. No gold, no night. */
:root{
  --surround:#c9b98f; --vellum:#eadfc2; --vellum-lo:#e0d3b0; --ink:#2b2118; --ink-soft:#54463a;
  --red:#962f1e; --green:#285c4c; --orp:#c8901a; --rule:rgba(150,47,30,.55);
  --body:'EB Garamond',Georgia,serif; --display:'Uncial Antiqua','EB Garamond',serif;
}
*{box-sizing:border-box}
html{background:var(--surround)}
body{margin:0;color:var(--ink);font-family:var(--body);font-size:1.25rem;line-height:1.6;background:
  radial-gradient(120% 80% at 50% 0,rgba(255,255,255,.25),transparent 60%),var(--surround);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:var(--red);text-underline-offset:.18em;text-decoration-thickness:1px}
a:hover{color:var(--ink)}
:focus-visible{outline:3px solid var(--green);outline-offset:3px;border-radius:2px}
.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:var(--vellum);padding:8px 14px;z-index:9}
.skip:focus{left:8px}
[lang=ga]{font-style:italic}

/* the leaf */
.leaf{max-width:1100px;margin:clamp(0px,3vw,36px) auto;background:linear-gradient(180deg,var(--vellum),var(--vellum-lo));
  padding:clamp(18px,4vw,56px) clamp(16px,5vw,64px) clamp(28px,5vw,64px);position:relative;
  box-shadow:0 1px 0 rgba(255,255,255,.4) inset,0 12px 30px rgba(60,40,15,.28)}
.leaf::before{content:"";position:absolute;inset:clamp(8px,1.6vw,18px);border:1px solid var(--rule);border-left-width:3px;border-right-width:3px;pointer-events:none}
.top{display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap;margin-bottom:clamp(18px,3vw,36px)}
.brand{font-family:var(--display);font-size:1.7rem;color:var(--red);text-decoration:none;line-height:1}
nav ul{list-style:none;display:flex;gap:22px;margin:0;padding:0;flex-wrap:wrap}
nav a{color:var(--ink);text-decoration:none;border-bottom:1px solid transparent;padding:6px 0;display:inline-block}
nav a[aria-current=page],nav a:hover{border-bottom-color:var(--red)}

/* headings: the rubric */
h1,h2,h3{font-weight:600;line-height:1.15;margin:0;text-wrap:balance}
h1{font-size:clamp(2.1rem,6vw,3.6rem)}
h2{font-size:1.5rem;color:var(--red);margin:2.2rem 0 .6rem}
h3{font-size:1.15rem}
.lead{font-size:1.3rem;max-width:36em}
.drop::first-letter{font-family:var(--display);float:left;font-size:4.4rem;line-height:.82;padding:.08em .1em 0 0;color:var(--red)}
.rubric{color:var(--red);font-style:italic}
hr.rule{border:0;height:7px;margin:2rem 0;background:linear-gradient(var(--rule),var(--rule)) 0 0/100% 1px no-repeat,linear-gradient(var(--rule),var(--rule)) 0 6px/100% 1px no-repeat}

/* the court: a list of cases */
.cases{list-style:none;padding:0;margin:1.4rem 0;display:grid;gap:14px}
.cases a.case{display:block;padding:18px 22px;border:1px solid var(--ink);text-decoration:none;color:var(--ink);background:rgba(255,255,255,.18)}
.cases a.case:hover{background:rgba(255,255,255,.4);border-color:var(--red)}
.cases a.case strong{display:block;font-size:1.45rem}
.cases a.case span{color:var(--ink-soft);font-style:italic}
.cases li.later{padding:12px 22px;border:1px dashed var(--ink-soft);color:var(--ink-soft)}
.cases li.later b{color:var(--ink)}

/* where each line comes from */
.tag{display:inline-block;font-size:.8rem;font-weight:600;letter-spacing:.04em;padding:1px 9px;border:1px solid currentColor;border-radius:99px;margin-right:8px;vertical-align:.12em;white-space:nowrap}
.tag.law{color:var(--red)} .tag.record{color:#5b3a6b} .tag.reading{color:var(--green)} .tag.telling{color:#7a5a10} .tag.legend{color:var(--ink-soft)}

/* the page of law: text in the middle, gloss at the margin */
.page{display:grid;gap:0 36px;grid-template-columns:1fr}
.row{display:grid;gap:6px 36px;grid-template-columns:1fr;padding:12px 0}
.gloss{color:var(--green);font-size:.98rem;line-height:1.45;border-left:2px solid var(--green);padding-left:12px}
.gloss .k{display:block;font-weight:600;font-style:normal;font-size:.8rem;letter-spacing:.04em;margin-bottom:2px}
@media (min-width:860px){
  .row{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);align-items:start}
}
.scene{font-style:italic;border-left:3px solid var(--orp);padding:2px 0 2px 18px;margin:1rem 0;max-width:38em}
.scene p{margin:.4em 0}
.question{font-size:1.4rem;max-width:30em;margin:1rem 0 1.4rem}

/* the plate: the frame the painting will fill, drawn in the book's own inks until it comes */
.plate,.banner{margin:1.4rem 0;border:2px solid var(--ink);padding:6px;background:var(--vellum-lo)}
.plate{max-width:860px}
.plate img,.banner img{display:block;width:100%;height:auto}
.plate figcaption,.banner figcaption{font-size:.95rem;font-style:italic;color:var(--ink-soft);padding:6px 4px 0}

/* weigh it, and Morann's collar */
.weigh{border:1px solid var(--ink);padding:18px 22px;margin:1.6rem 0;background:rgba(255,255,255,.2);max-width:760px}
.weigh .opts{display:grid;gap:10px;margin:12px 0}
.opt{font:inherit;text-align:left;color:var(--ink);background:var(--vellum);border:1px solid var(--ink);padding:12px 16px;cursor:pointer;min-height:46px}
.opt:hover{border-color:var(--red)}
.opt[aria-pressed=true]{border-width:2px}
.verdict{min-height:3.2em;margin:.4rem 0 0}
.verdict.good{color:var(--green)} .verdict.bad{color:var(--red)}
.collar{display:flex;align-items:center;gap:16px;margin-top:10px}
.collar svg{width:150px;height:auto;flex:none}
.collar .ring{transition:transform .9s cubic-bezier(.3,.7,.2,1);transform-origin:90px 62px}
.collar[data-s=tight] .ring{transform:scale(.8)}
.collar[data-s=loose] .ring{transform:scale(1.12)}
@media (prefers-reduced-motion:reduce){.collar .ring{transition:none}}
.btn{display:inline-block;font:inherit;font-weight:600;color:var(--vellum);background:var(--ink);border:0;padding:10px 20px;text-decoration:none;cursor:pointer;min-height:44px}
.btn:hover{background:var(--red);color:var(--vellum)}
.note{font-size:.98rem;color:var(--ink-soft);border-top:1px solid var(--rule);margin-top:2rem;padding-top:12px}
.draft{background:rgba(200,144,26,.18);border:1px solid var(--orp);padding:8px 14px;font-size:.98rem;margin:1rem 0}
ul.src{padding-left:1.2em}
footer{margin-top:2.4rem;font-size:.95rem;color:var(--ink-soft)}
@media print{html,body{background:#fff}.leaf{box-shadow:none;margin:0}.weigh button,nav{display:none}}

/* the little drawings in the margin: their cream ground melts into the page */
.margin{display:block;width:150px;height:auto;flex:none}
.margin.big{width:min(260px,60%);margin:1rem 0}
.qrow{display:flex;align-items:center;gap:20px;justify-content:space-between;max-width:860px}
.cases a.case{display:flex;align-items:center;gap:18px}
.cases a.case .ct{display:block}
.cases a.case .ct strong{display:block}
.margin.card{width:84px}
@media (max-width:600px){.margin{width:96px}.margin.card{width:64px}}
.recon{display:block;font-size:.88rem}

.cases a.case .ct{font-style:normal}
.cases a.case .ct>span{font-style:italic;color:var(--ink-soft)}

h3.theme{font-size:1.2rem;color:var(--ink);margin:1.8rem 0 .4rem;font-style:italic}
p.later{padding:12px 22px;border:1px dashed var(--ink-soft);color:var(--ink-soft)}

/* front page: the opening, the case to start with, and five to begin */
h1.open{font-size:clamp(1.9rem,5.2vw,3.1rem);max-width:19em;margin-bottom:1rem}
.start h2{margin-top:2rem}
.startcard{display:grid;gap:0;border:2px solid var(--ink);text-decoration:none;color:var(--ink);background:rgba(255,255,255,.22);max-width:860px}
.startcard:hover{border-color:var(--red);background:rgba(255,255,255,.4)}
.startcard figure{margin:0}.startcard img{display:block;width:100%;height:auto}
.startcard .ct{display:block;padding:16px 22px 20px}
.startcard .ct strong{display:block;font-size:1.7rem;line-height:1.15}
.startcard .ct>span{display:block;font-style:italic;color:var(--ink-soft);margin:.3rem 0 .8rem}
.startcard .ct>.btn{font-style:normal;color:var(--vellum);margin:0}
.cases.five a.case{padding:22px 24px}
.cases.five .margin.card{width:104px}
.tag.draft{color:#7a5a10;font-size:.7rem;vertical-align:.2em;margin-left:6px}

/* case page: one reading measure; title block and drawing share a row */
.case-main{max-width:62rem}
.head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 28px;align-items:start}
.head .margin{width:120px;margin-top:.4rem}
@media (max-width:600px){.head{grid-template-columns:minmax(0,1fr) auto}.head .margin{width:80px}}
.plate{max-width:100%}
.after{margin:2.4rem 0 0;border-top:1px solid var(--rule);padding-top:1rem}
.nextcase{margin:0 0 .8rem;display:grid;gap:2px}
.nextcase span{font-size:.85rem;font-weight:600;letter-spacing:.04em;color:var(--red)}
.nextcase a{font-size:1.5rem;font-weight:600}
.nextcase em{color:var(--ink-soft)}
.related{margin:.3rem 0;color:var(--ink-soft);font-size:1rem}
.checked{font-size:.92rem;color:var(--ink-soft);margin-top:.6rem}
ul.errata{list-style:none;padding:0;display:grid;gap:22px;max-width:44em}
ul.errata li{border-left:3px solid var(--red);padding-left:16px}
ul.errata p{margin:.3em 0}

/* words: a legal term you can tap */
.term{font:inherit;color:inherit;background:none;border:0;border-bottom:1px dotted var(--red);padding:0;cursor:help}
button.term{cursor:pointer}
button.term:hover{color:var(--red)}
.pop{display:block;margin:.5em 0;padding:.6em .9em;font-size:1rem;font-style:normal;line-height:1.45;color:var(--ink);background:var(--vellum);border:1px solid var(--ink);border-left:4px solid var(--red);max-width:34em}
.words dl,.wordlist{margin:0}
.words dt,.wordlist dt{font-weight:600;margin-top:.8em}
.words dd,.wordlist dd{margin:.1em 0 0}
.wordlist dt span{font-weight:400;color:var(--ink-soft)}
.linkbtn{font:inherit;color:var(--red);background:none;border:0;padding:0;text-decoration:underline;cursor:pointer}

/* two ways to look at the law: reading, and a manuscript page */
.views{display:flex;gap:0;margin:.8rem 0 .4rem}
.views button{font:inherit;font-size:.98rem;color:var(--ink);background:var(--vellum);border:1px solid var(--ink);padding:6px 16px;cursor:pointer;min-height:40px}
.views button+button{border-left:0}
.views button[aria-pressed=true]{background:var(--ink);color:var(--vellum)}
.page.ms{padding:10px 22px 14px;border:1px solid var(--ink);background:rgba(255,255,255,.18);box-shadow:inset 0 0 0 4px var(--vellum),inset 0 0 0 5px var(--rule)}
.page.ms .row{grid-template-columns:1fr;padding:6px 0 10px}
.page.ms .row>p:first-child{font-size:1.32rem;line-height:1.6}
.page.ms .gloss{order:-1;font-size:.88rem;line-height:1.35;font-style:italic;border-left:0;padding:0 0 0 1.2em;margin:0 0 .1em}
.page.ms .gloss .k{display:inline;margin-right:.5em}
@media (min-width:860px){.page.ms .row{grid-template-columns:1fr;} }

/* ogham */
.oform{margin:1.4rem 0}
.oform label{display:block;font-weight:600;margin-bottom:6px}
.oform input{font:inherit;font-size:1.3rem;width:min(26rem,100%);padding:8px 12px;border:1px solid var(--ink);background:var(--vellum);color:var(--ink)}
.oout{color:var(--ink);padding:10px 0}
.oout svg.ogham{height:auto;max-height:75vh;width:110px}
.pop[hidden]{display:none}
