html,
body {
	font-family: "Rubik", sans-serif;
	font-weight: 500;
	font-style: normal;

}

:root {
	--base-color: black;
	--text-color: white;
	--accent-color: #4b4545;
	--dark-accent: #a7a2a2;
	--navbar-bg: rgba(0, 0, 0, 0.6);
	--green-color: rgb(0, 255, 0);
	--orange-color: orange;
	--card-bg: rgb(7, 7, 7); /* Dark card background */

}

.lightmode {
	--base-color: white;
	--text-color: black;
	--accent-color: #cecece;
	--dark-accent: #a7a2a2;
	--navbar-bg: rgba(255, 255, 255, 0.6);
	--green-color: rgb(10, 218, 10);
	--orange-color: rgb(226, 148, 3);
	--card-bg: rgb(240, 240, 240); /*card background research */


}

body {
	background-color: var(--base-color);
}

h1,
h2,
h3,
h4,
h5,
h6 {
	color: var(--text-color);
	/* the  color of each titles*/
	margin: 0;
	font-weight: 600;
}

h2 {
	font-size: 48px;
	color: var(--text-color)
}

h3 {
	font-size: 30px;
	color: var(--text-color)
}

h4 {
	color: orange;
}

p {
	font-size: 18px;
	color: var(--text-color);
	line-height: 1.8;
}

body p{
	text-decoration: none !important;
}

a {
  text-decoration: none !important;
}


p2 {
	font-size: 20px;
	color: #00ff00;
	line-height: 1.4;
	text-decoration: none;
}

p3 {
	font-size: 20px;
	color: var(--text-color)
}

p4 {
	font-size: 20px;
	color: #00ffff;
}

ul {
	font-size: 18px;
	color: var(--text-color)
}

li {
	font-size: 18px;
	color: var(--text-color)
}

img {
	max-width: 100%;
}


/* Smooth scroll */
#container {
	overflow-y: auto;
	scroll-behavior: smooth;
}

/*---------------------
	Helper CSS
-----------------------*/
.spad {
	padding-top: 125px;
	padding-bottom: 110px;
}


/*---------------------
	Navigation
-----------------------*/
/* Enhanced Navigation Bar Styling */
.horizontal-nav {
	background-color: var(--navbar-bg);
	/* Dark background for the navbar */
	position: fixed;
	/* Keeps the navbar fixed at the top */
	top: 0;
	width: 100%;
	z-index: 1000;
	margin-bottom: 0;
	line-height: 1;
	backdrop-filter: blur(200px);
	/* Apply blur to the background */
	-webkit-backdrop-filter: blur(200px);
	/* For Safari */
}

.nav-container {
	display: flex;
	justify-content: center;
	/* Center the nav items */
	position: relative;
	/* Needed for absolute positioning */
	align-items: center;
	height: 3rem;
	/* Explicitly set the height for consistent spacing */
}


.navbar-nav {
	display: flex;
	flex-direction: row;
	list-style: none;
	margin: 0 auto;
	/* Center the menu items */
	padding: 0;
	padding-top: 15px;
	gap: 2rem;
	/* Space between links */
}

.nav-item {
	display: flex;
}

.nav-link {
	text-decoration: none;
	color: var(--text-color);
	font-size: 1rem;
	padding: 2px 90px;
	/* Add padding to make it button-like */
	transition: all 0.3s ease;
	/* Smooth transition */
	border-radius: 4px;
}


.nav-link.active {
	color: var(--text-color);
	/* Text color for the active link */
	/* Make the font bold */
	font-size: 1.35rem;
}

.nav-link:hover {
	transform: scale(1.2);
	color: var(--text-color);
}

.navbar-nav.show {
	display: flex;
	/* Show the navigation when .show class is added */
	flex-direction: column;
	/* Stack items vertically */
	position: absolute;
	top: 100%;
	/* Position below the navbar */
	right: 0;
	/* Align to the right */
	background-color: var(--base-color);
	/* Same background as navbar */
	width: 100%;
	/* Full width for small screens */
	z-index: 999;
	/* Ensure it appears above other elements */
}

