@charset "utf-8";
/* CSS Document */


body{
background-image: url("../img/repeat-pattern-bground-navy.png");
background-color:#2d4863;
}


/*hero graphic*/
.w-full{
	/*margin-bottom:100px;*/
	margin-top:0px;
	padding-bottom:20px;
	padding-top:10px;
	padding-left: 20px;	
	margin-bottom:50px;
	width:100%;
}






.bg-clr_base:hover {
	background-color:#1982c4;
}

span .arrow:hover {
	background-color:#1982c4;
}

span .arrow {
	background-color:#1982c4;
}

div a .rounded, .border-blue {
	border-width: 1px;
	border-color:#1982c4;
}

.hover-blue:hover {
	background-color:#1982c4;
}

/*little hamburger menu*/
.drawerActiveIcon {
	background-color: #f4f5e4;
}
/*opened out hamburger menu*/
div .drawer {
	background-color:#2D4863;
}


.almond-txt {
	color:#f4f5e4;
}

#almond-txt {
	color:#f4f5e4;
}

div .bg-colblue {
	background-color:#1982c4;
	border-width: 3px;
	border-color:#2d4863;
}


.spacing{
	letter-spacing: 4px;
}

.main__logo {
	height: 200%;
	width: 200%;
}

div .abox {
	background-color:#1982c4;
}


@keyframes slow-spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

.spin-slow {
  animation: slow-spin 6s linear infinite; /* Adjust speed by changing '5s' */
}



.tablink, .rounded {
	border-width: 1px;
	border-color:#9fdb2c;
}

/*small arrow up at end of page*/
a .bi-arrow-up {
	color:#2d4863;
}
.lwrcase {
	text-transform:lowercase;
}

/* ------------ Logo slider */
.slide-track {
  width: calc(200px * 16);
  display: flex;
  align-items: center;
  animation: scroll 20s linear infinite;
  justify-content: space-between;
  height: 100%;
  gap: 50px;
  background-color:#9fdb2c;
  
}
.slide-track2{
  animation: scroll2 20s linear infinite;
}



/* Default (Desktop) */
.about__onethumb {
  display: flex;
  justify-content: flex-start; /* Default: align left on big screens */
}

.logo-extra {
  width: 100%;
  max-width: 450px;
}





div .grid, lg:grid-cols, .raiseup {
	margin-top:-20px;
}


.hero {
	width:100%;
}


.logosmall {
  margin-top: 20px;
  margin-bottom: -90px;
}



.pagethroughs {
	color: #f4f5e4;
	font-size: 22px;
	margin-right: auto;
	margin-left:auto;
}


.pagethroughs a:hover {
	color:#9fdb2c;
}




/* ...............PORTFOLIO GRID............. */
.image-grid {
  display: flex;
  justify-content: center;
  width: 100%;
  margin: 50px 0;
}

.grid-container {
  display: grid;
  grid-template-columns: repeat(3, 1fr); /* Default: 3 columns */
  gap: 26px;
  max-width: 1200px;
  width: 100%;
  text-align: center;
  visibility: visible !important;
  opacity: 1 !important;
}

.image-grid {
  overflow: visible !important;
}

/* Ensure the grid remains visible */
.image-grid, .grid-container {
  display: grid !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: 100% !important;
  max-width: 1200px;
  overflow: visible !important;
}

/* Ensure items are visible */
.grid-item {
  border: 2px solid #9fdb2c;
  border-radius:10px;
  padding: 6px;
  transition: border-color 0.3s ease, transform 0.3s ease;
  background: rgba(0, 0, 0, 0.2);
  min-height: 200px;
  overflow: visible;
}


.grid-item:hover {
  border-color: #f4f5e4;
  transform: scale(1.07);
}


.grid-item img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 5px;
  background-color: rgba(255, 0, 0, 0.2);
}

.grid-item p {
  margin-top: 10px;
  font-size: 16px;
  color: #f4f5e4;
}







/* === Responsive Fix === */

