header hr,
footer hr {
  display: none;
}

html {
  font-size: 100%;
}

.bg-before,
.bg-after {
  position: relative;
  z-index: 0;
}

.bg-before::before,
.bg-after::after {
  z-index: -1;
  content: "";
  position: absolute;
  inset: 0;
}

body {
  text-rendering: optimizeLegibility;
  font-family: "Raleway", "Open Sans", "Segoe UI", Helvetica, "Arial Narrow", sans-serif;
  font-variant: small-caps;
  background: black;
  color: white;
}

:root {
  --wood-a-rgb: rgba(255, 226, 112);
  --wood-b-rgb: rgba(191, 128, 0);
  --wood-c-rgb: rgba(191, 89, 0);
  --wood-d-rgb: rgba(0, 0, 0);
  --wood-a-ok: oklch(79.381% 0.16163 90.67);
  --wood-b-ok: oklch(64.836% 0.13705 74.48);
  --wood-c-ok: oklch(58.078% 0.15305 50.203);
  --wood-d-ok: oklch(0% 0.15305 50.203);
}

.wrap-inner {
  z-index: 0;
  background-color: #d6a86c;
  background: radial-gradient(ellipse farthest-corner, var(--wood-a-rgb) 40%, var(--wood-c-rgb) 75%, var(--wood-d-rgb) 100%);
  background: radial-gradient(ellipse farthest-corner, var(--wood-a-ok) 40%, var(--wood-c-ok) 75%, var(--wood-d-ok) 100%);
}
.wrap-inner::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  opacity: 0.5;
  background-position: center;
  background-image: url(../design/woodgrain-1024.png);
  filter: blur(1px);
}
@supports (transform: scale(2)) {
  .wrap-inner::before {
    background-image: url(../design/woodgrain-512.png);
    inset: 25%;
    transform: scale(2);
    filter: blur(0.5px);
  }
}

header,
footer {
  background: #770a20;
  color: white;
  position: relative;
  z-index: 0;
}
header::before,
footer::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  background-position: center;
  background-image: url(../design/clean-textile-64.png);
}
header a,
footer a {
  border: none !important;
}

h1, h2, h3 {
  font-family: "Copperplate CC";
  font-weight: 100;
}

h1,
h2,
h3 {
  font-weight: bold;
}

a {
  text-decoration: none;
  color: #ffffff;
  border-bottom: 0.05em dotted #ffffff;
}
a:hover, a:active {
  color: #ffffff;
  border-width: 0.25em;
  border-color: #ffffff;
}

em {
  font-size: 1.1em;
  font-weight: bold;
  font-style: italic;
}

strong {
  font-weight: bold;
}

img {
  max-width: 100%;
  height: auto;
}

ul {
  list-style: disc;
}

ol {
  list-style: decimal;
}

.topgraphic img {
  border: none;
}

.topmenu a {
  text-decoration: none !important;
  text-transform: uppercase;
}
.topmenu a, .topmenu a:link, .topmenu a:visited, .topmenu a:active {
  color: #ffffff;
}
.topmenu a:hover {
  text-decoration: dotted !important;
}
.topmenu a {
  position: relative;
  z-index: 0;
}

ul.directions {
  padding-left: 0;
}
ul.directions > li {
  list-style: none;
  margin-bottom: 1.5em;
}
ul.directions > li > ol {
  margin: 1em 0 1em 1em;
  padding: 0 0 0 1em;
}
ul.directions > li > ol > li {
  padding-left: 0.5em;
}

ul.payment .wrap-inner {
  position: relative;
  z-index: 0;
}

.media {
  line-height: 0px;
}

.floatimageright {
  line-height: 0px;
}

.shadowed {
  filter: drop-shadow(0.3em 0.3em 0.3em #909088);
}

table .text caption {
  font-weight: bold;
}
table .text tr {
  border-top: 1px dotted;
}

address {
  font-style: normal;
}

.page {
  background: rgb(250, 242, 229);
  color: rgb(6, 0, 22);
  border-radius: 2rem;
  background-clip: padding-box;
  z-index: 0;
}
.page::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  opacity: 0.375;
  background-image: url(../design/pickguard-alpha-32.png);
  background-position: center;
}
@supports (transform: scale(2)) {
  .page::before {
    background-image: url(../design/pickguard-alpha-32-sm.png);
    inset: 25%;
    transform: scale(2);
    filter: blur(0.5px);
  }
}
.page a {
  color: #152b57;
  border-bottom: 0.05em dotted #152b57;
}
.page a:visited {
  color: #57154e;
  border-color: #57154e;
}
.page a:hover, .page a:active {
  color: #012f8b;
  border-color: #012f8b;
}
.page hr {
  border: none;
  border-bottom: 0.15em dotted black;
}
