/*
Based on:
CSS Reset by Eric Meyer - Released under Public Domain
http://meyerweb.com/eric/tools/css/reset/
with new HTML 5 elements added
*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video { background: transparent; border: 0; margin: 0;  outline: 0; padding: 0; vertical-align: baseline; }
body  { line-height: 1; }
ol, ul { list-style: none; }
blockquote, q { quotes: none; }
blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }
:focus { outline: 0; } /* remember to set this! */
ins { text-decoration: none; }
del { text-decoration: line-through; }
table { border-collapse: collapse; border-spacing: 0; }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
*, *:before, *:after { box-sizing: border-box; }

/*
contrasts:

selected nav item:
background: --col-headings (#1d3d98) > --col-body-text (#161515) = 6.11:1 [normal passes AA, large (i.e. 24px or larger) passes AAA]
background: --col-headings (#1d3d98) > #fff = 2.98:1 [fails all]
background: --col-headings (#1d3d98) > #000 = 7.04:1 [passes AAA]

breadcrumbs
background: --bg-a (#ffd6b5) > --col-body-text (#161515) = 13.48:1 [all pass AAA]
background: --bg-a (#ffd6b5) > --col-link (#d02d13) = 3.82:1 [normal fails both, large passes AA]
background: --bg-a (#ffd6b5) > --col-hover (#1460d4) = 4.25:1 [normal fails both, large passes AA]
background: --bg-a (#ffd6b5) > --col-nav (#801807) = 7.57:1 [borh pass AAA]

blockquotes
background: --bg-b (#fff7f0) > --col-body-text (#161515) = 17.19:1 [both pass AAA]
background: --bg-b (#fff7f0) > --col-nav (#801807) = 9.65:1 [both pass AAA]
background: --bg-b (#fff7f0) > --col-link (#d02d13) = 4.87:1 [normal passes AA, large passes AAA]
background: --bg-b (#fff7f0) > --col-hover (#1460d4) = 5.42 [both pass AAA]

subnav
background: #fdf9f4 > --col-link (#d02d13) = 4.92:1 [normal passes AA, large passes AAA]
background: #fdf9f4 > --col-hover (#1460d4) = 5.48:1 [normal passes AA, large passes AAA]

main text a:link
background: #fff > --col-hover (#d02d13) = 5.16:1 [normal passes AA, large passes AAA]
main text a:hover
background: #fff > --col-hover (#1460d4) = 5.74:1 [normal passes AA, large passes AAA]

footer links
background: --col-nav (#801807) > #fff = 10.23 [both pass AAA]

*/

/* =================
   1 :
   fundamental stuff
   ================= */

html { height: 100%; width: 100%;
    --am-hover-background-colour: #b52e17; /* medium red */
    --am-link-background-gradient-top: #8c2312; /* darker red than --book-colour */
    --am-link-background-gradient-bottom: #6b1406; /* even darker red */
    --bg-a: #ffd6b5; /* peach (borders: breadcrumbs & blockquote */
    --bg-b: #fff7f0; /* pale pink (background: blockquote, subnav & breadcrumb links) */
    --bg-c: #c8d2f1; /* pale blue */
    --bg-d: #f9f9f9; /* very pale grey (summary, book plug, h1, h2) */
    --bg-body: #8f8c8c; /* medium grey */
    --bg-link: #fdf9f4; /* pale pink (subnav link background) */
    --col-nav: #801807; /* dark red ( primary nav & footer links)*/
    --col-head-foot: #e0800f; /* gold (header, footer) */
    --col-borders: #cf8447; /* brown {main L&R borders; #breadcrumbs-ol B&T borders} */
    --col-headings: #1d3d98; /* dark blue */
    --col-link: #c12a11; /* red (d02d13) */
    --col-hover: #1460d4; /* medium blue */
    --col-body-text: #161515; /* dark grey */
    --fonts-main: "open sans", system-ui, "segoe ui", roboto, helvetica, arial, sans-serif;
    --fonts-headings: "oswald", system-ui, "segoe ui", roboto, helvetica, arial, sans-serif;
    --fonts-print: georgia, serif;
    --gap-a: 40px;
    --gap-b: 60px;
    --gap-c: 80px;
    --gap-d: 120px;
    }
@-ms-viewport { width: device-width; } /* IE10 hack */
@viewport { width: device-width; zoom: 1; } /* to replace HTML meta tag in due course */