/* Tablets: 2 columns */
@media (max-width: 1024px) {
  .image-grid {
    display: grid !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
    position: relative !important;
    z-index: 10 !important;
  }

  .grid-container {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 32px !important;  /* Ensure gap is preserved */
    width: 100% !important;
    max-width: 100% !important;
    min-height: 200px !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  .grid-item {
    width: 100% !important;
    min-height: 200px !important;
  }
}


/* Phones: 1 column */
@media (max-width: 767px) {
  .grid-container {
    grid-template-columns: repeat(1, 1fr) !important;
    display: grid !important;
    width: 100% !important;
  }
}


/* Extra for 2 column grid */
/* ...............PORTFOLIO GRID (Default for portfolio1.html)............. */
.image-grid {
  display: flex;
  justify-content: center;
  width: 100%;
  margin: 50px 0;
}

.grid-container {
  display: grid;
  grid-template-columns: repeat(3, 1fr); /* Default: 3 columns */
  gap: 26px;
  max-width: 1200px;
  width: 100%;
  text-align: center;
  visibility: visible !important;
  opacity: 1 !important;
}



/* Ensure items are visible */
.grid-item {
  border: 2px solid #9fdb2c;
  border-radius:10px;
  padding: 6px;
  transition: border-color 0.3s ease, transform 0.3s ease;
  background: rgba(0, 0, 0, 0.2);
  min-height: 200px;
  overflow: visible;
}

.grid-item:hover {
  border-color: #f4f5e4;
  transform: scale(1.07);
}

.grid-item img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 5px;
  background-color: rgba(255, 0, 0, 0.2);
}

.grid-item p {
  margin-top: 10px;
  font-size: 16px;
  color: #f4f5e4;
}





/* Animation Page ONLY – scoped to avoid interfering with other pages */
.my-animation-page {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 3px;
  text-align: center;
  box-sizing: border-box;
}

/* === Grid Layout === */
.my-animation-page .image-grid {
  width: 100%;
  margin: 10px 0;
}

.my-animation-page .grid-container,
.my-animation-page .grid-item {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  display: block;
  box-sizing: border-box;
  text-align: center;
}


/* Grid item uses flex for vertical layout and center alignment */
.my-animation-page .grid-item {
  width: 1000px;
  margin: 100px auto 0 auto;
  padding: 12px 12px 30px 12px;
  border: 2px solid lime; /* animated lime green border */
  border-radius: 16px;
  box-sizing: border-box;
  text-align: center;

  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  transition: transform 0.3s ease-in-out, border-color 0.5s ease-in-out;  
}


.my-animation-page .grid-item {
  transition: transform 0.3s ease;
  transform-origin: center center;
}

.my-animation-page .grid-item:hover {
  border-color: #f4f5e4;
  transform: scale(1.05);
}

/* === Centering Containers and Animation Wrappers === */
/* Changed from flex to block to allow margin nudging */
.centered-animation,
.center-animation-wrapper {
  display: block; /* Changed from flex to block */
  width: 100%;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* Inner div inside centered wrappers aligns center and is block */
.centered-animation > div,
.center-animation-wrapper > div {
  display: block !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
  box-sizing: border-box;
}

/* === Animation Containers === */
.my-animation-page #animation_container,
.my-animation-page #animation_container_1,
.my-animation-page #animation_container_2,
.my-animation-page #animation_container_2a,
.my-animation-page #animation_container_3 {
  width: 100%;
  margin: 0 auto;
  position: relative;
  display: block;
  box-sizing: border-box;
  max-width: 1000px;
}



/* === Canvas and Overlay Centering === */
/* Removed margin-left:auto to respect container's margin-left */
canvas,
#dom_overlay_container,
#dom_overlay_container_1,
#dom_overlay_container_2,
#dom_overlay_container_2a,
#dom_overlay_container_3 {
  display: block;
  margin-left: 0 !important;
  margin-right: 0 !important;
  position: relative !important;
  max-width: 100%;
  height: auto !important;
  box-sizing: border-box;
  left: 0 !important;
  right: 0 !important;
}

/* Force canvas containers to not stretch and center */
#animation_container,
#animation_container_1,
#animation_container_2,
#animation_container_2a,
#animation_container_3,
#dom_overlay_container,
#dom_overlay_container_1,
#dom_overlay_container_2,
#dom_overlay_container_2a,
#dom_overlay_container_3 {
  position: relative;
  display: block;
  box-sizing: border-box;
  max-width: 1000px;
  margin-right: auto;
  margin-left: auto;
}

.center-animation-wrapper {
  width: auto;
  max-width: 100%;
  display: block;
  margin: 0 auto;
  padding: 0;
  box-sizing: border-box;
}