.theme-switch {
	background-color: transparent;
	border-color: var(--accent-color);
	outline: none;
	/* Removes the focus outline */
	border: none;
	/* Removes the border */
	box-shadow: none;
	/* Removes any shadow that might appear */
	cursor: pointer;
}


.theme-switch:focus {
	outline: none;
	/* Prevent the outline after the button is clicked */
}


.theme-button {
	position: absolute;
	right: 0.1rem;
	/* Adjust spacing from right edge */
	top: 50%;
	transform: translateY(-50%);
	/* Vertical centering */
}


#theme-switch svg:last-child {
	display: none;
}

.lightmode #theme-switch svg:first-child {
	display: none;
}

.lightmode #theme-switch svg:last-child {
	display: block;
}

.horizontal-nav .theme-button {
	display: flex;
	flex-direction: row;
	list-style: none;
	margin: left;
	/* Center the menu items */
	gap: .2rem;
	/* Space between links */
}


.horizontal-nav .theme-button .theme-text {
	padding-top: 15px;
	font-size: 0.8rem;
}


/* Mobile & Tablet Styles (Bottom Navigation) */
@media (max-width: 768px) {

	body {
		padding-bottom: 65px;
		/* Match navbar height */
	}

	.theme-text {
		display: none;
	}


	.horizontal-nav {
		top: auto;
		/* Remove top positioning */
		bottom: 0;
		/* Stick to bottom */
		backdrop-filter: none;
		/* Optional: Remove blur for performance */
		border-top: 1px solid var(--text-color);
		/* Optional: Add a top border */
		backdrop-filter: blur(100px);
		/* Apply blur to the background */
		-webkit-backdrop-filter: blur(100px);
		/* For Safari */
	}


	.nav-container {
		height: 65px;
		/* Allow flexible height */
		padding: 0rem;
		/* Add some padding */
	}


	.navbar-nav {
		display: flex;
		/* Always show nav (no hide/show) */
		flex-direction: row;
		gap: 0.66rem;
		/* Remove gap (use padding instead) */
		padding: 0;
		list-style: none;
		margin: 0 auto;

	}

	.nav-item {
		flex: 1;
		/* Each item takes equal width */
		text-align: center;
	}

	/* Theme button adjustments */
	.theme-button {
		display: none;
		/* Hide theme switcher on mobile (or keep it if you want) */
	}

}




@media (max-width: 400px) {
	.nav-link {
		padding: 0.5rem;
		font-size: 0.7rem;
		/* Smaller font for tiny screens */
	}

	/* Optional: Shrink active link size */
	.nav-link.active {
		font-size: 0.9rem;
	}
}


@media (max-width: 475px) and (max-width: 575px) {
	.nav-link {
		padding: 0.5rem;
		/* Smaller padding for mobile */
		font-size: 0.76rem;
		/* Smaller font */

	}

	/* Optional: Shrink active link size */
	.nav-link.active {
		font-size: 0.9rem;
	}

}


/* Tablet */
@media (min-width: 575px) and (max-width: 768px) {
	.nav-link {
		font-size: 1rem;
		/* Slightly larger than mobile */
		padding: 1rem 1rem;
		/* Adjust padding if needed */
	}

	/* Active link scaling */
	.nav-link.active {
		font-size: 1.5rem;
		/* Emphasize active tab */
	}
}



/*----------------
  Up arrow
  ------------------*/

.up-arrow-button {
	width: 30px;
	height: 30px;
	position: fixed;
	bottom: 35px;
	right: 10px;
	/* Adjusted to the bottom-right corner */
	z-index: 1000;
	display: none;
	/* Initially hidden */
	opacity: 0;
	/* Fully transparent */
	visibility: hidden;
	/* Hide the element completely when not visible */
	transition: opacity 3s ease-in-out, visibility 3s ease-in-out;
	/* Smooth fade effect */
}

