/* Reset */
@font-face {
  font-family: "Atkinson";
  src: url("/font/Atkinson-Hyperlegible-Font-Print-and-Web-2020-0514/Web/WOFF2/Atkinson-Hyperlegible-Regular-102a.woff2") format('woff2');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: "Atkinson";
  src: url("/font/Atkinson-Hyperlegible-Font-Print-and-Web-2020-0514/Web/WOFF2/Atkinson-Hyperlegible-Bold-102a.woff2") format('woff2');
  font-weight: bold;
  font-style: normal;
}

@font-face {
  font-family: "Atkinson";
  src: url("/font/Atkinson-Hyperlegible-Font-Print-and-Web-2020-0514/Web/WOFF2/Atkinson-Hyperlegible-Italic-102a.woff2") format('woff2');
  font-weight: normal;
  font-style: italic;
}

@font-face {
  font-family: "Atkinson";
  src: url("/font/Atkinson-Hyperlegible-Font-Print-and-Web-2020-0514/Web/WOFF2/Atkinson-Hyperlegible-BoldItalic-102a.woff2") format('woff2');
  font-weight: bold;
  font-style: italic;
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}
html{
  overflow-x: hidden;
  --content-width: 37em;
}
html body hr {
  color: #ffe;
  margin: 50px 0 30px 0;
}  

html body details {
  background-color: #fefacf;
  border-left:#ffedc7 10px solid;
  border-right:#ffedc7 10px solid;
}
html body details summary {
  cursor: pointer; /* Makes the details element clickable */
  /*list-style: none !important ;  Removes the triangle */
  padding:0.2em;
  margin-left:2em;

}

summary::-webkit-details-marker {
  /*display: none;  Removes the triangle in WebKit browsers */
}

summary {
  cursor: pointer; /* Makes the summary clickable */
}


.frontpage-category-links {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  gap: 10px;
  padding: 0;
  margin: 0 !important;
  padding-right: 16px !important;
}

.frontpage-category-links li {
  width: 30%; /* Default for larger screens */
}

.frontpage-category-links a {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 100%; /* Link fills the list item */
  height: 100px; /* Adjust height for your design */
  text-align: center;
  background-color: #f4f4f4; /* Light background */
  color: #333; /* Text color */
  text-decoration: none; /* Remove underline */
  font-size: 1.2rem; /* Slightly smaller than H3 for readability */
  border-radius: 15px; /* Rounded corners */
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); /* Optional shadow */
  transition: transform 0.2s, background-color 0.2s; /* Smooth hover effects */
}

.frontpage-category-links a:hover {
  transform: scale(1.05); /* Slight zoom on hover */
  background-color: #e0e0e0; /* Darker background on hover */
}

/* Media query for tablets and smaller screens */
@media (max-width: 768px) {
  .frontpage-category-links li {
    width: 45%; /* Adjusted to fit more links per row */
  }
}


time{
  font-family: 'Courier New', Courier, monospace;
}
article time{
  font-family: 'Courier New', Courier, monospace;
  margin-left:32px;
  display:block;
}
body {
  /*background-color: #aabbcc;
  background: linear-gradient(
    to bottom,
    #ddeeee, 
    #f6fff4 40%, 
    #ddeeff 70%,
    #ddeeff 100% 
    
  );*/
  background-image: url("/images/line.jpg");
  background-attachment: fixed;
  background-size:contain;
  background-repeat: no-repeat;
  background-color: #f6f6f4;
  margin: 0;
  min-height: 100vh;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
  margin: 0;
  position: relative; /* For absolute positioning of backgrounds */
  overflow-x: hidden; /* Prevent horizontal scrolling from overflow */
}

html body h1, html body h2, html body h3{
  font-weight: bold;
  font-size:170%;
  font-family:Cambria, Cochin, Georgia, Times, 'Times New Roman', serif;}

.site-container {
  max-width: 60em;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 20% 1fr; /* Left column (logo/menu) and right column */
  grid-template-rows: auto; /* Adjust row height dynamically */
  height: 100vh;
  position: relative;
  z-index: 1; /* Ensure foreground content is above backgrounds */

}

/* Left Column */
.left-column {
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 20px;
  position: relative;
}

.site-logo {
  position: relative; /* Default position for desktop */
  top: -125px;
  left: -50px;
  z-index: 10; /* Bring above all other elements */
}