/* Optional: Prevent inline styles from breaking layout visually */
canvas,
[id^="dom_overlay_container"] {
  display: block;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

canvas {
  width: 100% !important;
  height: auto !important;
  display: block;
  max-width: 1000px;
  margin: 0 auto;
}

[id^="dom_overlay_container"] {
  width: 100% !important;
  height: auto !important;
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
  max-width: 1000px;
}

/* Target only the third animation container to fix spacing */
#animation_container_3 {
  height: auto !important;
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* Canvas fix */
#canvas_3 {
  display: block !important;
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
  height: auto !important;
  max-height: 750px !important;
}

/* Overlay container fix */
#dom_overlay_container_3 {
  height: 0 !important; /* Collapse empty overlay */
  overflow: hidden !important;
  padding: 0 !important;
  margin: 0 !important;
  display: none !important;
}


@media (min-width: 1024px) {
  .my-animation-page .grid-item {
    margin: 100px 0 0 35px; /* Nudge right only on large screens */
  }
}


@media screen and (max-width: 768px) {
  .my-animation-page .two-column .grid-item {
    flex: 1 1 100%;
    max-width: 100%;
  }
}

/* Nudge Animation 5 slightly left */
.my-animation-page .two-column .grid-item:first-child {
  margin-left: -12px; /* adjust this value as needed */
}

@media screen and (max-width: 768px) {
  .my-animation-page .two-column .grid-item:first-child {
    margin-left: 0;
  }
}




/* Fix excess spacing in third animation container */
.my-animation-page .grid-item:nth-of-type(3) {
  padding-bottom: 0 !important;
}

#animation_container_3 {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

#canvas_3,
#dom_overlay_container_3 {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}



#canvas_3 {
  background-color: rgba(255, 0, 0, 0.1);
}


/* Two-column row layout */
.my-animation-page .two-column .grid-row {
  display: flex;
  flex-wrap: wrap;
  gap: 20px; /* Space between the two animations */
  justify-content: center;
}

/* Individual grid items inside two-column layout */
.my-animation-page .two-column .grid-item {
  flex: 1 1 45%;
  max-width: 480px;
  padding: 12px 12px 30px 12px;
  border: 2px solid lime;
  border-radius: 16px;
  box-sizing: border-box;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  transition: transform 0.3s ease-in-out, border-color 0.5s ease-in-out;
}

/* Keep same hover effect */
.my-animation-page .two-column .grid-item:hover {
  border-color: #f4f5e4;
  transform: scale(1.05);
  transform-origin: center center;
}

/* Make canvas responsive */
#animation_container_5,
#animation_container_6 {
  width: 100%;
  max-width: 600px;
  margin: 0 auto;
}

#canvas_5,
#canvas_6 {
  width: 100% !important;
  height: auto !important;
  display: block;
  max-width: 600px;
  margin: 0 auto;
}

#dom_overlay_container_5,
#dom_overlay_container_6 {
  pointer-events: none;
  display: none;
  width: 100%;
  height: auto;
}









/*video page*/
/* Main container max-width and centering */
body.portfolio4 main .portfolio4-page {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 20px;
  box-sizing: border-box;
}

/* Heading container - narrower than videos */
body.portfolio4 main .portfolio4-page > .my-video-page > .text-center {
  max-width: 900px;
  margin: 0 auto 40px auto;
  padding: 0 10px;
  box-sizing: border-box;
}

/* Video grid container */
body.portfolio4 main .portfolio4-page .image-grid {
  max-width: 1400px;
  margin: 0 auto 60px auto;
  padding: 0 20px;
  width: 100%;
  box-sizing: border-box;
}

/* Grid container base style */
body.portfolio4 main .portfolio4-page .grid-container {
  display: grid;
  gap: 30px;
  width: 100%;
}

/* Single column for most videos */
body.portfolio4 main .portfolio4-page .grid-container.single-column {
  grid-template-columns: 1fr;
}

/* Two columns for videos 2 & 3 */
body.portfolio4 main .portfolio4-page .grid-container.two-columns {
  grid-template-columns: repeat(2, 1fr);
}

/* Grid item styling with max-width and centering */
body.portfolio4 main .portfolio4-page .grid-item {
  max-width: 1000px;
  margin: 0 auto;
  padding: 5px;
  box-sizing: border-box;
  border-radius: 12px;
  overflow: hidden;
  transition: transform 0.3s ease;
}

body.portfolio4 .video-wrapper {
  position: relative;
  width: 100%;
  padding-bottom: 75% !important; /* bigger height (4:3 ratio) */
  overflow: hidden;
  border-radius: 8px;
}