.up-arrow-button.visible {
	display: block;
	/* Display when visible */
	opacity: 1;
	/* Fully visible */
}

.up-arrow-button svg {
	fill: var(--text-color);
	/* Color of the arrow */
}


/* Mobile adjustment (if needed) */
@media (max-width: 768px) {
	.up-arrow-button {
		position: fixed;
		bottom: 70px;
		right: 10px;
	}

}



/*---------------------
	Copyright section
-----------------------*/

.copyright-section {
	background-color: var(--base-color);
	width: 100%;
}

.copyright-section p {
	font-size: 13px;
}


/* -----------------
  Horizontal line after each section
--------------------*/

#custom-hr {
	border: none;
	border-top: 1px solid var(--text-color);
	margin: 0px 0;
}


/* -----------------
====================
  HOME PAGE 
====================
--------------------*/

/*---------------------
	Hero section
-----------------------*/
.hero-section {
	background: var(--base-color);
}

.hero-text {
	margin-bottom: 80px;
}

.hero-text h2 {
	font-size: 170px;
	line-height: normal;
	margin-bottom: 20px;
}

.hero-text p {
	font-size: 33px;
	line-height: 1.3;
}

.hero-info h2 {
	margin-bottom: 30px;
}

.hero-info ul {
	list-style: none;
	color: var(--text-color)
}

.hero-info ul li {
	font-size: 18px;
	color: var(--text-color);
	margin-bottom: 15px;
}

.hero-info ul li span {
	color: #40424a;
	display: inline-block;
	min-width: 220px;
}

.hero-info ul li:last-child {
	margin-bottom: 0;
}


/*---------------------
 Hero Image
-----------------------*/
/* Container for the circular image */
#img-circle {
	display: inline-block;
	/* Allows the container to shrink to fit the image */
	width: 200px;
	/* Adjust size as needed */
	height: 200px;
	/* Adjust size as needed */
	border-radius: 50%;
	/* Makes the container circular */
	overflow: hidden;
	/* Ensures image is clipped to the circular container */
	margin: 0 auto;
	/* Centers the container */
}

/* -----------------
Download cv button: 
----------------- */

.hero-info .site-btn {
	color: var(--base-color);
	/* Make sure text is visible */
	font-size: 16px;
	padding: 10px 20px;
	background-color: var(--text-color);
	/* Button background */
	text-decoration: none;
	/* Removes underline */
	display: inline-block;
	/* Ensure it behaves like a button */
	transition: transform 0.3s ease, background-color 0.3s ease;
	/* Smooth transition for transform and background-color */
}

.hero-info .site-btn:hover {
	color: var(--base-color);
	transform: scale(1.2);
	/* Increase size by 0.5% */
}

/*---------------------
    Social Link section 
-----------------------*/

.social-section {
	display: flex;
	justify-content: center;
	/* Centers the social links container horizontally */
	align-items: center;
	/* Centers the content vertically */
	height: 10vh;
	/* Takes full viewport height */
}

.social-section .social-links {
	display: flex;
	/* Ensures the container uses flex */
	gap: 20px;
	/* Adds space between the icons */
}

.social-section .social-links a {
	color: var(--text-color);
	/* Social media icons */
	font-size: 25px;
	/* Change the font size of the icons */
}


/*---------------------
 About Me
-----------------------*/
.about-me-section {
	background: var(--base-color);
}



/* ------------------
		Skills
-------------------*/

/* Icon color */
.svg-icon {
	color: var(--text-color);
	width: 69%;
	height: 69%; 
	display: block;

}