.site-logo img {
  max-height: 280px;
  object-fit: contain; /* Prevent distortion */
}

/* Navigation */
.menu {
  position: relative; /* Default for desktop */
}

.menu ul {
  margin-left: 1em;
  margin-top: 2em;
  list-style: none;
  display: block;
}
 li a {
  text-transform: lowercase;
 }
.menu li a {
  text-transform: lowercase;
  text-decoration: none;
  color: #333;
  white-space: nowrap; /* Prevent line breaks on spaces */

}.menu li a.active {
  font-weight: bold;
}

.hamburger {
  display: none; /* Hidden on desktop */
  background: none;
  border: none;
  font-size: 1.5em;
  cursor: pointer;
}

/* Right Column */
.right-column {
  position: relative;
  display: grid;
  grid-template-rows: auto 1fr; /* Header and content */
  z-index: 3; /* Ensure right column content is above backgrounds */
}

.page-header {
  position: relative;
  padding: 50px 20px;
  z-index: 4; /* Higher than header background */
}

.page-content {
  font-family: Atkinson, Arial, sans-serif;

  font-size:1em;
  z-index: 3; /* Higher than content background */
  padding-bottom:20em;
  margin-bottom:10em;

  }
  .page-content ul{
    margin-left:0em;
    padding-left:1em;
  }
  .page-content h2 a{
    margin-top:2em !important;
    display: block;
    font-size:1.2em;
    font-weight: bold;
    text-decoration: none;
    color:black;
    text-transform: none;
    margin-right:1em;

  }
  .page-content h2 a:hover{
    text-decoration: underline;
  }

  .page-content h2, .page-content ul,.page-content a{
  font-weight: normal;
  margin-top:1.3em;
  

 }
.page-content p {
  --base-font-size: 20px;
  -webkit-font-smoothing: antialiased;
  line-height:1.4rem;


  -webkit-text-size-adjust: 100%;
  line-height: var(--body-font-line-height);
  word-wrap: break-word;
  position: relative;
   margin:1em;
  z-index: 5; /* Ensure text is above all backgrounds */
  color: #333; /* Text color for visibility */

}

/* Backgrounds */
.header-background {
  position: absolute; /* Globally positioned */
  top: -150px;
  left: 0%; /* Extend beyond grid boundaries */
  width: 1900px; /* Expand beyond grid width */
  min-width:500px;
  z-index: 2; /* Lower than text but above content background */
}

.header-background img {
  width: 30%;
  height: auto;
}

.content-background {
  position: absolute; /* Globally positioned */
  top: -300px;
  left: 0%; /* Extend beyond grid boundaries */
  width: 130%; /* Expand beyond grid width */
  z-index: 1; /* Lowest z-index, behind header background */
  transition: top 0.3s ease;  


}
  
  .fixed {  
    position: fixed;  
    top: 0; /* Adjust based on your desired fixed position */  
    left: 0;  
    width: 100%;  
  }
  
  
#content{
  background: linear-gradient(to bottom, #ffedc7, #fcf8df);
  border-radius: 8px;
  position:relative;
  padding-top:20px;
  padding-bottom:20px;
  z-index: 5; /* Lowest z-index, behind header background */
  max-width:min(100%,var( --content-width));
  margin-right:1em;
  
}

#content h2{
  text-transform: lowercase;

  margin-left:32px;

}
#content ul{
  margin-left:16px;
}
.content-background img {
  width: 100%;
  height: auto;
} 
 .page-header h1 {
  position: relative;
  top: 115px;
  font-size:2em;
  z-index: 5; /* Ensure text is above all backgrounds */
  color: #333; /* Text color for visibility */
}
#content img{
  max-width: min(25em,100%);
}
ul.navi, #content ul{
  list-style-type: none;
  margin-top:0.2em;
  line-height:1.5em;
}
.page-header {
  position: relative;
}

#breadcrumbs {
  top: 115px;
  left: 86px;

  list-style: none;
  margin: 0;
  padding: 0 ;
  border-radius: 4px;
  z-index: -1; /* Initially hidden */
  opacity: 0; /* Hidden visually */
  pointer-events: none; /* Prevent interactions when hidden */
  transition: opacity 0.3s ease, z-index 0.3s step-end;
  z-index: 5;
  position: relative;
}