body.portfolio4 .video-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

/* Responsive tweak - stack columns on small screens */
@media (max-width: 768px) {
  body.portfolio4 main .portfolio4-page .grid-container.two-columns {
    grid-template-columns: 1fr; /* stack 2-col grids on mobile */
  }
}






/* === Responsive Fix === */

/* Tablets: 2 columns */
@media (max-width: 1024px) {
  .image-grid {
    display: grid !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
    position: relative !important;
    z-index: 10 !important;
  }

  .grid-container {
	  
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 24px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 200px !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  .grid-item {
    width: 100% !important;
    min-height: 200px !important;
  }
}

/* Phones: 1 column */
@media (max-width: 767px) {
  .grid-container {
    grid-template-columns: repeat(1, 1fr) !important;
    display: grid !important;
    width: 90% !important;
  }
}

/* ...............PORTFOLIO2 GRID (Only for portfolio2.html)............. */
.portfolio2-wrapper .grid-container {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important; /* 2 columns */
  grid-template-rows: repeat(6, auto) !important; /* 6 rows */
  gap: 40px !important;
  width: 100% !important;
  max-width: 100% !important;
  text-align: center !important;
}


/* === PORTFOLIO2 GRID (Tablet: 2 columns, Mobile: 1 column) === */
@media (max-width: 767px) { /* Mobile screens */
  .portfolio2-wrapper .grid-container {
    grid-template-columns: repeat(1, 1fr) !important; /* 1 column */
    grid-template-rows: repeat(12, auto) !important; /* 12 rows */
	  	width: 90% !important;
}



/* Debug borders to check if grids are being rendered */
/*@media (max-width: 1024px) {
  .image-grid {
    border: 2px solid red !important;
  }

  .grid-container {
    border: 2px solid blue !important;
  }
}
*/

/*-------END PORTFOLIO-------*/







@keyframes scroll {
  0% {
    transform: translateX(0px);
  }
  100% {
    transform: translateX(calc(-150px * 8));
  }
}
@keyframes scroll2 {
  0% {
    transform: translateX(calc(-150px * 8));
  }
  100% {
    transform: translateX(0px);
  }
}




/*.....LARGE LOGO TO SMALL LOGO......*/

/* Default logo-small - hidden by default */
.logo-small {
  display: none; /* Hide small logo by default */
}

/* Default large logo - visible by default */
.logo-large {
  max-width: 450px; /* Default large image size */
  width: 100%;
}

/* For medium-sized screens (tablets) */
@media (min-width: 769px) and (max-width: 1024px) {
  .logo-large {
    display: none; /* Hide large logo on tablet screens */
  }

  .logo-small {
    display: block; /* Show small logo on tablet screens */
    max-width: 380px; /* Optional: Adjust size for tablets */
    margin-top: 20px;
    margin-bottom: -80px;
  }
@media (min-width: 769px) and (max-width: 1024px) {
  .logo-small {
    max-width: 350px; /* Increase size for tablets */
  }
}		
	
}


/* For mobile screens (less than 768px) */
@media (max-width: 768px) {
  .logo-small {
    max-width: 250px; /* Mobile size */
  }
}

  /* Logo for smaller screens (mobile) */
.logo-small {
  max-width: 250px; /* Keep the same size for phones */
  margin-bottom: -80px; 
  display: block;
  margin: 0 auto; /* Center the logo */
}
/*.....END LARGE LOGO TO SMALL LOGO......*/




	

/*......SKILLS % LABELS .......*/

 /* Default large screen view */
.skills-container {
  display:grid ;
  grid-template-columns:repeat(3, 1fr);  /* 3 equal columns */
  grid-template-rows:repeat(4, auto);    /* 4 rows for 12 items */
  gap:15px;                               /* Small gap between columns */
  justify-items:center;
  margin-top:40px;
	max-width:800px;      /* NEW: gives the grid enough space */
  margin-left:auto;     /* Center horizontally */
  margin-right:auto;
	
	
}

.skill-box {
  background-color:#2d4863;    /* Background color for each skill box */
  border:2px solid #f4f5e4;    /* Border color */
  border-radius:10px;
  padding:16px;                 /* Padding inside the box */
  text-align:left;
  width:215px;                  /* Box width */
  height:100px;                 /* Box height */
  display:flex;
  align-items:center;
  gap:15px;
  transition:border-color 0.3s;
}

.skill-box:hover {
  border-color:#9fdb2c;        /* Hover effect to change the border color */
}

.skill-content {
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.skill-text {
  color:#f4f5e4;               /* Text color should be white */
  font-size:16px;
}

.skill-percentage {
  color:white;                 /* Percentage text should be white */
  font-size:22px;
  font-weight:bold;
}

.icon {
  max-width:65px;
  height:auto;
}

/* RESPONSIVENESS: Tablet/Phone View */	
	
@media (max-width:768px) {
  .skills-container {
    grid-template-columns:repeat(2, 1fr); /* 2 columns on tablets */
    gap:12px;                             /* Reduce gap */
    max-width:330px;                      /* Limit the width of the grid */
    margin-top:30px;
    margin-left:auto;
    margin-right:auto;
  }
  
  .skill-box {
    width:160px;
    height:75px;
    padding:10px 16px 10px 10px;
    box-sizing:border-box;
  }

  .skill-content {
    padding-right:12px;
    max-width:65%;
  }

  .icon {
    max-width:32px;
  }

  .skill-text {
    font-size:12px;
  }

  .skill-percentage {
    font-size:14px;
  }
}
	
/* Mobile and small tablet (767px and below) */
@media (max-width: 767px) {
  .skills-container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);  /* 2 columns */
    gap: 12px;
    max-width: 330px;
    margin-top: 30px;
    margin-left: auto;
    margin-right: auto;
  }
}	

@media (max-width:600px) {
  .skills-container {
    grid-template-columns:repeat(2, 1fr);
    gap:12px;
    max-width:330px;
    margin-left:auto;
    margin-right:auto;
  }

  .skill-box {
    width:160px;
    height:75px;
    padding:12px 16px 12px 10px;
    box-sizing:border-box;
  }

  .skill-content {
    padding-right:14px;
    max-width:70%;
  }

  .icon {
    max-width:38px;
  }

  .skill-text {
    font-size:13px;
  }

  .skill-percentage {
    font-size:16px;
  }
}

@media (max-width:480px) {
  .skills-container {
    grid-template-columns:repeat(2, 1fr);
    gap:10px;
    max-width:300px;
    margin-left:auto;
    margin-right:auto;
  }

  .skill-box {
    width:130px;
    height:65px;
    padding:10px 14px 10px 8px;
    box-sizing:border-box;
  }

  .skill-content {
    padding-right:12px;
    max-width:65%;
  }

  .icon {
    max-width:30px;
  }

  .skill-text {
    font-size:11px;
  }

  .skill-percentage {
    font-size:13px;
  }
}

/*......END SKILLS % LABELS .......*/


	
	
	





/*.....my SPINNING SECTION FLOWER.......*/
/* Tablets (768px and below) */
@media (max-width: 768px) {
  .spin-slow {
    width: 28px; /* Slightly smaller for tablets */
  }
}

/* Phones (480px and below) */
@media (max-width: 480px) {
  .spin-slow {
    width: 26px; /* Smaller for phones */
  }
}
/*.....my SPINNING SECTION FLOWER.......*/





/*.......HERO IMAGE....*/

/* On smaller screens (phones and tablets) */
@media (max-width: 768px) {
  .banner__thumb {
    left: 35%; /* Adjust position to move image closer to the text */
  }
}

/* On even smaller screens (optional tweak for phones) */
@media (max-width: 480px) {
  .banner__thumb {
    left: 30%; /* Move even more left if necessary */
  }
}

/*turning off the hero image for phone screens*/
@media (max-width: 767px) {
  .banner__thumb {
    display: none;
  }
}

/*.......END HERO IMAGE....*/








/*.....PERSONAL BOXES.....*/
/* Default (Large Screens) */
.grid-container2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr); /* Ensure 2-column layout */
    gap: 20px;    
}