/* Conta<article class="research-item">
            <header>
              <span class="research-year">2025</span>
              <h3>How Will Climate Change Shift the Suitable Area of Seven Woody Bamboo Species in Nepal? Evidences from Ensemble Species Distribution Modeling.</h3>
              <p class="research-authors">Pokhrel, S., Neupane, P., Paudel, N., Dhakal, M., Lamichhane, P., Khadka. A.</p>
              <p class="research-journal"><i class="bi bi-journal"></i>Authorea (Pre-print)</p>
            </header>
            <div class="research-links">
              <a href="abstracts.html#abstract2"><i class="bi bi-file-text"></i> Abstract</a>
              <a href="https://www.authorea.com/doi/pdf/10.22541/au.173697608.88721540/v1" target="_blank"><i class="bi bi-file-text"></i> Full Text</a>
              <a href="https://github.com/idioticode/bamboo_sdm" target="_blank"><i class="bi bi-git"></i> Code</a>
            </div>
          </article>
<article class="research-item">
            <header>
              <span class="research-year">2025</span>
              <h3>How Will Climate Change Shift the Suitable Area of Seven Woody Bamboo Species in Nepal? Evidences from Ensemble Species Distribution Modeling.</h3>
              <p class="research-authors">Pokhrel, S., Neupane, P., Paudel, N., Dhakal, M., Lamichhane, P., Khadka. A.</p>
              <p class="research-journal"><i class="bi bi-journal"></i>Authorea (Pre-print)</p>
            </header>
            <div class="research-links">
              <a href="abstracts.html#abstract2"><i class="bi bi-file-text"></i> Abstract</a>
              <a href="https://www.authorea.com/doi/pdf/10.22541/au.173697608.88721540/v1" target="_blank"><i class="bi bi-file-text"></i> Full Text</a>
              <a href="https://github.com/idioticode/bamboo_sdm" target="_blank"><i class="bi bi-git"></i> Code</a>
            </div>
          </article>
iner for skill icons */
.skill-container {
	display: grid;
	/* Enables Grid layout */
	grid-template-columns: repeat(3, 1fr);
	/* 3 icons per row, evenly spaced */
	gap: 20px;
	/* Adds space between icons */
	margin: 0 auto;
	/* Centers the container */
	justify-items: center;
	/* Centers each icon horizontally */
	max-width: 100%;
	/* Ensures the grid takes full width */
}

.skill-icon {
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	
}

/* Styling for the name that appears on hover */

/* Modified CSS for skill boxes */
.skill-box {
  display: flex;
  flex-direction: column;
  align-items: center; /* Centers horizontally */
  text-align: center; /* Centers text */
  padding: 20px; /* Adjust as needed */
}


.skill-name {
margin-top: 10px;
}


/* Mobile screens (up to 600px wide) */
@media (max-width: 600px) {

	.skill-icon {
		width: 30px;
		height: 30px;

	}


}

/* Tablet screens (601px to 1024px wide) */
@media (min-width: 601px) and (max-width: 1024px) {
	.skill-icon {
		width: 50px;
		height: 50px;

	}
}

/* Desktop/computer screens (1025px to 1440px wide) */
@media (min-width: 1025px) and (max-width: 1440px) {

	.skill-icon {
		width: 70px;
		height: 70px;

	}

}

/* Larger screens (above 1440px wide) */
@media (min-width: 1441px) {

	.skill-icon {
		width: 100px;
		height: 100px;

	}


}


/*---------------------
	Footer section
-----------------------*/
.footer-section {
	background: var(--text-color);
	padding: 0px 00px;
	margin-bottom: 100px;
}

.footer-section p {
	padding-top: 10px;
	font-size: 12px;
	color: var(--accent-color);
	line-height: normal;
	padding-bottom: 15px;
}



/* -----------------
====================
  WORK AND EDUCATION
====================
--------------------*/


/* Title alignment */
.timeline-title h2 {
	text-align: center;
	margin-bottom: 20px;
}


.timeline-section {
	background-color: var(--base-color);
	color: var(--text-color);
}

.timeline-section h4 {
	color: var(--text-color);
}

.timeline-section ul li {
	color: var(--text-color);
	margin-bottom: 0px;
}