/* thanks to Google Web Font Helper: https://gwfh.mranftl.com/ */
@font-face  {
    font-family: "oswald"; /* appropriate, eh? */
    font-style: normal;
    font-weight: 400;
    src: url("fonts/oswald-v23-latin-regular.eot"); /* IE9 Compat Modes (18.2 kB) */
    src: local("Oswald Regular"), local("Oswald-Regular"), local("Oswald-Regular-webfont"),
		 url("fonts/oswald-v23-latin-regular.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */
		 url("fonts/oswald-v23-latin-regular.woff2") format("woff2"), /* Super Modern Browsers (16.0 kB) */
		 url("fonts/oswald-v23-latin-regular.woff") format("woff"), /* Modern Browsers (19.6 kB) */
		 url("fonts/oswald-v23-latin-regular.ttf") format("truetype"), /* Safari, Android, iOS (35.7 kB) */
		 url("fonts/oswald-v23-latin-regular.svg#Oswald") format("svg"); /* Legacy iOS (49.6 kB) */
}
@font-face {
    font-family: "open sans";
    font-style: normal;
	font-weight: 400;
	src: url("fonts/open-sans-v16-latin-regular.eot");
	src: local("Open Sans Regular"), local("OpenSans-Regular"), local("open sans"),
		 url("fonts/open-sans-v16-latin-regular.eot?#iefix") format("embedded-opentype"),
		 url("fonts/open-sans-v16-latin-regular.woff2") format("woff2"),
		 url("fonts/open-sans-v16-latin-regular.woff") format("woff"),
		 url("fonts/open-sans-v16-latin-regular.ttf") format("truetype"),
		 url("fonts/open-sans-v16-latin-regular.svg#OpenSans") format("svg");
	} /* eot: 16 kB; woff2: 14.4 kB; woff: 18.1 kB; ttf: 27.1 kB; svg: 56.3 kB */
@font-face {
	font-family: "open sans";
	font-style: italic;
	font-weight: 400;
	src: url("fonts/open-sans-v16-latin-italic.eot");
	src: local("Open Sans Italic"), local("OpenSans-Italic"),
		 url("fonts/open-sans-v16-latin-italic.eot?#iefix") format("embedded-opentype"),
	     url("fonts/open-sans-v16-latin-italic.woff2") format("woff2"),
	     url("fonts/open-sans-v16-latin-italic.woff") format("woff"),
	     url("fonts/open-sans-v16-latin-italic.ttf") format("truetype"),
	     url("fonts/open-sans-v16-latin-italic.svg#OpenSans") format("svg");
	} /* eot: 14.8 kB; woff2: 14.4 kB; woff: 18.1 kB; ttf: 27.1 kB; svg: 59.4 kB */
@font-face {
	font-family: "open sans";
	font-style: normal;
	font-weight: 700;
	src: url("fonts/open-sans-v16-latin-700.eot");
	src: local("Open Sans Bold"), local("OpenSans-Bold"),
		 url("fonts/open-sans-v16-latin-700.eot?#iefix") format("embedded-opentype"),
	     url("fonts/open-sans-v16-latin-700.woff2") format("woff2"),
	     url("fonts/open-sans-v16-latin-700.woff") format("woff"),
	     url("fonts/open-sans-v16-latin-700.ttf") format("truetype"),
	     url("fonts/open-sans-v16-latin-700.svg#OpenSans") format("svg");
	} /* eot: 15.4 kB; woff2: 15.1 kB; woff: 18.9 kB; ttf: 28.8 kB; svg: 55.7 kB */
/* 4 x woff2 = 59.9 kB */




/* ===============================================
   2 :
   basic styles:
   links, headings, paragraphs, lists, images, etc
   styles made explicit for old browsers:
   - essential colours
   - fonts for all but minor elements
   =============================================== */

body  { background: #fff; color: #161515; font-family: "open sans", system-ui, "segoe ui", roboto, helvetica, arial, sans-serif; font-size: 100%; line-height: 1.7; min-height: 100vh; position: relative; text-align: left; text-rendering: optimizeSpeed; width: 100%; }
#inner  { display: block; margin: 0 auto; max-width: 750px; padding: 0 2%; }
main  { padding: 0 0 2em 0; } /* main & footer are the only HTML 5 elements with essential CSS; pre-5 browsers will omit bottom-padding on 'main' and background colour & top border on 'footer', leaving essential features just about OK */

/* links */
a:link  { color: #c12a11; text-decoration: underline; }
a:visited  { border-bottom: 1px solid #c12a11; text-decoration: none; }
a:hover { border-bottom: 3px solid #1460d4; color: #1460d4; text-decoration: none; }
a:focus  { outline: 3px solid red; outline-offset: 0.25em; z-index: 10; }
a:focus-visible { box-shadow: 0 0 0 6px white; outline: 9px double black; z-index: 100; } /* keyboard focus (see https://www.sarasoueidan.com/blog/focus-indicators/) */
a:active  { color: #e0800f; }

/* headings */
h1, h2, h3  { clear: both; color: #1d3d98; font-family: "oswald", system-ui, "segoe ui", roboto, helvetica, arial, sans-serif; font-weight: normal; letter-spacing: 0.01em; line-height: 1.3; }
h1, h2  { padding: 0.3em 0; text-wrap: balance; }
h1  { border-bottom: 1px solid #cf8447; border-top: 1px solid #cf8447; font-size: 2.1rem; margin: 1.5rem 0 0 0; }
h2  { background: #f9f9f9; border-bottom: 1px dotted #1d3d98; border-top: 1px dotted #1d3d98; font-size: 1.6rem; margin: 1.4em 0 0 0; }
h3  { font-size: 1.4rem; margin: 1em 0 0 0; }
.comments-h3  { color: #801807; font-size: 1.2em; }
h4  { color: #801807; font-size: 1.2rem; margin: 0.6em 0 0 0; } /* Prayer Man page */
.header-alt-colour  { color: #801807; } /* SBT page */

/* paragraphs */
p  { margin: 0.8em 0 0 0; }
.list-first-p  { margin: 0; } /* first paragraph within a list item (e.g. Liebeler memo, LHO speech) */
.by-author  { color: #1d3d98; font-family: var(--fonts-headings); font-size: 1.2em; } /* e.g LHO speech, Edgewood */

/* lists: ul & ol */
ul  { line-height: 1.6; list-style: disc; padding: 0.6em 0 0 1.2em; }
.sub-ul  { padding: 0.3em 0 0 1.2em; }
#sitemap-ul  { list-style: square; }
#formats-ul  { list-style: none; padding: 0; }
ol  { line-height: 1.6; list-style: decimal; padding: 0.5em 0 0 1.5em; }
.sub-ol  { list-style: lower-alpha; } /* e.g. cia-warren-report-critics article */
li  { padding: 0.25em 0; }
li::marker  { color: #801807; } /* coloured dots and numbers! */
.sub-ul li::marker  { color: #1d3d98; }

/* lists: dl (default styles are used for quoted dialogue) */
dl  { float: left; margin: 0.5em 0 0.3em 0; width: 100%; }
dt  { float: left; font-variant: small-caps; font-weight: normal; margin: 0.5em 0 0 0; text-align: left; width: 100%; }
.dt-var  { font-variant: normal; }
dd  { float: right; width: 95%; }
/* dl: lists of abbreviations */
.abbr-dt  { font-weight: bold; }
/* dl: definitions (what-is-a-conspiracy page) */
.condef-dl  { background: #f9f9f9; border: 1px dotted #1d3d98; border-radius: 5px; margin: 1.2em 0 1.8em 0; padding: 0 0.5em 1em 1em; width: 100%; }
.condef-dt  { color: #801807; font-size: 1.2em; font-variant: normal; width: 100%; }
.condef-dd  { padding: 0; }

/* figure, figcaption, blockquote (almost all figures enclose blockquotes: https://heydonworks.com/article/the-blockquote-element/ ) */
figure  { display: flex; flex-direction: column; }
figcaption  { background: #f9f9f9; border: 2px solid #ffd6b5; border-top: 1px dotted #ffd6b5; border-left: 4px solid #ffd6b5; line-height: 1.5; padding: 0.75em 1em; }
.figcaption-p  { margin: 0; }
.map-figcaption, .sbt-figcaption, .pm-figcaption  { border: 2px solid #e0800f; border-top: 2px dotted #e0800f; border-bottom-left-radius: 3px; border-top-left-radius: 3px; color: #801807; margin: 0 0 0.5em 0; }
.map-figcaption  { padding: 0.25em 1em 0.5em 1em; }
blockquote  { background: #fff7f0; border: 2px solid #ffd6b5; border-left: 4px solid #ffd6b5; margin: 1.2em 0 0 0; padding: 0.2em 0.5em 1em 1em; }
.list-item-bq  { margin: 0.8em 0 0.5em 0; } /* within footnores: Russell quotation on guilty-or-not-guilty page */

/* images and other containers:
 - add class="map-img" to map images and enclose them in a 'figure' element (which will have no effect on old browsers);
 - narrow images (250px, 300px, or 400px wide):
     - add class="small" to narrow images (will float left in wider layouts by default);
     - add class="small-alt" to narrow images if they need to float right in wider layouts;
     - need to be enclosed in div.img-box-250/300/400, as appropriate (these divs occupy the full width by default, with images floated left);
     - top and bottom margin is applied to images;
     - left or right margin is applied to div.img-box-250/300/400 later, when an increase in screen width disables the full-width setting and allows text to flow around the image;
 */
img  { border: 2px solid #e0800f; border-radius: 3px; color: #801807; float: left; height: auto; line-height: 1.5; margin: 1.5em 0; max-width: 100%; text-wrap: balance; }
.map-img, .sbt-img, .pm-img  { border-bottom: none; border-bottom-left-radius: 0; border-bottom-right-radius: 0; margin-bottom: 0; }
.img-box-200, .img-box-200-alt, .img-box-250, .img-box-250-alt, .img-box-300, .img-box-300-alt, .img-box-350, .img-box-350-alt, .img-box-400, .img-box-400-alt, #book-cover-box-350  { float: left; width: 100%; }
#book-cover  { border: none; box-shadow: 1px 3px 9px #666; margin: 1.5em 0 2em 0; padding: 2px; }

/* tables: NAA & what-do-people-think articles */
table  { background: #fff7f0; border-top: 4px solid #ffd6b5; border-bottom: 4px solid #ffd6b5; float: left; margin: 1em 0 1.5em 0; padding: 0; text-align: center; width: 100%; }
caption  { color: #801807; font-family: var(--fonts-headings); font-size: 1.5rem; font-weight: normal; margin: 0 0 0.5em 0; text-align: left; }
tbody tr:hover  { background: #fff; color: #000; }
th  { border-bottom: 2px solid #ffd6b5; font-weight: bold; padding: 0.5em 0; }
td  { border-bottom: 2px solid #ffd6b5; padding: 0.2em 0.5em; }

/* minor and decorative elements */
strong  { font-weight: bold; font-style: normal; }
em, cite, .aside, .lunatic  { font-style: italic; }
abbr  { border-bottom: 2px dotted; cursor: help; speak: spell-out; text-decoration: none; }
#sitename-abbr  { border-bottom: none; }
span[lang="de"], span[lang="es"], span[lang="fr"], span[lang="it"], span[lang="la"] { font-style: italic; }
.strike  { text-decoration: line-through; }
.arrow-right  { margin-left: 0.25em; }
.arrow-left, .arrow-up  { margin-right: 0.25em; }
.noscript  { border: 2px solid #801807; border-radius: 3px; color: #801807; margin: 1em 0 0 0; padding: 0.25em 1em 0.5em 1em;  }
.print-only  { display: none; }

/* hyphenation (from https://clagnut.com/blog/2395) and word breaks (obsolete URLs marked with <cite></cite> and &#173; [soft hyphen]) */
p, li, dd, a, figcaption, cite  { hyphens: auto; -webkit-hyphens: auto; }
p  { hyphenate-limit-chars: 6 3 3; hyphenate-limit-lines: 2; hyphenate-limit-last: always; hyphenate-limit-zone: 8%; }
.allow-break  { hyphens: auto; -webkit-hyphens: auto; word-break: break-all; overflow-wrap: break-word; } /* redundant, but some examples may remain */




/* =======================================================================
   3 :
   basic component styles:
   skipnav, header, main & other navigation, breadcrumbs, footer, plug, etc
   ======================================================================== */

/* skip nav link */
#skip-p  { margin: 0; }
#skip-a:link  { position: absolute; top: 0; left: -1000px; }
#skip-a:focus-within  { background: #fff; color: #000; height: auto; left: 1em; top: 1em; width: auto; } /* indentation allows for 9px double outlines */

/* banner */
#sitename { background: #fff; border: none; color: #801807; float: left; font: normal 1.3rem/1.2 "oswald", system-ui, "segoe ui", roboto, helvetica, arial, sans-serif; letter-spacing: 0.01em; margin: 0; padding: 0.1em 0; text-align: center; width: 100%; }
#sitename-span  { background: #333; border-top: 3px solid #801807; border-bottom: 3px solid #801807; color: #fff; float: left; padding: 0.2em 0; width: 100%; }

/* top-level navigation menu */
#nav-ul  { background: #801807; float: left; list-style: none; padding: 0.2em 0; width: 100%; }
.nav-li  { float: left; max-width: 90%; padding: 0 0 0 0.3em; text-align: center; }
.nav-a:link, .nav-a:visited  { background: #801807; border: 1px solid #e0800f; color: #fff; display: block; float: left; font-family: var(--fonts-headings); letter-spacing: 0.03em; padding: 0 0.25em; text-decoration: none; width: auto; }
.nav-a:hover, .nav-a:focus  { background: #fff; border: 1px solid #fff; color: #801807; }
.nav-a:active  { color: #cf8022; }
.nav-a[aria-current]:link, .nav-a[aria-current]:visited, .nav-a[aria-current]:hover  { background: #fff; background: #fff7f0; border: 1px solid #fff; color: #000; cursor: default; }

/* section navigation menus */
#subnav  { float: left; margin: 0; width: 100%; }
.subnav-ul, .sub-subnav-ul  { font-family: var(--fonts-headings); line-height: 1.4; list-style: none; margin: 0.5em 0 0 0; padding: 0; width: 100%; }
.subnav-ol  { list-style: none; margin: 0.2em 0; padding: 0 0 0 1em; width: 100%; }
.subnav-li  { margin: 0 0 0.2em 0; padding: 0; width: 100%; }
.subnav-a:link  { b ackground: #fdf9f4; background: #fff7f0; border: 1px solid #edeff6; border: 1px solid rgba(0, 0, 0, 0.2); border-radius: 3px; display: block; padding: 0.4em 0 0.4em 1em; text-decoration: none; width: auto; }
.subnav-a:visited  { color: #d02d13; }
.subnav-a:hover  { background: #fff; border: 1px solid #1460d4; border-radius: 3px; color: #1460d4; }
.subnav-a:focus  { color: #000; }
.subnav-a[aria-current]:link, .subnav-a[aria-current]:visited, .subnav-a[aria-current]:hover { background: #fff; border: 1px solid rgba(0, 0, 0, 0.2); color: #161515; cursor: default; text-decoration: none; }
text-title  { display: block; }

/* breadcrumbs */
#breadcrumbs-ol  { background: #fff7f0; border-bottom: 1px solid #ffd6b5; border-top: 1px solid #ffd6b5; list-style: none; line-height: 1.3; padding: 0.1em 0.5em; width: 100%; }
.breadcrumbs-li  { display: inline; padding: 0; }
.bc-separator  { padding: 0 0.2em; }

/* summary */
#summary  { background: #fff; border-top: 3px solid #e0800f; border-bottom: 3px solid #e0800f; float: left; line-height: 1.6; margin: 1.5em 0; padding: 0 0 1em 0; width: 100%; }
#summary-h2  { background: transparent; border: none; color: #801807; float: left; margin: 0.6em 0 0.4em 0; padding: 0; width: 100%; }
#summary-p  { margin: 0; }

/* footer */
footer  { background: #e0800f; border-top: 5px solid #801807; border-bottom: 5px solid #801807; float: left; padding: 0 0 0.5em 0; position: relative; width: 100%; }
#gotop-p  { margin: 0 0 0.8em 1em; }
#gotop-a:link, #gotop-a:visited  { background: #fff7f0; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; color: #d02d13; float: left; padding: 0.2em 1em; text-decoration: none; }
#gotop-a:hover  { background: #fff; border: none; color: #1460d4; text-decoration: underline; }
#gotop-a:focus  { background: #fff; border: none; color: #1460d4; outline: 3px solid #fff; text-decoration: underline; }
#top-arrow  { font-weight: bold; }
.printonly  { display: none; }
#footer-name-p  { background: #333; border-top: 3px solid #801807; border-bottom: 3px solid #801807; color: #fff; float: left; font: normal 1.8em/1.4 var(--fonts-headings); letter-spacing: 0.01em; margin: 0.5em 0; padding: 0.3em 0; text-align: center; width: 100%; }
#footer-ul  { float: left; list-style: none; margin: 0; padding: 0 0 0.3em 0; width: 100%; }
.footer-li  { padding: 1em 0 0 1em; }
.footer-a:link, .footer-a:visited  { background: #801807; border-radius: 3px; color: #fff; padding: 0.2em 0.6em; text-decoration: none; }
.footer-a:hover  { background: #fff; border: none; color: #801807; }
.footer-a:focus  { background: #fff; border: none; color: #801807; outline: 3px solid #fff; }
.footer-a[aria-current]:link, .footer-a[aria-current]:visited, .footer-a[aria-current]:hover  { background: #ffd6b5; border: none; color: var(--col-body-text); cursor: default; text-decoration: none; }
#design-p  { float: left; font-size: 95%; font-style: italic; margin: 0.3em 0 0 1em; padding: 0.7em 0 0.6em 0; width: auto; }
#lab99-a:link, #lab99-a:visited  { background: #801807; border: 2px solid #801807; border-radius: 3px; color: #fff; padding: 0.4em 0.8em 0.4em 0.6em; text-decoration: none; }
#lab99-a:hover, #lab99-a:focus  { background-color: #4877b2; border: 2px solid #fdf403; color: #fff; } /* #4877b2 = blue, #fdf403 = yellow */
#lab99-logo  { background: url(images/lab99-logo-24x24-03.png) 0 50% no-repeat; padding: 0.3em 0 0.3em 36px; }

/* book plug */
#book-plug, #book-plug-index  { border-top: 3px solid #e0800f; border-bottom: 3px solid #e0800f; float: left; margin: 2em 0 0 0; padding: 0 0 1.5em 0; }
#book-img-container  { float: left; margin: 1.5em 0; width: 100%; }
#book-img  { margin: 0; }
.book-plug-a:link, .book-plug-a:visited  { background: #801807; border: 3px solid  #801807; border-radius: 7px; color: #f4f3f2; display: inline-block; font-size: 1.4rem; padding: 0.2em 0.5em 0.2em 1em; text-decoration: none; }
.book-plug-a:hover, .book-plug-a:focus  { background: #fff; color: #801807; }

/* information (documents & texts sections, and SBT page) */
#text-meta  { color: #801807; }
.text-meta-h2  { background: none; border: 0; color: #801807; margin: 0.5em 0 0 0; padding: 0; }
sub-title, chapter-title  { display: block; font-size: 1.7rem; margin: 0.5em 0; }
#comments, #text-copyright, #sbt-photos  { float: left; margin: 1em 0 0 0; width: 100%; }

/* next/previous links */
.next-prev-ul  { border-top: 1px solid #e0800f; float: left; margin: 1.5em 0 1em 0; padding-top: 1em; width: 100%; }
.next-prev-words  { display: block; font-variant: small-caps; }
.next-prev-arrow  {  display: none; }

/* categorised under (FAQs) */
#categorised  { background: #f9f9f9; border: 2px dotted #1d3d98; border-radius: 7px; color: #1d3d98; margin: 2em 0 1em 0; padding: 0 1.5em 1em 1.5em; }
.cat-li::marker  { color: #1d3d98; }

/* table of contents */
#toc-nav  { margin: 1.5em 0 0 0; }

/* document downloads (Feinman) */
.downloads-ul  { list-style: none; padding-left: 0; }
.downloads-li  { padding: 0.5em 0; }
.downloads-a:link, .downloads.a:visited  { background: #801807; border: 2px solid  #801807; border-radius: 7px; color: #f4f3f2; display: inline-block; padding: 0.2em 0.8em; text-decoration: none; }
.downloads-a:hover, .downloads-a:focus  { background: #fff; color: #801807; text-decoration: underline; }

/* book page */
.book-option  { color: #801807;  display: block; padding: 0 0 0.24em 0; }
#payhip-link, #google-link, #amazon-links  { margin: 1em 0 0 0; border-top: 1px dashed #801807; padding: 0.75em 0 0 0; }
#google-play-a:link  { background: transparent; border: 3px solid #c12a11; border-radius: 9px; display: block; height: 68px; margin: 0.5em 0; padding: 2px; text-decoration: none; max-width: 200px; }
#google-play-a:hover  { background: #ffd6b5; border: 3px solid #1460d4; box-shadow: 1px 1px 5px #666; }
#google-play-img  { border: none; margin: 0; padding: 1px; }
#amazon-ul  { list-style: none; padding-left: 0; }
.am-link-a, .phip-link-a  { margin-left: 0.5em; }

/* footnotes */
#footnotes  { float: left; width: 100%; }
#abbreviations-fn, #abbreviations-gk  { float: left; margin: 0 0 1em 0; width: 100%; }
[rel="footnote"]:link, [rel="footnote"]:visited  { background: #fff; border: 1px solid #c12a11; border-radius: 3px; margin: 0 0.2em; padding: 0 0.3em; text-decoration: none; }
[rel="footnote"]:hover  { background: #1460d4; border: 1px solid #1460d4; color: #fff; }
[aria-label="Return to the article"]:link, [aria-label="Return to the article"]:visited  { background: #fff; border: 1px solid #c12a11; border-radius: 3px; color: #c12a11; padding: 0 0.3em; text-decoration: none; }
[aria-label="Return to the article"]:hover  { background: #1460d4; border: 1px solid #1460d4; color: #fff; }
li:target  { background: #fff7f0; border: 1px solid #ffd6b5; border-radius: 3px; padding: 0.25em 1em 0.5em 1em; }
li:target .list-item-bq  { background: #fff; margin: 0.8em 0 0.5em 0; } /* fn 3 on guilty-or-not-guilty page */
/* sitepoint auto version, not in use (https://www.sitepoint.com/accessible-footnotes-css/):
article  { counter-reset: footnotes; }
a[aria-describedby="footnote-label"]  { counter-increment: footnotes; }
a[aria-describedby="footnote-label"]::after  { content: '[' counter(footnotes) ']'; }
a[aria-describedby="footnote-label"]:focus::after  { outline: thin dotted; outline-offset: 2px; }
*/

/* contact form */
form  { float: left; width: 100%; }
fieldset  { border: 1px solid #fff; }
legend  { display: none; }
.form-p, #send-p  { margin: 1.5em 0 0 0; }
label  { float: left; width: 100%; }
input, textarea  { background: #fdf9f4; border: 2px solid #e0800f; font: inherit; margin-top: 0.5em; padding: 0.25em 1em; width: 100%; }
textarea  { height: 150px; }
.comSubmit  { background: #801807; border: 2px solid #801807; color: #fff; font-size: 100%; font-weight: bold; margin: 0 0 0 0.5em; padding: 0.2em 0.8em; width: auto; }
.comSubmit:hover, .comSubmit:focus  { background: #fff; border: 2px solid #801807; color: #801807; cursor: pointer; }
input:hover, textarea:hover  { background: #fff; border: 2px solid #801807; box-shadow: 0 0 5px #161515; }
input:focus, textarea:focus, .comSubmit:focus  { background: #fff; border: 2px solid #801807; outline: 4px solid #801807; }
input:user-invalid  { border-color: red; } /* if the email field does not contain a correct email format */
input:user-valid  { border-color: #801807; } /* normal colour if the correct email format is entered */
.comError  { background: #fdf9f4; border-top: 1px solid #e0800f; border-bottom: 1px solid #e0800f; font-weight: bold; margin: 1em 0; padding: 0.5em 2em; }




/* ========================================================
   4 :
   basic one-column flex and grid layout for newer browsers
   ======================================================== */

@supports (display: grid) { /* to weed out older browsers */

body  { color: var(--col-body-text); font-family: var(--fonts-main); font-size: calc(15px + 0.390625vw); } /* flexible font-size: https://matthewjamestaylor.com/responsive-font-size */

/* (fluid typography calculator: https://royalfig.github.io/fluid-typography-calculator/) */
h1  { font-size: clamp(2.1rem, 1.9200000000000002rem + 0.8999999999999999vw, 3rem); }
h2  { font-size: clamp(1.6rem, 1.48rem + 0.6000000000000001vw, 2.2rem); }
.book-plug-h2  { font-size: clamp(1.6rem, 1.4400000000000002rem + 0.7999999999999998vw, 2.4rem); }
h3  { font-size: clamp(1.4rem, 1.2999999999999998rem + 0.5vw, 1.9rem); }
h4  { font-size: clamp(1.2rem, 1.16rem + 0.19999999999999996vw, 1.4rem); }
sub-title, chapter-title  { font-size: clamp(1.7rem, 1.56rem + 0.7vw, 2.4rem); }
#breadcrumbs-ol  { font-size: calc(14px + 0.390625vw); }

a:link  { color: var(--col-link); text-decoration: underline solid var(--col-body-text) 1px; text-underline-offset: 0.2em; }
a:visited  { border-bottom: 1px solid var(--col-link); color: var(--col-link); text-decoration: none; }
a:hover  { border-bottom: 3px solid var(--col-hover); color: var(--col-hover); text-decoration: none; }

#sitename  { font-size: clamp(1.4rem, 1.22rem + 0.8999999999999999vw, 2.3rem); }

/* body grid */
body  { display: grid;
        grid-template-columns: 2%  96%    2%;
        grid-template-areas:  ".   inner  .";
        }
#inner  { grid-area: inner; }

/* inner grid */
header  { grid-area: header; }
#primary-nav  { grid-area: primary-nav; }
main  { grid-area: main; }
footer  { grid-area: footer; }
#inner  { background: #fff; padding: 0;
          display: grid;
          grid-template-columns: 100%;
          grid-template-areas:  "header"
                                "primary-nav"
                                "main"
                                "footer";
          }

/* main nav */
#nav-ul  { display: flex; flex-flow: row wrap; gap: 0.2em; justify-content: center; }
.nav-li  { display: flex; padding: 0; }
.nav-a  { border-radius: 3px; }

/* breadcrumbs */
#breadcrumbs-nav  { display: flex; flex-direction: row; margin: 0; }
#breadcrumbs-ol  { display: flex; flex-flow: row wrap; }

/* footer */
footer  { display: flex; flex-direction: column; }
#gotop-p  { margin: 0 0 0 1em; }
.footer-li  { display: flex; }

/* dl - for quoted dialogue & abbreviations */
dl  { display: flex; flex-direction: column; }
dd  { padding: 0 1em; width: 100%; }
.abbr-dl  { border-top: 1px dotted var(--col-headings); flex-direction: row; gap: 1.5em; line-height: 1.5; margin: 0; }
.abbr-dl:first-of-type  { border: none; margin: 0.5em 0 0 0; }
.abbr-dt, .abbr-dd  { margin: 0; padding: 0.8em 0; width: auto; }
#abbr-p  { color: var(--col-headings); }

/* other */
blockquote, form, #abbreviations-fn, #abbreviations-gk, #book-img-container, #comments, #footnotes, #sbt-photos, #subnav, #summary, #text-copyright  { display: flex; flex-direction: column; }
#comments, #sbt-photos, #text-copyright  { width: auto; }




/* ==========================================
   5 :
   enhancements for wider moblies and tablets
   ========================================== */

@media all and (min-width: 350px)  {
.img-box-200  { display: inline; float: right; margin: 0 0 0 1.5em; width: auto; }
.img-box-200-alt  { display: inline; margin: 0 1.8em 0 0; width: auto; }
}


@media all and (min-width: 400px)  {

#summary  { background: var(--bg-d); border: 3px solid #e0800f; border-radius: 5px; padding: 0 1.5em 1em 1.5em; }
text-title  { display: inline; }
.img-box-250  { display: inline; float: right; margin: 0 0 0 1.5em; width: auto; }
.img-box-250-alt  { display: inline; margin: 0 1.8em 0 0; width: auto; }

/* #toc-nav */
#toc-nav  { background: var(--bg-d); border: 1px solid var(--col-headings); border-radius: 5px;  display: flex; flex-direction: column; margin: 2em 0 0 0; padding: 0 1em 1.5em 1em; }
#toc-h2  { border: 0; margin: 1em 0 0.3em 0; padding: 0; }

/* comments (about texts and documents) */
#comments  { border: 3px solid var(--col-nav); border-radius: 5px; margin: 2em 0 0 0; padding: 0 1em 1.5em 1em; }
.comments-h2  { background: #fff; border: 0; color: var(--col-nav); margin: 1em 0 0.3em 0; padding: 0; }

/* copyright statement (Feinman) */
#text-copyright  { background: var(--bg-d); border: 3px solid var(--col-headings); border-radius: 5px; padding: 0 1em 1.5em 1em; }
.text-copy-h2  { background: #fff; border: 0; color: var(--col-headings); margin: 1em 0 0.3em 0; padding: 0; }

/* lists of abbreviations (footnotes & grassy knoll witnesses) */
#abbreviations-fn, #abbreviations-gk  { background: var(--bg-d); border: 3px solid var(--col-headings); border-radius: 5px; margin: 2em 0 0 0; padding: 0 1em 1.5em 1em; }
#abbreviations-fn, #abbreviations-gk  { border: 1px solid var(--col-headings); border-radius: 3px; }
#abbreviations-fn  { margin: 1.5em 0 1em 0; padding: 0 1em 0.5em 1em; }
#abbreviations-gk  { margin: 2em 0 2.5em 0; }
#abbrev-h2  { background: #fff; border: 0; color: var(--col-headings); margin: 1em 0 0.3em 0; padding: 0; }

/* SBT photo info */
#sbt-photos  { background: var(--bg-d); border: 2px dashed var(--col-headings); border-radius: 5px; padding: 0 1em 1.5em 1em; }
#sbt-photos-h2  { background: #fff; border: 0; color: var(--col-headings); margin: 1em 0 0.3em 0; padding: 0; }
#sbt-photos-h2  { margin: 0.8em 0 0 0; }

}  /* end of min-width: 400px */


@media all and (min-width: 500px)  {

.img-box-300  { display: inline; float: right; margin: 0 0 0 1.5em; width: auto; }
.img-box-300-alt  { display: inline; margin: 0 1.8em 0 0; width: auto; }

/* links on landing pages */
.read-article, .read-article-final  { background: var(--bg-b); border: 1px solid var(--bg-a); border-radius: 3px; margin: 1em 0 3em 0; padding: 0.4em 0.5em; }
.read-article-final  { margin: 1em 0; } /* when followed by book plug */
.read-article-a:link, .read-article-a:visited  { background: #fff; border: 2px solid var(--bg-a); border-radius: 3px; padding: 0.1em 0.5em; text-decoration: none; }
.read-article-a:hover  { border: 2px solid var(--col-hover); }

} /* end of min-width: 400px */


@media all and (min-width: 600px)  {

#nav-ul  { gap: 0.5em; }
.nav-a:link  { padding: 0 0.5em; }
#book-img-container  { display: inline; float: right; margin: 0; width: auto; }
#book-img  { float: right; margin: 1.2em 0 1.5em 1.2em; }
#footer-ul  { display: flex; gap: 0.5em; }
#abbreviations-fn, #abbreviations-gk, #comments, #toc-nav  { padding: 0 2em 1.5em 2em; }
#sbt-photos, #text-copyright  { margin: 2em 0 0 0; padding: 0 2em 1.5em 2em; }
.img-box-400, #book-cover-box-350  { display: inline; float: right; margin: 0 0 0 1.5em; width: auto; }
.img-box-400-alt  { display: inline; margin: 0 1.8em 0 0; width: auto; }
.witnesses-ol  { column-count: 2; column-gap: 2em; } /* grassy knoll witnesses article */
.downloads-a:link  { margin: 0 0.5em 0 0; } /* Feinman pages */

/* contact form */
.form-p  { border: 2px solid transparent; margin: 0.5em 0 0 0; padding: 0.5em 1em 1.5em 1em; }
.form-p:focus-within  { background: var(--bg-d); border: 2px dotted var(--col-nav); border-radius: 7px;  }
#send-p  { margin: 0.5em 0 0 0; padding: 0 1em; }

/* next/previous links now fancified */
.next-prev-ul  { border-top: none; display: flex; flex-direction: column; gap: 0.8em; line-height: 1.4; list-style: none; margin: 0; padding: 2em 0 0 0; }
.next-prev-a:link, .next-prev-a:visited  { background: var(--col-nav); border: 2px solid var(--col-nav); border-top: 1px solid var(--col-nav); border-bottom-right-radius: 5px; border-bottom-left-radius: 5px; color: #fff; display: block; padding: 0.4em 1em; text-decoration: none; }
.next-prev-a:hover  { background: #fff; border: 2px solid var(--col-head-foot); border-top: 1px solid var(--col-head-foot); color: var(--col-nav); text-decoration: underline; }
.next-prev-words  { background: var(--bg-b); border: 2px solid var(--col-head-foot); border-bottom: none; border-top-left-radius: 5px; border-top-right-radius: 5px; padding: 0.2em 0.8em; }
.next-prev-arrow  {  color: var(--col-head-foot); display: inline; }

/* book page */
#prices-ul, #amazon-ul  { list-style: none; margin: 0.4em 0 0.2em 0; padding-left: 0; }
.prices-li, .amazon-li  { background: url(images/flags-32x384-transparent-01.png) 0 14px no-repeat; border-top: 1px dashed var(--col-head-foot); height: 60px; line-height: 60px; padding: 0 0 0 45px; }
#payhip-p  { background: url(images/flags-32x384-transparent-01.png) 0 -50px no-repeat; height: 60px; line-height: 60px; margin: 0.4em 0 0 0; padding: 0 0 0 45px; } /* for a single product */
.prices-li:first-of-type, .amazon-li:first-of-type  { border-top: none; }
/* N.B. not all countries in use; default flag is US */
#price-uk, #amazon-uk  { background: url(images/flags-32x384-transparent-01.png) 0 -50px no-repeat; }
#price-eu, #amazon-eu  { background: url(images/flags-32x384-transparent-01.png) 0 -114px no-repeat; }
#price-ca, #amazon-ca  { background: url(images/flags-32x384-transparent-01.png) 0 -178px no-repeat; }
#price-au, #amazon-au  { background: url(images/flags-32x384-transparent-01.png) 0 -242px no-repeat; }
#price-nz, #amazon-nz  { background: url(images/flags-32x384-transparent-01.png) 0 -308px no-repeat; }
#price-za, #amazon-za  { background: url(images/flags-32x384-transparent-02.png) 0 14px no-repeat; }
#price-es, #amazon-es  { background: url(images/flags-32x384-transparent-02.png) 0 -50px no-repeat; }
#price-de, #amazon-de  { background: url(images/flags-32x384-transparent-02.png) 0 -114px no-repeat; }
#price-fr, #amazon-fr  { background: url(images/flags-32x384-transparent-02.png) 0 -178px no-repeat; }
#price-it, #amazon-it  { background: url(images/flags-32x384-transparent-02.png) 0 -242px no-repeat; }
#price-nl, #amazon-nl  { background: url(images/flags-32x384-transparent-02.png) 0 -308px no-repeat; }
#price-at, #amazon-at  { background: url(images/flags-32x384-transparent-03.png) 0 14px no-repeat; }
#price-be, #amazon-be  { background: url(images/flags-32x384-transparent-03.png) 0 -50px no-repeat; }
#price-ie, #amazon-ie  { background: url(images/flags-32x384-transparent-03.png) 0 -114px no-repeat; }
#price-jp, #amazon-jp  { background: url(images/flags-32x384-transparent-03.png) 0 -178px no-repeat; }
#price-pt, #amazon-pt  { background: url(images/flags-32x384-transparent-03.png) 0 -242px no-repeat; }
#price-ch, #amazon-ch  { background: url(images/flags-32x384-transparent-03.png) 0 -308px no-repeat; }
.am-link-a:link, .am-link-a:visited, .phip-link-a:link, .phip-link-a:visited  { background: var(--col-nav); background: linear-gradient(var(--am-link-background-gradient-top), var(--am-link-background-gradient-bottom)); border: 1px solid var(--am-link-background-gradient-bottom); border-radius: 5px; color: #fff; padding: 0.3em 0.6em; text-decoration: none; }
.am-link-a:hover, .phip-link-a:hover  { background: var(--am-hover-background-colour); border: 1px solid var(--am-link-background-gradient-bottom); text-decoration: underline; }

} /* end of min-width: 600px */


@media all and (min-width: 700px)  {
.nav-a:link  { padding: 0 1em; }
#summary  { background: var(--bg-d) url(images/icon-36x36-01.png) 100% 0 no-repeat; }
} /* end of min-width: 700px */


@media all and (min-width: 800px)  {
#book-plug, #book-plug-index  { background: var(--bg-d) url(images/icon-36x36-01.png) 100% 0 no-repeat; border: 5px solid var(--col-head-foot); border-radius: 5px; margin: var(--gap-a) 0 0 0; padding: 0 var(--gap-a) 2em var(--gap-a); }
.book-plug-h2  { background: none; border: none; color: var(--col-nav); margin: 1em 0 0 0; padding-left: 0; }
.book-plug-h3  { border-top: 2px dashed var(--col-head-foot); padding: 0.8em 0 0 0; }
.prices-li, .amazon-li  { background: url(images/flags-32x384-transparent-01.png) 0 19px no-repeat; height: 70px; line-height: 70px; padding: 0 0 0 55px; }
#payhip-p  { background: url(images/flags-32x384-transparent-01.png) 0 -45px no-repeat; height: 70px; line-height: 70px; padding: 0 0 0 55px; }
.prices-li:first-of-type, .amazon-li:first-of-type  { border-top: none; }
#price-uk, #amazon-uk  { background: url(images/flags-32x384-transparent-01.png) 0 -45px no-repeat; }
#price-eu, #amazon-eu  { background: url(images/flags-32x384-transparent-01.png) 0 -110px no-repeat; }
#price-ca, #amazon-ca  { background: url(images/flags-32x384-transparent-01.png) 0 -174px no-repeat; }
#price-au, #amazon-au  { background: url(images/flags-32x384-transparent-01.png) 0 -238px no-repeat; }
#price-nz, #amazon-nz  { background: url(images/flags-32x384-transparent-01.png) 0 -302px no-repeat; }
#price-za, #amazon-za  { background: url(images/flags-32x384-transparent-02.png) 0 19px no-repeat; }
#price-es, #amazon-es  { background: url(images/flags-32x384-transparent-02.png) 0 -45px no-repeat; }
#price-de, #amazon-de  { background: url(images/flags-32x384-transparent-02.png) 0 -110px no-repeat; }
#price-fr, #amazon-fr  { background: url(images/flags-32x384-transparent-02.png) 0 -174px no-repeat; }
#price-it, #amazon-it  { background: url(images/flags-32x384-transparent-02.png) 0 -238px no-repeat; }
#price-nl, #amazon-nl  { background: url(images/flags-32x384-transparent-02.png) 0 -302px no-repeat; }
#price-at, #amazon-at  { background: url(images/flags-32x384-transparent-03.png) 0 19px no-repeat; }
#price-be, #amazon-be  { background: url(images/flags-32x384-transparent-03.png) 0 -45px no-repeat; }
#price-ie, #amazon-ie  { background: url(images/flags-32x384-transparent-03.png) 0 -110px no-repeat; }
#price-jp, #amazon-jp  { background: url(images/flags-32x384-transparent-03.png) 0 -174px no-repeat; }
#price-pt, #amazon-pt  { background: url(images/flags-32x384-transparent-03.png) 0 -238px no-repeat; }
#price-ch, #amazon-ch  { background: url(images/flags-32x384-transparent-03.png) 0 -302px no-repeat; }
.am-link-a:link, .am-link-a:visited, .phip-link-a:link, .phip-link-a:visited  { padding: 0.3em 0.8em; }
} /* end of min-width: 800px */




/* ====================================
   6 :
   first two-column layout: 960px wide
   suitable for tablets & small monitors
   white background
   ===================================== */

@media all and (min-width: 1010px)  {

html { scrollbar-color: var(--col-nav) var(--bg-b); }
::-webkit-scrollbar { background: var(--bg-b); }
::-webkit-scrollbar-thumb  { background: var(--col-nav); }
body  { grid-template-columns: 1fr 960px 1fr; }
#inner  { max-width: 100%; width: 100%; }

/* main grid  */
#breadcrumbs-nav  { grid-area: crumbs; }
article  { grid-area: article; }
#comments  { grid-area: comments; }
#text-copyright  { grid-area: text-copy; }
#subnav  { grid-area: subnav; }
#book-plug, #book-plug-index  { grid-area: plug; }
#next-prev  { grid-area: next-prev; }
#sbt-photos  { grid-area: photos; }
main  { display: grid;
        grid-template-columns: 640px      var(--gap-a)  280px;
        grid-template-areas:  "crumbs     crumbs        crumbs"
                              "article    .             subnav"
                              "article    .             ."
                              "next-prev  .             ."
                              "text-copy  .             ."
                              "comments   .             ."
                              "photos     .             ."
                              "plug       plug          plug";
        } /* individual article pages */
.landing-page-main  {
       grid-template-areas: "article  .     subnav"
                            "article  .     ."
                            "plug     plug  plug";
       } /* basics. faqs, docs & texts landing pages; only basics & faqs include plug */
.book-page-main  {
       grid-template-columns: 1fr;
       grid-template-areas:  "article";
       } /* book page */
.no-subnav-main  {
       grid-template-columns: 1fr;
       grid-template-areas:  "crumbs"
                             "article"
                             "plug";
       } /* about, contact, privacy & site-map pages; only contact & privacy include plug */
.simple-page-main  { padding: 0 0 2em 0;
       grid-template-columns: 1fr;
       grid-template-areas:  "article";
       } /* thanks page; error page if no plug */
.home-page-main  { padding: 0 0 2em 0;
       grid-template-columns: 1fr;
       grid-template-areas:  "article"
                             "plug";
       } /* home page; error page if plug included */

/* header */
header  { background: var(--col-head-foot); border-top: 5px solid var(--col-nav); padding: 0.2em var(--gap-a); }
#sitename  { border: 1px solid #bf7925; border-left: none; border-radius: 3px; float: left; margin: 0.8em 0; padding: 0.2em 0; text-align: left; }
#sitename-span  { background: #333; background: radial-gradient(circle, #444, #000); border: 3px solid var(--col-nav); border-radius: 3px; box-shadow: 1px 1px 5px #333; float: none; margin: 0 0.5em 0 0; padding: 0.3em 1em; width: auto; }

/* main nav */
#nav-ul  { gap: 0; justify-content: space-around; padding: 0.3em 0; }
.nav-a:link  { padding: 0 1.5em; }
.nav-a:focus  { outline: 3px solid #fff; }

/* breadcrumbs */
#breadcrumbs-nav  { border-top: 0.5em solid #fff; }
#breadcrumbs-ol  { padding: 0.2em 1em; }

/* subnav (size & padding of links reduced) */
#subnav  { margin: 0; }
#subnav-h2  { margin: 1.5rem 0 0 0; } /* same as h1 */
.subnav-h3  { margin: 0.4em 0 0 0; }
.subnav-a:link  { font-size: 95%; font-size: calc(13px + 0.390625vw); padding: 0.25em 0.1em 0.25em 1em; }
.subnav-a[aria-current]:link, .subnav-a[aria-current]:visited, .subnav-a[aria-current]:hover  { background: #fff url(images/sub-arrow-6x12.png) 0 50% no-repeat; border-left: none; border-top-left-radius: 0; border-bottom-left-radius: 0; }
text-title  { display: block; }

/* book plug */
#book-plug, #book-plug-index  { margin: 2em 0 0 0; }

/* about & hone pages */
.home-section, .about-section, #home-faqs-ul  { columns: 2; column-gap: 2em; }
.home-h2, .about-h2  { column-span: all; margin-bottom: 0.8em; }
.section-first-p  { margin: 0; }
.section-link-p  { border-bottom: 2px dashed var(--col-headings); border-top: 2px dashed var(--col-headings); column-span: all; font-size: 1.2em; padding: 1em 0; text-align: center; }

/* book page */
#about-book  { width: 560px; }
#book-cover-box-350  { margin: -85px 0 0 2em; }
#formats-ul  { border-bottom: 1px dashed var(--col-head-foot); display: flex; gap: 2em; padding-bottom: 1em; }
.formats-li  { width: 33%; }
#book-editions-h2  { grid-area: h2; }
#editions-p  { grid-area: para; }
#formats-ul  { grid-area: ul; }
#book-availability  { border-right: 1px dashed var(--col-head-foot); grid-area: avail; padding: 0 1.5em 0 0; }
#book-other  { grid-area: other; }
#book-editions  {
       display: grid;
       grid-template-columns:  1fr    2em   1fr;
       grid-template-areas:   "h2     h2    h2"
                              "para   para  para"
                              "ul     ul    ul"
                              "avail  .     other";
       }
#prices-ul  { columns: 2; gap: 2em; }
#price-au  { border-top: 0; } /* first item in second column */

/* contact page */
#contact-h1  { grid-area: h1; margin-bottom: 1rem; }
#welcome  { grid-area: welcome; }
#form  { border-left: 2px dashed var(--col-head-foot); grid-area: form; margin: 0.8em 0 0 0; padding: 0 0 0 2em;  }
.contact-page-article  {
       display: grid;
       grid-template-columns:  1fr      1em  1fr;
       grid-template-areas:   "h1       h1   h1"
                              "welcome  .    form";
       }
.fill-p  { margin: 0; }

} /* end of min-width: 1010px */




/* ====================================
   6 :
   wider two-column layout: 1150px wide
   with borders & improved header area
   ==================================== */

@media all and (min-width: 1200px)  {

body  { background: var(--bg-d); grid-template-columns: 1fr 1150px 1fr; }
#sitename  { font-size: 1.5rem; font-size: clamp(1.5rem, 1.3rem + 1vw, 2.5rem); }
#sitename-span  { margin: 0 1em 0 0; } /* creates gap to left of 'An Introduction' */
h1  { background: var(--bg-d); border: 2px solid var(--col-borders); border-right: none; border-top-left-radius: 3px; border-bottom-left-radius: 3px; margin-left: -60px; padding-left: var(--gap-a); }
h2  { background: var(--bg-d); border: 1px solid var(--col-borders); border-right: none; border-top-left-radius: 3px; border-bottom-left-radius: 3px; margin-left: -60px; padding-left: var(--gap-a); }
figcaption  { border-left: 5px solid var(--bg-a); border-bottom-right-radius: 7px; }
.map-figcaption, .sbt-figcaption, .pm-figcaption  { border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; padding: 1em 1.5em; }
.map-figcaption  { padding: 0.25em 1em 0.5em 1em; }
blockquote  { border-left: 5px solid var(--bg-a); border-top-right-radius: 7px; }

/* main nav - general */
#primary-nav  { background: var(--col-nav); display: flex; padding: 0 var(--gap-a); }
#nav-ul  { gap: 1em; justify-content: space-between; padding: 0.3em 0 0 0; }
.nav-li  { flex-grow: 1; }
.nav-a:link, .nav-a:visited  { border: 2px solid var(--col-borders); border-bottom: none; border-radius: 5px; border-bottom-left-radius: 0; border-bottom-right-radius: 0; display: block; flex-grow: 1; margin: 0 0 -1px 0; padding: 0.2em 0;  text-shadow: 1px 1px 1px #000; }
.nav-a:hover, .nav-a:focus  { text-shadow: none; }
.nav-a[aria-current]:link, .nav-a[aria-current]:visited  { background: var(--col-borders); border: 2px solid var(--col-borders); border-bottom: none; color: #000; cursor: default; text-shadow: none; }

/* main nav - :link & :visited - landing and non-landing pages */
.body-index #nav-index, .body-basics #nav-basics, .body-questions #nav-questions, .body-docs #nav-docs, .body-texts #nav-texts, body.book #nav-book  { background: var(--col-borders); color: #000; text-shadow: none; }

/* main nav - :hover - non-landing pages */
.body-index #nav-index:hover, .body-basics #nav-basics:hover, .body-questions #nav-questions:hover, .body-docs #nav-docs:hover, .body-texts #nav-texts:hover, body.book #nav-book:hover  { background: #fff; color: var(--col-nav); }

/* main nav - :hover - section landing pages */
.body-index #nav-index[aria-current]:hover, .body-basics #nav-basics[aria-current]:hover, .body-questions #nav-questions[aria-current]:hover, .body-docs #nav-docs[aria-current]:hover, .body-texts #nav-texts[aria-current]:hover, body.book #nav-book[aria-current]:hover  { background: var(--col-borders); color: #000; }

/* breadcrumbs */
#breadcrumbs-nav  { border-bottom: 0.7em solid var(--col-borders); border-top: 0.7em solid var(--col-borders); }
#breadcrumbs-ol  { background: var(--bg-a); border-top: 2px solid #c48167; padding: 0.4em 1.5em; }
.breadcrumbs-a:link, .breadcrumbs-a:visited  { background: var(--bg-b); border: 1px solid var(--bg-a); border-radius: 3px; padding: 0 0.3em 0.1em 0.3em; text-decoration: none; }
.breadcrumbs-a:hover  { background: #fff; border: 1px solid var(--col-hover); }
.bc-separator  { color: var(--col-headings); padding: 0 0.5em; }

/* subnav */
#subnav-h2  { background: var(--col-borders); border-top: 1px solid #fff; border-bottom: 1px solid #fff; border-top-left-radius: 9px; color: #000; margin-right: -40px; padding: 0.3em 0 0.3em 0.5em; }
.subnav-h3  { color: var(--col-nav); }

/* main grid */
main  { border: var(--gap-a) solid var(--col-borders); border-top: none; padding-bottom: var(--gap-a);
        grid-template-columns: 720px  var(--gap-a)  310px;
        }
.landing-page-main  { border-top: 1em solid var(--col-borders); }
.no-subnav-main  {
       grid-template-columns: 1fr      var(--gap-a);
       grid-template-areas:  "crumbs   crumbs"
                             "article  ."
                             "plug     plug";
       }
.simple-page-main, .home-page-main, .book-page-main  { border-top: 1em solid var(--col-borders);
       grid-template-columns: 1fr      var(--gap-a);
       grid-template-areas:  "article  ."
                             "plug     .";
       }

article  { background: #fff; padding-left: var(--gap-a); }
#subnav  { background: #fff; padding-right: 20px; }
#comments, #text-copyright, #next-prev, #sbt-photos  { margin-left: var(--gap-a); }

/* footer */
footer  { padding: 0 var(--gap-a) 1em var(--gap-a); }
#gotop-p  { margin: 0 0 0.8em 0; }
.footer-li  { padding: 1em 0 0 0; }
.footer-a:link  { padding: 0.2em 0.8em; }
#design-p  { margin: 0.3em 0 0 0; }
#footer-name-p  { background: #333; background: radial-gradient(circle, #444, #000); border: 3px solid var(--col-nav); border-radius: 3px; margin: 0 3px 0 0; padding: 0.3em 0.8em; position: absolute; right: 30px; text-shadow: 1px 1px 1px #000; top: 1.5em; width: auto; }

/* book plug (on home & error pages, no right margin from now on) */
#book-plug  { margin: var(--gap-a) var(--gap-a) 0 var(--gap-a); }
#book-plug-index  { margin: var(--gap-a) 0 0 var(--gap-a); }

/* book page */
#about-book  { width: 630px; }
#book-cover-box-350  { margin: -90px 0 0 2em; }
#formats-ul  { border-bottom: 2px dashed var(--col-head-foot); }
#book-availability  { border-right: 2px dashed var(--col-head-foot); }
#amazon-links, #google-link, #payhip-link  { border-top: 2px dashed var(--col-nav); }
} /* emd of min-width: 1200px */




/* ==================================
   7 :
   3rd two-column layout: 1250px wide
   ================================== */

@media all and (min-width: 1300px)  {

body  { grid-template-columns: 1fr 1250px 1fr; }
header  { padding: 0.2em var(--gap-b); }
h1, h2  { margin-left: -90px; padding-left: 70px; }
main  { border: var(--gap-b) solid var(--col-borders); border-top: none; padding-bottom: var(--gap-b);
        grid-template-columns: 750px var(--gap-b) 320px;
        }
.no-subnav-main, .simple-page-main, .home-page-main, .book-page-main  { grid-template-columns: 1fr  var(--gap-b); padding-bottom: var(--gap-b); }
article  { padding-left: var(--gap-b); }
#primary-nav  { padding: 0 var(--gap-b); }
#nav-ul  { padding: 0.3em 0 0 0; }
.bc-separator  { padding: 0 0.8em; }
#subnav  { padding-right: 20px; }
#subnav-h2  { margin-right: -50px; padding: 0.4em 0 0.4em 1em; }
#book-plug  { margin: var(--gap-b) var(--gap-b) 0 var(--gap-b); padding: 0 var(--gap-b) var(--gap-a) var(--gap-b); }
#book-plug-index  { margin: var(--gap-b) 0 0 var(--gap-b); padding: 0 var(--gap-b) var(--gap-a) var(--gap-b); }
#comments, #text-copyright, #next-prev, #sbt-photos  { margin-left: var(--gap-b); }
footer  { padding: 0 var(--gap-b) 1em var(--gap-b); }
#footer-name-p  { right: var(--gap-b); }
#about-book  { width: 680px; }
#book-cover-box-350  { margin: -95px 0 0 2.5em; }

} /* end of min-width:1300px */




/* ==================================
   8 :
   4th two-column layout: 1450px wide
   ================================== */

@media all and (min-width: 1500px)  {

body  { grid-template-columns: 1fr 1450px 1fr; }
header  { padding: 0.2em var(--gap-c); }
h1, h2  { margin-left: -120px; padding-left: var(--gap-c); }
h1, #subnav-h2  { margin-top: 2rem; }
main  { border: var(--gap-c) solid var(--col-borders); border-top: none; padding-bottom: var(--gap-c);
        grid-template-columns: 840px var(--gap-c) 370px; }
.no-subnav-main, .simple-page-main, .home-page-main, .book-page-main  { grid-template-columns: 1fr  var(--gap-c); padding-bottom: var(--gap-c); }
article  { padding-left: var(--gap-c); }
#primary-nav  { padding: 0 var(--gap-c); }
#nav-ul  { padding: 0.5em 0 0 0; }
#subnav  { padding-right: 30px; }
#subnav-h2  { border-top-left-radius: 11px; margin-right: -70px; }
#book-plug  { margin: var(--gap-b) var(--gap-c) 0 var(--gap-c); padding: 0 var(--gap-c) var(--gap-b) var(--gap-c); }
#book-plug-index  { margin: var(--gap-b) 0 0 var(--gap-c); padding: 0 var(--gap-c) var(--gap-b) var(--gap-c); }
#book-img  { margin: 1.2em 0 1.5em 2em; }
#comments, #text-copyright, #next-prev, #sbt-photos  { margin-left: var(--gap-c); }
footer  { padding: 0 var(--gap-c) 1em var(--gap-c); }
#footer-ul  { gap: 1em; }
#footer-name-p  { right: var(--gap-c); }
#about-book  { width: 820px; }
#book-cover-box-350  { margin: -100px 0 0 2.5em; }

} /* end of min-width:1500px */




/* ==================================
   9 :
   5th two-column layout: 1650px wide
   ================================== */

@media all and (min-width: 1700px)  {

body  { grid-template-columns: 1fr 1650px 1fr; }
header  { padding: 0.2em var(--gap-d); }
h1, h2  { margin-left: -180px; padding-left: var(--gap-d); }
main  { border-left: var(--gap-d) solid var(--col-borders); border-right: var(--gap-d) solid var(--col-borders);
        grid-template-columns: 920px 90px 400px; }
.no-subnav-main, .simple-page-main, .home-page-main, .book-page-main  { grid-template-columns: 1fr var(--gap-d); }
article  { padding-left: var(--gap-d); }
#primary-nav  { padding: 0 var(--gap-d); }
#subnav-h2  { margin-right: -90px; }
#book-plug  { margin: var(--gap-b) var(--gap-d) 0 var(--gap-d); }
#book-plug-index  { margin: var(--gap-b) 0 0 var(--gap-d); }
#comments, #text-copyright, #next-prev, #sbt-photos  { margin-left: var(--gap-d); }
footer  { padding: 0 var(--gap-d) 1em var(--gap-d); }
#footer-name-p  { right: var(--gap-d); }
.witnesses-ol  { column-count: 3; } /* grassy knoll witnesses article */
#about-book  { width: 920px; }
#book-cover-box-350  { margin: -100px 0 0 3em; }

} /* end of min-width:1500px */



} /* end of display:grid */




/* ============
   12 :
   print layout
   ============ */

@media print  {

@page  { margin: 1.5cm 2cm; }

.no-print, #breadcrumbs-nav, #categorised, footer, #gotop-p, #next-prev, #primary-nav, #skip-p, #subnav, #toc-nav, [aria-label="Return to the article"]:link  { display: none; }
.print-only  { display: inline; }
*  { background-image: none important!; } /* just in case browsers decide to put them in! */

body, main  { background: #fff; border: none; color: #000; font: 12pt/1.7 georgia, serif; padding: 0; width: 100%; }

a:link, a:visited  { background: none; color: #000; text-decoration: none; }
a::after { content: " [" attr(href) "]"; }
h1  { border: none; color: #000; font: bold 180%/1.4 georgia, serif; padding: 0.2em 0; width: 100%; }
h2  { background: #fff; border: none; color: #000; font: bold 140%/1.4 georgia, serif; padding: 0; break-after: avoid; width: 100%; }
h3  { color: #000; font: bold 110%/1.4 georgia, serif; break-after: avoid; width: 100%; }
h4  { color: #000; font: bold 100%/1.4 georgia, serif; break-after: avoid; width: 100%; }
p  { orphans: 2; widows: 2; }
li::marker, .sub-ul li::marker  { color: #000; }
dl  { margin: 0.3em 0; padding: 0; width: 100%; }
dt  { color: #000; font: bold 12pt/1.7 georgia, serif; padding: 0.2em 0 0 0; width: 100%; }
dd  { padding: 0; width: 100%; }
img  { background: #fff; border: 1px solid #666; box-decoration-break: clone; }
abbr  { border-bottom: none; }
blockquote  { background: #fff; border: none; border-left: 1px solid #666; padding-top: 0; }
figcaption  { background: #fff; border: none; border-left: 1px solid #666; border-top: 1px dotted #666; padding-bottom: 0.75em; }
.map-figcaption, .sbt-figcaption, .pm-figcaption  { border: 1px dotted #666; border-top: none; color: #000; max-width: 100%; }
.by-author  { color: #000; font-family: georgia, serif; }
noscript  { border: 2px solid #000; }

#inner  { background: #fff; margin: 0 auto; padding: 0; width: 100%;
          display: grid;
          grid-template-columns: 100%;
          grid-template-areas:  "header"
                                "primary-nav"
                                "main";
          }
main  { display: grid;
        grid-template-columns: 100%;
        grid-template-areas:  "article"
                              "text-copy"
                              "comments"
                              "photos"
                              "plug";
        }
#sitename { border-bottom: 1px solid #666; color: #000; font: normal 1.3rem/1.2 "oswald", system-ui, "segoe ui", roboto, helvetica, arial, sans-serif; padding: 0 0 1em 0; }
#sitename-span  { background: #fff; border: none; color: #000; }

/* summary */
#summary  { border: none; border-top: 1px dashed #666; border-bottom: 1px dashed #666; }
#summary-h2  { color: #000; }

/* information (documents and texts sections) */
#text-meta, .text-meta-h2  { color: #000; }

/* comments (about texts and documents) */
#comments, #text-copyright  { border: none; border-top: 1px dashed #666; border-bottom: 1px dashed #666; border-radius: 0; padding: 0 0 1.5em 0; }
.comments-h2, .comments-h3  { color: #000; }

/* lists of abbreviations (footntoes & grassy knoll witnesses) */
#abbreviations-fn, #abbreviations-gk  { border: none; border-top: 1px dashed #666; border-bottom: 1px dashed #666; border-radius: 0; margin: 1.5em 0 0 0; padding: 0 1em 0.5em 1em; }
#sbt-photos  { border: none; border-top: 1px dashed #666; border-bottom: 1px dashed #666; border-radius: 0; padding: 0 0 1.5em 0; }.text-copy-h2, #abbrev-h2, #sbt-photos-h2  { color: #000; }

#comments, #next-prev, #sbt-photos, #text-copyright  { margin-left: 0; }

/* book page */
.no-print-link::after  { content: ""; }
.book-option  { color: #000; }
#formats-ul  { border-bottom: none; flex-direction: column; }
.formats-li  { width: 100%; }
#book-availability  { border-right: none; }
#book-editions  {
       display: grid;
       grid-template-columns:  100%;
       grid-template-areas:   "h2"
                              "para"
                              "ul"
                              "avai"
                              "other";
       }
#prices-ul  { columns: 1; }
.prices-li, .amazon-li, #payhip-p  { background: #fff; border-top: none; height: auto; line-height: 1.7; margin: 1em 0 0 0; padding: 0; }
.am-link-a:link, .phip-link-a:link  { background: #fff; border: none; border-radius: 0; color: #000; padding: 0; }
#payhip-link, #google-link, #amazon-links  { border-top: none; }
#google-play-a:link  { border: none; border-radius: 0; display: inline; height: 68px; margin: 0; padding: 0.5em 0; }

/* book plug */
#book-plug, #book-plug-index  { background: #fff; border: none; border-top: 1px dashed #000; border-bottom: 1px dashed #000; border-radius: 0; margin: 1.5em 0 2em 0; padding: 0 0 1.5em 0; }
.book-plug-a:link, .book-plug-a:visited  { background: #fff; border: none; border: none; color: #000; font-size: 12pt; padding: 0; }
.arrow-right  { display: none; }
.book-plug-h2  { color: #000; margin: 0.5em 0 0 0; }
.book-plug-h3  { border-top: 0; padding: 0.5em 0 0 0; }

/* footnotes */
[rel="footnote"]:link  { border: 1px solid #666; }
[rel="footnote"]::after  { content: ""; }

/* lists of abbreviations */
.abbr-dl  { border-top: none; }
.abbr-dt, .abbr-dd  { margin: 0; padding: 0.4em 0 0 0; }
#abbr-p  { color: #000; }

/* contact page */
#form  { border-left: none; padding: 0; }
.contact-page-article  {
       grid-template-columns:  100%;
       grid-template-areas:   "h1"
                              "welcome"
                              "form";
       }
input, input:user-valid, input:user-invalid, textarea  { background: #fff; border: 1px solid #000; }
.comSubmit  { background: #fff; border: 1px solid #000; color: #000; font-size: 12pt; }

/* table: NAA & what-do-people-think articles */
table  { background: #fff; border: none; margin: 0 0 0.5em 0; }
caption  { color: #000; font-family: georgia, serif; font-size: 110%; font-weight: bold; margin: 1em 0 0 0; }
th  { border-bottom: 1px dotted #666; padding: 0.2em 0.5em; }
td  { border-bottom: 1px dotted #666; }

/* Feinman pages: copyright statement & document downloads */
#text-copyright  { background: #fff; border: 1px solid #000; border-radius: 5px; padding: 0 2em 1.5em 2em; }
.downloads-a:link  { background: #fff; border: none; border-radius: 0; color: #000; padding: 0; }

/* links on landing pages */
.read-article, .read-article-final  { background: #fff; border: none; border-radius: 0; padding: 0; }
.read-article-final  { margin: 1em 0 3em 0; }
.read-article-a:link, .read-article-a:visited  { background: #fff; border: none; border-radius: 0; padding: 0; }


} /* end of print styles */



/* =======
   The End
   ======= */