/* Mobile Grid: Hidden by default */
.mobile-grid2 {
    display: none;
}
	
	

/* 📱 Mobile View (up to 768px) */
@media (max-width: 768px) {
    .grid-container2 {
        display: grid !important;
        grid-template-columns: 1fr; /* 1-column layout for small screens */
        gap: 08px; /* Gap between boxes */
		width: 83% !important; /* Take 85% of the screen width */
    }

    .abox {
        background-color: #1982c4;
        border: 2px solid #9fdb2c;
        font-family: Kanit, sans-serif;
        color: #f4f5e4;
        padding: 8px 8px 8px 10px; /* Reduce padding for mobile */
        border-radius: 10px;
        font-size: 0.875rem !important; /* Smaller text size */
        text-align: left;
        transition: transform 0.3s ease-in-out, border 0.5s ease-in-out;
    }

    .abox:hover {
        border-color: #f4f5e4;
        transform: scale(1.05);
    }

    .icons a {
        color: #f4f5e4;
        margin-right: 10px;
        font-size:  0.9rem !important; /* Smaller text for headings */
        text-decoration: none;
    }
}

/* Tablet View (769px - 1024px) */
@media (min-width: 769px) and (max-width: 1024px) {
    .grid-container2 {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr); /* 2-column layout for tablets */
        gap: 12px; /* Gap between boxes */
    }

    .abox {
        background-color: #1982c4;
        border: 2px solid #9fdb2c;
        font-family: Kanit, sans-serif;
        color: #f4f5e4;
        padding: 12px; /* Padding for tablets */
        border-radius: 12px;
        font-size: 14px;
        text-align: left;
        transition: transform 0.3s ease-in-out, border 0.5s ease-in-out;
    }

    .abox:hover {
        border-color: #f4f5e4;
        transform: scale(1.05);
    }

    .icons a {
        color: #f4f5e4;
        margin-right: 10px;
        font-size: 18px;
        text-decoration: none;
    }
}