.timeline-section h4 {
	font-size: 16px;
	text-transform: uppercase;
	color: orange;
	margin-top: 10px;
	margin-bottom: 25px;
}

.resume-list p {
	margin-bottom: 20px;
	font-weight: bold;
}


/* Remove bullets for all lists */
/* General styles for the timeline list */
.timeline-entry ul {
	list-style: none; /* Remove default bullets */
	padding: 0; /* Reset padding */
	margin: 0; /* Reset margin */
}


/* Adjustments for right-aligned entries */
.timeline-entry.right ul.timeline-right li {
	text-align: left; /* Align text to the left */
	padding-left: 0; /* No padding on the left */
}


/* center line */
.timeline::after {
	content: '';
	position: absolute;
	width: 2px;
	background-color: var(--text-color);
	top: 0;
	bottom: 0;
	left: 50%;
	margin-left: 0px;
}

.timeline-entry {
	position: relative;
	width: 50%;
	padding: 20px;
	border: none;
	border-radius:8px;
  background: var(--card-bg); /* Changed to card background variable */
  margin-bottom: 20px;
  z-index: 1;
    transition: all 0.3s ease;

	/* Ensure the entry is above the line */
}



.timeline-entry.left {
	left: -40px;
	text-align: right;
}


/* Right-side entries */
.timeline-entry.right {
	left: 50%;
	/* Start from the center line */
	right: 0px;
	transform: translateX(42px);
	/* Push it slightly to the right */
}



/* Left entry orange line */
.timeline-entry.left::after {
  content: '';
  position: absolute;
  width: 8px;
  height: 100%;
  background-color: var(--orange-color);
  right: 98.5%;
  top: 0;
border-top-left-radius: 8px;
  border-bottom-left-radius: 8px;

}

.timeline-entry .research-year {
  display: inline-block;
  margin-bottom: 20px; /* Increased bottom margin */
}

/* Right entry orange line */
.timeline-entry.right::after {
  content: '';
  position: absolute;
  width: 8px;
  height: 100%;
  background-color: var(--orange-color);
  left: 98.5%;
  top: 0;
  border-top-right-radius: 8px;
  border-bottom-right-radius: 8px;

}

.research-card {
  padding: 30px;
  background-color: var(--card-bg);
  border-radius: 8px;
  transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  position: relative;
  overflow: hidden;
  transform: translateZ(0); /* Optimize animations */
  box-shadow: 0 3px 6px rgba(0,0,0,0.1);
}

.research-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 7px;
  height: 100%;
  background: var(--orange-color);
  transition: all 0.4s ease;
}

.research-card:hover {
  transform: translateY(-6px) scale(1.02);
  box-shadow: 
    0 14px 24px -8px rgba(0,0,0,0.2),
    0 6px 20px var(--text-color);
}

