Although the code is a fair mess, and the html structure completely bonkers (sorry!), not all is lost. You do have a tremendous amount of content, and it is possible (to a certain extent) to improve the styling. Because of the html structure the right aligned boxes and images are rather difficult to solve in css only, though. And a number of tables are too wide to fit on a smaller screen, unfortunately.
Attach the following style sheet to all your content pages (the index home page is a lost cause, I am afraid). Much more can be done, but I merely wanted to give you a couple of options to work with while you clean up your code.
Alternatively, open your pages in Firefox Developer, and inspect the page. Then switch to the Style Editor tab, and click the plus button to attach this css code. (copy and paste into the editor to see the result in real-time in Firefox Developer). Your site will be reasonably responsive too.
/* no media query: styles affect all breakpoints! */
@import url('https://fonts.googleapis.com/css?family=Open+Sans:300,300i,400,400i,600,600i,700,700i,800,800i|Roboto+Slab:100,300,400,700|Uncial+Antiqua');
html {
background-image: url('medsand.gif');
}
body,
.d {
font-family: 'Open Sans',sans-serif;
line-height: 1.8;
font-size: 1rem
}
body[background] {
background: none;
background-color: white;
padding: 2rem;
box-shadow: 0 0 40px #ccc;
}
table[align="right"] {
float: none;
padding: 1rem
}
table[border="1"],
table[border="1"] td {
border: none !important;
float:none;
}
table[width] {
width: auto;
margin: 0 auto;
}
table td {
padding: 0.5rem;
}
img {
width: 100%;
height: auto;
}
font {
font-family: 'Open Sans',sans-serif;
}
font[size] i {
font-family: 'Roboto Slab',serif;
font-style: normal
}
font i {
font-family: 'Uncial Antiqua','Roboto Slab',serif;
}
body>blockquote {
padding:0;
margin: 0;
}
@media screen and (max-width: 39.9375em) {
/* styles for small only */
}
@media screen and (min-width: 40em) {
/* styles for medium and onward */
body {
max-width: 47rem;
margin: 0 auto;
background-color: none !important;;
}
body,
.d {
line-height: 1.9;
}
}
@media screen and (max-width: 39.9375em) {
/* styles for small and medium*/
}
@media screen and (min-width: 40em) and (max-width: 63.9375em) {
/* styles for medium only */
}
@media screen and (min-width: 64em) {
/* styles for large and onward */
body {
max-width: 55rem;
padding: 4rem !important;
}
body,
.d {
line-height: 1.9;
font-size: 1.1rem
}
}
@media screen and (min-width: 64em) and (max-width: 74.9375em) {
/* styles for large only */
}