/* Enhanced Typography - Consistent with hack.html hierarchy */

/* Major section headers - make them more prominent */
.section h2 {
  /* font-size: 32px; */
  /* font-weight: 700; */
  color: #2c2c2c;
  margin-bottom: 30px;
  margin-top: 0;
  line-height: 1.2;
  letter-spacing: -0.02em;
}

/* Ensure reflection h2 matches other section h2s */
#reflection h2 {
  /* font-size: 32px;
  font-weight: 700; */
  color: #2c2c2c;
  margin-bottom: 30px;
  margin-top: 0;
  line-height: 1.2;
  letter-spacing: -0.02em;
}

/* Subsection headers - clear hierarchy */
.section h3, .h3-section h3 {
  /* font-size: 24px;
  font-weight: 600; */
  color: #2c2c2c;
  margin-bottom: 20px;
  margin-top: 40px;
  line-height: 1.3;
  letter-spacing: -0.01em;
}

/* Sub-subsection headers */
.section h4 {
  /* font-size: 20px;
  font-weight: 600; */
  color: #4a4a4a;
  margin-bottom: 16px;
  margin-top: 32px;
  line-height: 1.4;
}

/* Improved paragraph spacing and readability - match hack.css */
p {
  line-height: 1.7;
  margin-bottom: 16px;
  color: #404040;
}

/* Enhanced overview text styling - match hack.css */
.overview-text {
  /* font-size: 14px;
  font-weight: 700; */
  color: #666;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  margin-bottom: 8px;
  margin-top: 24px;
}

/* List styling improvements - match hack.css */
li {
  line-height: 1.6;
  margin-bottom: 8px;
  color: #404040;
}

li:not(:last-child) {
  margin-bottom: 12px;
}

/* Enhanced section spacing - match hack.css */
.section {
  margin-left: 4%; /* Reduced margins since main-sec already has margin */
  margin-right: 4%;
  margin-top: 60px;
  margin-bottom: 40px;
}

.h3-section {
  margin-top: 50px;
}

/* Better spacing for overview section */
#overview {
  margin-top: 40px;
}

#titleArea {
  margin-left: 15%;
  margin-right: 15%;
  margin-top: 2%;
  margin-bottom: 40px;
  scroll-margin-top: 80px; /* Extra space above title when scrolling from "Back to top" */
}

/* Link styling - match hack.css */
.link:link {
  color: inherit;
  text-decoration: none;
}

.link {
  color: inherit;
}

.link:hover {
  color: #87004d;
  text-decoration: underline;
}

/* Layout structure */
#web-content{
    display: flex;
    width: 100%;
}

#main-sec{
    width: 75%;
    margin-left: 20%; /* Increased margin to ensure content doesn't overlap with sidebar */
}

/* Enhanced sidebar styling */
#sidebar {
  height: auto;
  width: 15%;
  position: fixed;
  z-index: 1;
  top: 30%;
  margin-left: 2%;
  overflow-x: hidden;
  padding-top: 20px;
  transition: top 0.3s ease;
}

#sidebar a {
  padding: 0px 0px 15px 16px;
  text-decoration: none;
  display: block;
}

.proj-link{
  color: inherit;
  text-decoration: none;
  color: #474747;
}

.proj-link:hover{
  color: #87004d;
  font-weight: 800;
}

/* Enhanced tools section styling - match hack.css */
#tools {
  width: 30%;
  min-width: 250px;
  flex-shrink: 0;
  background: #f8f9fa;
  padding: 24px;
  border-radius: 12px;
  border-left: 4px solid #87004d;
  box-shadow: 0 4px 12px rgba(0,0,0,0.05);
}

/* Overview section styling */
.overview-section{
  display: flex;
  gap: 8%;
  align-items: flex-start;
  margin-top: 30px;
}

#overview{
  flex: 1;
}

/* Project-specific styling with enhanced visual hierarchy */
#petra-project{
  padding-top: 40px;
  margin-top: -20px;
  margin-bottom: 30px;
}

#audubon-poster, #medical-illustration, #patient-ill{
  padding-top: 40px;
  margin-bottom: 30px;
}

/* Enhanced image styling - match hack.css */
#petra-img, #audubon-img{
    width: 100%;
    height: auto;
    border-radius: 8px;
    box-shadow: 0 4px 16px rgba(0,0,0,0.1);
    border: 1px solid #f0f0f0;
    margin-top: 20px;
}

.petra-sketch{
  width: 45%;
  height: auto;
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
  border: 1px solid #f0f0f0;
}

.all-about-img{
  width: 33%;
  height: auto;
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
  border: 1px solid #f0f0f0;
}

#sketches{
  display: flex;
  justify-content: space-around;
  gap: 20px;
  margin-top: 20px;
}

#image-sec{
  display: flex;
  gap: 2%;
  margin-top: 20px;
}

/* Enhanced carousel styling */
.carousel-container {
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: relative;
  border-radius: 8px;
  box-shadow: 0 4px 16px rgba(0,0,0,0.1);
}

#carousel{
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 20px;
}

.carousel-item, .carousel-item2 {
  width: 100%;
  height: 100%;
  display: none;
  border-radius: 8px;
}

.carousel-item img, .carousel-item2 img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 8px;
}

.button {
  width: 20px;
  height: auto;
  opacity: 80%;
  border-radius: 4px;
  transition: opacity 0.2s ease;
}

.button:hover {
  opacity: 55%;
}

/* Reflection section styling */
#conc-writing {
  padding: 24px;
  border-radius: 12px;
}

/* #website styles moved to common.css for consistency */
.centered-sec{
  display: flex;
  flex-direction: column;
  align-items: center;
}

.highlighted {
  font-family: "Instrument-sans-reg", -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
  font-weight: 500;
  color: #87004d;
}

/* Mobile responsiveness improvements - match hack.css */
@media screen and (max-width: 768px) {
  .section {
    margin-left: 4%;
    margin-right: 4%;
    margin-top: 40px;
  }
  
  .section h2 {
    font-size: 28px;
  }
  
  .section h3, .h3-section h3 {
    font-size: 20px;
  }
  
  .section h4 {
    font-size: 18px;
  }
  
  #titleArea{
    padding-top: 25px;
    margin-left: 4%;
    margin-right: 4%;
  }
  
  #web-content{
    flex-direction: column;
  }
  
  #main-sec{
      width: 100%;
      margin-left: 0%;
  }
  
  .overview-section{
    flex-direction: column;
    gap: 20px;
  }
  
  #tools{
    width: 100%;
    min-width: unset;
    margin-left: 0;
    margin-right: 0;
    border-radius: 0;
  }
  
  #sidebar {
    display: none;
  }
  
  .proj-nav-title{
    font-size: 11px;
  }
  
  #sketches{
    flex-direction: column;
    align-items: center;
    gap: 20px;
  }
  
  .petra-sketch{
    width: 90%;
  }
  
  #image-sec{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
  }
  
  .all-about-img{
    width: 90%;
  }
  
  #petra-img, #audubon-img {
    margin: 15px 0;
  }
  
  #carousel {
    gap: 4px;
  }
  
  .button {
    width: 16px;
  }
  
  #conc-writing {
    padding: 20px;
  }
}