.research-card:hover::before {
  width: 8px;
  background: linear-gradient(to bottom, var(--orange-color), #ff8c00);
}
.timeline-entry:hover {
  box-shadow: 1.5px 1.5px 10px 0px var(--text-color);
}


/* Circle with Icon */
.timeline-entry .icon-circle {
	position: absolute;
	width: 40px;
	height: 40px;
	background-color: #007bff;
	border-radius: 50%;
	border: 2px solid var(--text-color);
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 2;
	/* Ensure the circle is above the line */
}


.timeline-entry.left .icon-circle {
	right: -63px;
	/* Adjust position relative to the entry */
	top: 10px;
}


.timeline-entry.right .icon-circle {
	left: -63px;
	/* Adjust position relative to the entry */
	top: 10px;
}




/* Triangles 
.timeline-entry.left::before,
.timeline-entry.right::before {
	content: '';
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	top: 20px;
}
*/


/* Responsive adjustments for smaller screens */
@media (max-width: 768px) {

	/* Align heading title to the left */
	.timeline-title h2 {
		text-align: left;
		margin-left: 20px;
		/* Optional: Add some space from the left edge */
	}

	/* Remove vertical line */
	.timeline::after {
		display: none;
	}

	/* Remove the border and make timeline entries full-width */
	.timeline-entry {
		width: 100%;
		/* Entries take full width */
		margin: 10px 0;
		/* Add margin for spacing */
		padding: 15px;
		border: none;
		/* Remove border */
	}

	/* Align entries to the left and reset any transform/positioning */
	.timeline-entry.left,
	.timeline-entry.right {
		left: 0;
		/* Reset positioning */
		right: 0;
		/* Reset positioning */
		transform: none;
		/* Remove translate effect */
		text-align: left;
		/* Align text to the left */
	}

	/* Remove the circle icon */
	.timeline-entry .icon-circle {
		display: none;
	}

	/* Adjust content alignment for left-aligned entries */
	.timeline-entry.left p2,
	.timeline-entry.left h3,
	.timeline-entry.left h4,
	.timeline-entry.left ul {
		text-align: left;
		/* Ensure text is aligned to the left */
	}



	/* Adjust other elements' layout for mobile */
	.timeline-entry p2,
	.timeline-entry h3,
	.timeline-entry h4 {
		margin-bottom: 10px;
	}

	.timeline-entry ul {
		margin-left: 20px;
	}

	/* Remove triangle markers */
	.timeline-entry.left::before,
	.timeline-entry.right::before {
		display: none;
		/* Remove triangles */
	}
}


/* ------------------
=====================
	RESEARCH 
=====================
-------------------*/

/*---------------------
 Research Publications 
-----------------------*/


/* Research Publications */
.research-publications {
  padding: 60px 0;
}

.research-publications h2 {

  margin-bottom: 40px;
}


.research-item {
  margin-bottom: 30px;
  padding-bottom: 30px;
  border-bottom: 1px solid var(--accent-color);
}

.research-year {
  padding: 3px 10px;
  border-radius: 12px;
  font-size: 15px;
  background: var(--green-color);
  color: var(--base-color);
}

.research-item h3 {
  font-size: 20px;
  color: var(--text-color);
  margin: 10px 0 5px;
}

.research-authors, .research-journal {
  color: var(--text-color);
  font-size: 16px;
  margin: 5px 0;
}

.research-journal{
font-style: italic;

}
.research-journal i {
  margin-right: 5px;
}

.research-links {
  margin-top: 15px;
  display: flex;
  gap: 15px;
  flex-wrap: wrap;
}

.research-links a {
  background-color: var(--text-color);
  color: var(--base-color);
  font-size: 14px;
  align-items: center;
  padding: 5px 10px;
  border: 1px solid var(--base-color);
  border-radius: 4px;
  transition: all 0.3s ease;
   text-decoration: none; /* This removes underline */

}

.research-links a:hover {
  transform: scale(1.2);
}


@media (max-width: 768px) {  
  .research-year{
	font-size: 12px;
  }


	.research-item h3 {
    font-size: 18px;
  }


  .research-authors, .research-journal {
  font-size: 12px;
}

.research-links a {
  font-size: 11px;
}

}



/*---------------------
=====================
	Research Description
=====================	 
----------------------*/


.research-experience {
  background-color: var(--base-color);
  padding: 80px 0;
}



.research-list {
  list-style: none;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
  gap: 30px;
}

.research-card {
  padding: 30px;
  background-color: var(--card-bg);
  border-radius: 8px;
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
 
}


.research-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 7px;
  height: 100%;
  background: var(--orange-color);
}

.research-card:hover {
  box-shadow: 1.5px 1.5px 10px 0px var(--text-color);
}

.research-card h3 {
  font-size: 20px;
  color: var(--text-color);
  margin-bottom: 15px;
  line-height: 1.3;
  margin-top: 10px;
}

.research-card h4 {
  font-size: 0.9rem;
  text-transform: uppercase;
  color: var(--orange-color);
  margin: 15px 0;
  letter-spacing: 1px;
}

