
* {
    box-sizing: border-box;
}

:root {
  /* Backgrounds: The Aged Paper & Cardboard Sleeves */
  --bg-parchment: #f4efe3;      /* Main site background (aged inner sleeve) */
  --bg-cardboard: #decfa8;      /* Secondary containers (worn outer jacket) */
  --bg-manila: #fcedd4;
  --bg-manila-shade: #edaf78;
  
  /* Darks: The Grooves & Mid-Century Typeface */
  --vinyl-black: #1f1b1a;       /* Body text, heavy borders, deep wax grooves */
  --ink-charcoal: #3b3635;      /* Subtle headings, muted dark text */

  /* Accents: The Retro Record Labels */
  --label-orange: #d46432;      /* Primary CTA / Active states (Classic 45rpm pop) */
  --label-teal: #5e8c81;        /* Secondary buttons, navigation links, accents */
  --groove-gray: #a69c85;       /* Borders, hr dividers, dust/wear texture lines */
}

body {
    background: var(--bg-manila); 
    font-family: serif; 
    margin:0px;
    position: relative;
    min-height: 100vh;
    margin: 0 0;
    display: flex;
    justify-content: center;
    align-items: flex-start;
}

body::after {
	content: "";
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	box-shadow: inset .625em 0 90px var(--bg-manila-shade);
	z-index: -1;
}

body::before {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    pointer-events: none;
    filter: url(#paper-noise);
    opacity: .25; 
}

.svg-filter-container {
    position: absolute;
    width: 0;
    height: 0;
    overflow: hidden;
}

#container {
    background: var(--bg-parchment); 
    width: 100%;
    max-width: 80ch;
    margin: 0 auto; 
    margin-top: 2em;
    border: .25em solid var(--bg-parchment);
    border-radius: 0;

    padding: 15px; 
    color: var(--vinyl-black); 
    line-height: 1.5em;
    position: relative;
    z-index: 2;
    box-shadow: 0em 0em .7em rgba(33, 33, 33, .5);
}

#bodytext {
	// margin-left: 35px;
}

#bodytext p {
	// padding: 0 1em;
}

#bodytext a {
	color: var(--label-teal);
}

#bodytext > ul > li + li {
    margin-top: 0.7lh;
}

#navigation {
	width: 100%;
	border-bottom: 1px solid #333;
	line-height: 1.2em;
    display: none;
}

#navigation ul {
	list-style-type: none;
}

#navigation li {
	padding-bottom: 1em;
}

#navigation a {
	text-decoration: none;
	color: var(--bg-parchment);
    background-color: var(--ink-charcoal);
    border: 1px solid var(--ink-charcoal);
    padding: .1em .5em;
    border-radius: .2em;
	font-weight: 700;
    transition: all .5s ease;
}

#navigation a:hover {
	text-decoration: underline;
    color: var(--ink-charcoal);
    background-color: var(--bg-parchment);
}

#title {
    text-align: center;
}

#title h1 {font-size: 38pt; font-weight: 400;}
#title p {font-weight: 400; font-size: 18pt; letter-spacing: 2px;}

#footer {
    width:100%; 
    clear: both; 
    margin: 0 auto; 
    font-size: x-small; 
    text-align: center; 
    margin-top: 60px; 
    border-top: 1px solid #999;
    display: grid;
    grid-template-columns: 1fr 2fr;
    grid-template-rows: 1fr;
    grid-template-areas: "image boilerplate";
    gap: 1em;
}

#footer p {
	margin-top: .2em;
	line-height: 1.2em;
	text-align: left;
    grid-area: boilerplate;
}

#footer img {
	margin-left: auto;
	margin-top: 3px;
	border: 1px solid #ccc;
	padding: 2px;
	background: white;
    grid-area: image;
}

#sub-footer{
    display: none;
}

.body_photo img {
	padding: 12px;
	margin-right: -220px;
	margin-top: .4em;
	margin-left: .4em;
	margin-bottom: .4em;
	border: 3px solid #a74b39;
	background: white;
	border-radius: 6px;
    width: 380px;
    height: auto;
    float: right;
}

@media (max-width: 1023px) {
    #title {
        height: auto;
    }
    #title h1 {
        font-size: 20pt;
    }
    #title p {
        font-size: 14pt;
        margin-top: 0;
    }
    #container {
        width: 95vw;
    }
    #navigation {
        width: auto;
        margin: 1em auto;
        border-width: 2px;
        float: none;
    }
    #navigation li:last-child {
        padding-bottom: 0;
    }
    #bodytext {
        margin-left: 0;
    }
    .body_photo img {
        float: none;
        width: 100%;
        margin: .4em auto;
        border-width: 1px;
        padding: .5em;
    }
    #footer {

    }
}