#breadcrumbs li {
  margin: 0;
  padding: 5px 0;
}

#breadcrumbs li a {
  text-decoration: none;
  color: black;
}

#breadcrumbs li a:hover {
  text-decoration: underline;
}

/* Show breadcrumbs on hover */
.page-header:hover #breadcrumbs,
.page-header:focus-within #breadcrumbs {
  z-index: 10; /* Bring to front */
  opacity: 1; /* Make visible */
  pointer-events: auto; /* Enable interactions */
  transition: opacity 0.3s ease, z-index 0.3s step-start;
}

/* Optional: Add transition for smooth appearance */
#breadcrumbs {
  transform: translateY(-10px);
  transition: opacity 0.3s ease, transform 0.3s ease, z-index 0.3s step-end;
}

.page-header:hover #breadcrumbs,
.page-header:focus-within #breadcrumbs {
  transform: translateY(0);
}

#breadcrumbs li {
  display: inline;
}

#breadcrumbs li a {
  text-decoration: none;
  color: #0073e6;
  padding: 0 5px;
}

#breadcrumbs li a:hover {
  text-decoration: underline;
}

#breadcrumbs li::after {
  content: ">";
  margin: 0 5px;
  color: #aaa;
}

#breadcrumbs li:last-child::after {
  content: "";
}

blockquote {
  border-left: 10px solid #ccc;
  padding: 0;
}
blockquote:before {
  font-size: 4em;
  line-height: 0.1em;
  vertical-align: -0.4em;
}
blockquote p {
margin:0;padding:0;
}
#content nav.pagination{
  margin-left:32px;
  margin-right:1em;
  & ul, & li{
    margin-left:0;
    padding-left:0;
  }

  & li{
    margin-top:0.5em;
  }
}
.site-logo img#house {
  width: 50%;
  position:absolute;
  bottom:50px;
  right:0px ;
}
@media (min-width:1060px) {
  .site-logo img#logo {
    width: 200%;
  } 

    
  .site-container {

    left:-80px;
  }
  #menuToggle input{
    display: none;}
  .page-header h1 {
    max-width:380px;
    left: 55px;
  }
  #content div{
    margin-left:32px;
    margin-right:1em;
  }
  .page-content{
    position:absolute;
    top:360px;
    left:2em;
  }