.research-card p {
  color: var(--text-color);
  line-height: 1.6;
  margin-bottom: 30px;
  opacity: 0.9;
}

.description-link {
  position: absolute;
  bottom: 20px;
  right: 20px;
}

.research-link {
  position: relative;
  left: 70%;
}

.site-btn {
  /* Keep your existing button styles */
  position: static; /* Remove any previous absolute positioning */
}

/* Responsive Design */
@media (max-width: 992px) {
  .research-list {
    grid-template-columns: 1fr;
    gap: 25px;
  }
}

@media (max-width: 768px) {
  .research-experience h2 {
    font-size: 2rem;
  }
}




/*---------------------
=====================
	Portfolio section
=====================	 
----------------------*/

.portfolio-section {
	background: #000
}

.portfolio-section-new {
	background-color: var(--base-color);
}

.portfolio-item {
	cursor: pointer;
}

.portfolio-item h2 {
	margin-bottom: 15px;
}

.portfolio-item h3 {
	margin-bottom: 10px;
}

#portfolio-paragraph {
	margin-bottom: 50px;
	color: var(--text-color);
}


.portfolio-item p {
	margin-bottom: 0px;
}

.portfolio-item .port-pic {
	margin-bottom: 30px;
	display: block;
	height: 100%;
	width: 100%;
	padding-bottom: 56.25%;
	/* 16:9 aspect ratio for landscape */
	background: #333;
	background-position: center center;
	background-size: cover;
	overflow: hidden;
	position: relative;
}

.portfolio-item .port-pic:after {
	position: absolute;
	content: '';
	left: 0;
	bottom: 0;
	width: 100%;
	height: 0;
	background: #000;
	opacity: 0;
	z-index: 2;
	-webkit-transition: all 0.4s cubic-bezier(0.55, 0.09, 0.68, 0.53) 0s;
	-o-transition: all 0.4s cubic-bezier(0.55, 0.09, 0.68, 0.53) 0s;
	transition: all 0.4s cubic-bezier(0.55, 0.09, 0.68, 0.53) 0s;
}

.portfolio-item:hover .port-pic:after {
	opacity: 0.5;
	height: 100%;
	width: 100%;
	top: 0;
}


/*---------------------
=====================
	R-Tutorials
=====================	 
----------------------*/
.tutorial-section {
	background-color: var(--base-color);
}


.topics-grid {
	display: flex;
	flex-wrap: wrap;
	/* Allows items to wrap onto the next row */
	gap: 40px;
	/* Space between cards */
	justify-content: space-between;
	/* Distribute cards evenly */
}

.topic-item {
	border-radius: 8px;
	/* Rounded corners */
	padding: 20px;
	background-color: var(--text-color);
	/* Light background */
	flex: 1 1 calc(48% - 10px);
	/* Cards take half the row width minus the gap */
	display: flex;
	flex-direction: column;
	justify-content: center;
	/* Center-align the content */
	text-decoration: none;
	/* Remove underline from the link */
	color: inherit;
	/* Inherit text color */
	transition: transform 0.3s;
	/* Smooth hover effect */
	min-height: 150px;
	/* Ensures uniform height for cards */
	box-sizing: border-box;
	/* Prevents padding from affecting width */
}

.topic-item:hover {
	transform: scale(1.1);
	/* Slight zoom on hover */
	text-decoration: none;
	/* Ensure no underline appears on hover */
}

.topics-grid h3 {
	color: var(--base-color);
}

.nested-card {
	flex: 1 1 calc(48% - 10px);
	/* Same size as other cards */
	position: relative;
}

.nested-buttons {
	display: flex;
	flex-wrap: wrap;
	/* Arrange buttons properly */
	gap: 10px;
	/* Add spacing between nested buttons */
	margin-top: 10px;
}

.nested-buttons .site-btn {
	color: var(--text-color);
}