/* Large Screens (Desktop) */
@media (min-width: 1025px) {
    .grid-container2 {
        display: grid;
        grid-template-columns: repeat(2, 1fr); /* 2-column layout for large screens */
        gap: 20px; /* Gap between boxes */
    }
}

/* General Styles for .abox */
.abox {
    background-color: #2d4863; /* Default background for larger screens */
    border: 2px solid #2d4863;
    padding: 10px; /* Padding to keep boxes compact */
    border-radius: 10px;
    font-size: 14px; /* Reasonable font size */
    color: #f4f5e4;
    transition: transform 0.3s ease-in-out, border 0.5s ease-in-out;
    text-align: left;
}

.abox:hover {
    border-color: #f4f5e4;
    transform: scale(1.05); /* Slight scaling on hover */
}

.ptext {
    font-size: 16px;
    margin-bottom: 8px;
}

.icons a {
    color: #f4f5e4;
    margin-right: 10px;
    font-size: 20px;
    text-decoration: none;
}

	
	
	
	
	
	
	

/*..EXTRA PORTFOLIO STUFF..*/
@media (max-width: 1024px) {
  /* Force grid to be visible */
  .grid-container {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 200px !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  /* Ensure the parent container is not hiding it */
  .image-grid {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
  
  /* Debugging border to check if it's rendering */
/*  .grid-container {
    border: 2px solid green !important;
  }*/
}



@media (max-width: 767px) {
  .grid-container {
    grid-template-columns: repeat(1, 1fr) !important; /* Set to 1 column */
    display: grid !important;
    width: 85% !important; /* Reduce width to add margin on left & right */
    max-width: 500px !important; /* Optional: Limit max width for better centering */
    margin: 0 auto !important; /* Centers the grid */
  }
}

/*..END EXTRA PORTFOLIO STUFF..*/



@media (max-width: 768px) {
	.tablinks {
	width:95%;
	padding: 2px;
	margin-right:2px;
	margin-left:2px;
	}

	}
	
	

	
/* SKILLS LABELS */	
/* Mobile and small tablet (767px and below) */
@media (max-width: 767px) {
  .skills-container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);  /* 2 columns */
    gap: 12px;
    max-width: 330px;
    margin-top: 30px;
    margin-left: auto;
    margin-right: auto;
  }
}

/* Tablet (768px and below) */
@media (max-width: 768px) {
  .skills-container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);  /* 2 columns */
    gap: 12px;
    max-width: 330px;
    margin-top: 30px;
    margin-left: auto;
    margin-right: auto;
  }
}

/* Desktop and larger screens (1025px and up) */
@media (min-width: 1025px) {
  .skills-container {
    display: grid;
    grid-template-columns: repeat(3, 1fr);  /* 3 columns */
    grid-template-rows: repeat(4, auto);    /* 4 rows for 12 items */
    gap: 15px;
    justify-items: center;
    margin-top: 40px;
    max-width: 800px;  /* Adjust for large screens */
    margin-left: auto;
    margin-right: auto;
  }
}