#content p, #content .smallimg{
    margin-left:2em;
    margin-right:2em;

  }

  #shortstories ul{
    min-width:var(--content-width);

    & li{
      margin-bottom:1em;
    }
  }
  

}
/* Responsive Adjustments */
@media (max-width: 1060px) {

  html, body {
    width: 100%;
    height: 100%;
    margin: 0;
    overflow-x: hidden; /* Prevent horizontal scrolling */
  }
  .site-logo img#house {
    bottom:40px;
    right:-50px ;
  }
  body {
    /*display: flex;
    justify-content: center;
    align-items: center;
    transform: scale(1.1); 
    transform-origin: center; *//* Zoom towards the center */
  }
  .page-content h2, .page-content ul,.page-content a{
    font-weight: normal;
    margin-top:1.3em;
    
  
   }
  .page-content p {
    
    margin-top:1em;
    margin-bottom:1em;

  
  }

  #content p,  #content .smallimg{
    margin-left:1em;
    margin-right:1em;
  }
  #content h2, #content ul{
    
    margin-left:0.6em;
  
  }
  
  #breadcrumbs {
    top: 35px;
    left: 86px;
  }
  #content div{
    margin-left:0.3em;
    margin-right:0.6em;
  }
  


    #content{
      top:50px;
      margin:0 auto;
      font-size:1.1em;
    }
    .site-container {
      grid-template-columns: 1fr; /* Single column layout */
    }

    .left-column {
      grid-row: 1; /* Ensure left column is first */
      display: flex;
      justify-content: space-between; /* Space for logo and hamburger */
      align-items: center;
      padding: 10px 20px; /* Adjust padding for mobile */
    }

    .site-logo {
      width: 100px; /* Smaller logo for mobile */
      position: relative;
      top: 40px;
      left: 0;
    }
    .site-logo img {
      width:200px
    }
    .menu {
      position: absolute; /* Position hamburger menu in top-right corner */
      top: 10px;
      left:50px;
      z-index: 10;
    }

    .hamburger {
      display: block; /* Show hamburger menu on mobile */
    }

    .right-column {
      grid-row: 2; /* Move below left column */
    }

    .header-background {
      width: 100%; /* Adjust for mobile layout */
      left: 0;
      top: 40px;
      z-index: 2; /* Stack properly */
    }

    .content-background {
      width: 100%; /* Adjust for mobile layout */
      left: 0;
      top:-400px;
      z-index: 1; /* Stack befehind content */
    }

    .page-header h1 {
      position: relative;
      text-align: center; /* Center heading text */
      margin: 20px 0;
      top:20px;
    }

    .page-content {
      margin-top: 0px; /* Add spacing between content and header */
    }


    #menuToggle input {
      opacity: 0; 

    }


  #menuToggle {
    display: block;
    position: absolute;
    top: 1.4em;
    left: 0em;
    z-index: 1;
    -webkit-user-select: none;
    user-select: none;
  }

  #menuToggle a {
    text-decoration: none;
    transition: color 0.3s ease;
  }

  #menuToggle a:hover {
    text-decoration: underline;
  }

  #menuToggle input {
    display: block;
    width: 40px;
    height: 32px;
    position: absolute;
    top: -7px;
    left: -5px;
    cursor: pointer;
    z-index: 2; 
    -webkit-touch-callout: none;
  }

  #menuToggle span {
    display: block;
    width: 33px;
    height: 4px;
    margin-bottom: 5px;
    position: relative;
    background: #666;
    border-radius: 3px;
    z-index: 1;
    transform-origin: 4px 0px;
    transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1.0), background 0.5s cubic-bezier(0.77, 0.2, 0.05, 1.0), opacity 0.55s ease;
  }

  #menuToggle span:first-child {
    transform-origin: 0% 0%;
  }

  #menuToggle span:nth-last-child(2) {
    transform-origin: 0% 100%;
  }

  #menuToggle input:checked ~ span {
    opacity: 1;
    transform: rotate(45deg) translate(-2px, -1px);
  }

  #menuToggle input:checked ~ span:nth-last-child(3) {
    opacity: 0;
    transform: rotate(0deg) scale(0.2, 0.2);
  }

  #menuToggle input:checked ~ span:nth-last-child(2) {
    transform: rotate(-45deg) translate(0, -1px);
  }

  #menu {
    position: absolute;
    margin: 0; 
    padding: 40px 30px 40px 40px; 
    background: #dddddd;
    list-style-type: none;
    -webkit-font-smoothing: antialiased;
    transform-origin: 0% 0%;
    transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1.0);
    transform: translate(-150%, 0);
    border-radius: 50% 30% 30% 40%;   
  }

  #menu li {
    padding: 10px 0;
    font-size: 22px;
  }

  #menuToggle input:checked ~ ul {
    transform: none;
  }
  
}
.comment-sidebar {
  position: fixed;
  top: 0;
  right: 0;
  width: 300px;
  height: 100%;
  background: #efefef;
  border-left: 1px solid #ccc;
  padding: 0px;
  box-shadow: -2px 0 5px rgba(0,0,0,0.1);
  overflow-y: auto;
  z-index: 1000;
  color: #333;

  & h3{
    margin:10px;
    font-family:system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;


  }

  & ul{
    margin:10px;
    list-style-type: none;
  }

}

.comment-sidebar button {
  display: block;
  background-color: #007BFF;
  color: #fff;
  border: none;
  border-radius: 5px;
  cursor: pointer;
}
#close-sidebar {
  margin: 0px 0;
  padding-left: 5px;
  padding-right: 5px;

  background: transparent;
  border: none;
  font-size: 1.5em;
  position: absolute;
  top: 10px;
  right: 10px;
  cursor: pointer;
  color:black;
}

#submit-comment {
  margin: 0px 0;
  padding: 5px;
margin-left:15px;
  margin-top: 15px;
  width: 90%;
  background-color: #ffc227;
  color:black;
}
#comment-input {
  width: 100%;
  margin: 0;
  padding: 10px;
  border: 0px solid #ccc;
  border-radius: 0px;
  box-sizing: border-box;
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  min-height: 15em;
}
.paragraph-snippet {
  margin:10px;

  font-style: italic;
  color: #666;
  margin-bottom: 10px;
}
.highlighted {
  background-color: #ffffcc;
}