.nested-buttons .nested {
	flex: 1 1 calc(45% - 10px);
	/* Two buttons per row with spacing */
	font-size: 12px;
	/* Smaller nested button font */
	text-align: center;
	padding: 6px 10px;
	background-color: var(--base-color);
	/* Secondary button color */
	border-radius: 4px;
	transition: transform 0.3s;
	/* Smooth hover effect */

}

.nested-buttons .nested:hover {
	text-decoration: none;
	/* Ensure no underline appears on hover */
	transform: scale(1.15);
	/* Slight zoom on hover */


}

@media (max-width: 768px) {
	.topic-item {
		flex: 1 1 calc(100% - 20px);
		/* Stacks cards to full width on smaller screens */
	}

	.nested-buttons .nested {
		flex: 1 1 100%;
		/* Stacks nested buttons on smaller screens */
	}
}

/*---------------------
=====================
	Novels
=====================	 
----------------------*/
.books-novels {
	background-color: var(--base-color);
}


/*---------------------
=====================
	Abstract
=====================	 
----------------------*/
.link-section {
	background-color: var(--base-color);

}

.abstract-section {
	background-color: var(--base-color);
}

.paper-link {
	background-color: var(--base-color);
}

.paper-link .site-btn {
	color: var(--base-color);
	/* Make sure text is visible */
	font-size: 16px;
	padding: 10px 20px;
	background-color: var(--text-color);
	/* Button background */
	text-decoration: none;
	/* Removes underline */
	display: inline-block;
	/* Ensure it behaves like a button */
	transition: transform 0.3s ease, background-color 0.3s ease;
	/* Smooth transition for transform and background-color */
}

.paper-link .site-btn:hover {
	color: var(--base-color);
	transform: scale(1.2);
	/* Increase size by 0.5% */
}



/* -----------------
====================
  RESPONSIVE
====================
--------------------*/

/* Mobile screens (up to 600px wide) */
@media (max-width: 600px) {
	h2 {
		font-size: 25px;
	}

	h3 {
		font-size: 18px;
	}

	h4 {
		font-size: 10px;
	}

	p {
		font-size: 13px;
	}

	p2 {
		font-size: 13px;
		margin-bottom: 30px;
	}

	p3,
	p4 {
		font-size: 13px;
	}

	ul {
		font-size: 13px;
	}

	li {
		font-size: 13px;
		margin-bottom: 10px;
	}
}

/* Tablet screens (601px to 1024px wide) */
@media (min-width: 601px) and (max-width: 1024px) {
	h2 {
		font-size: 30px;
	}

	h3 {
		font-size: 22px;
	}

	h4 {
		font-size: 12px;
	}

	p {
		font-size: 15px;
	}

	p2 {
		font-size: 15px;
		margin-bottom: 25px;
	}

	p3,
	p4 {
		font-size: 15px;
	}

	ul {
		font-size: 15px;
	}

	li {
		font-size: 15px;
		margin-bottom: 8px;
	}
}

/* Desktop/computer screens (1025px to 1440px wide) */
@media (min-width: 1025px) and (max-width: 1440px) {
	h2 {
		font-size: 35px;
	}

	h3 {
		font-size: 25px;
	}

	h4 {
		font-size: 15px;
	}

	p {
		font-size: 18px;
	}

	p2 {
		font-size: 18px;
		margin-bottom: 20px;
	}

	p3,
	p4 {
		font-size: 18px;
	}

	ul {
		font-size: 18px;
	}

	li {
		font-size: 18px;
		margin-bottom: 12px;
	}

}

/* Larger screens (above 1440px wide) */
@media (min-width: 1441px) {
	h2 {
		font-size: 40px;
	}

	h3 {
		font-size: 30px;
	}

	h4 {
		font-size: 18px;
	}

	p {
		font-size: 20px;
	}

	p2 {
		font-size: 20px;
		margin-bottom: 15px;
	}

	p3,
	p4 {
		font-size: 20px;
	}

	ul {
		font-size: 20px;
	}

	li {
		font-size: 20px;
		margin-bottom: 15px;
	}
}