*,
*:before,
*:after {
    box-sizing: inherit;
}

html {
    /*overflow-x: clip;*/
    scroll-behavior: smooth;
    box-sizing: border-box;
    background-color: #008080;
    /*overflow-x: hidden;*/
}

body {
    /*overflow-x: clip;*/
    margin: 0;
    padding: 0px;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 1.2rem;
    line-height: 1.6;
    letter-spacing: 0.5px;
}

a {
    text-decoration: none;
    color: white;
    border-radius: 8px;    
}

img {
    max-width: 100%;
    vertical-align: top;
    height: auto;
}

main {
    margin-left: 0;
    /* Centers the container */
    margin-right: auto;
    width: 100%;
    /* Ensures it fills the space on smaller screens */
}

/* 1. Full-width Outer Wrapper */
.outer {
    width: 100%;
    /*background-color: #FFF8DC;*/
    background-color: #E6B89C;

    padding: 20px;
}

/* 2. Constrained Inner Container */
.inner {
    max-width: 1300px;
    margin-inline: auto;
    /* Centers the div */
    padding: 0 20px;
    /* Padding so content doesn't hit screen edges on mobile */
}

#myBtn {
    display: none;
    position: fixed;
    bottom: 20px;
    right: 30px;
    z-index: 99;
    font-size: 18px;
    border: none;
    outline: none;
    background-color: red;
    color: white;
    cursor: pointer;
    padding: 15px;
    border-radius: 4px;
}

#myBtn:hover {
    background-color: #555;
}

.stay-top {
    position: fixed;
    width: 100%;
    z-index: 1;
    top: 0;
}


nav {
    background-color: black;
    color: white;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 5%;
    height: 70px;
    position: relative;
}

.logo {
    font-size: 1.5rem;
    font-weight: bold;
}

/* Desktop Links */
.nav-menu {
    display: flex;
    list-style: none;
}

.nav-menu li a {
    color: white;
    text-decoration: none;
    padding: 0 15px;
    font-size: 1.1rem;
    transition: color 0.3s;
    padding: 1rem 2rem;
    letter-spacing: 1.5px;
}

.nav-menu li a:hover {
    color: black;
    background-color: #008080;
}

/* Sandwich Button (hidden on desktop) */
.sandwich-btn {
    display: none;
    background: none;
    border: none;
    color: white;
    font-size: 2rem;
    cursor: pointer;
}

hr {
    border: 1px solid silver;
    margin-top: 30px;
    margin-bottom: 30px;
}

.main-logo {
    font-size: 1.6rem;
    font-weight: bold;
    letter-spacing: 2px;
    /* 1. The Multi-color Gradient */
    /* Note: We start and end with the same color (#ff8a00) for a seamless loop */
    background: linear-gradient(to right,
            #ff8a00,
            #e52e71,
            #8a2be2,
            #00d4ff,
            #ff8a00);

    /* 2. Make the background wider than the text so we can move it */
    background-size: 200% auto;

    /* 3. Clip the background to the text and make text transparent */
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;

    animation: moveGradient 4s linear infinite;
}

/* 5. Define the movement */
@keyframes moveGradient {
    0% {
        background-position: 0% 50%;
    }

    100% {
        background-position: 200% 50%;
    }
}

.green-link {
    border: none;
    display: inline-block;
    padding: 8px 16px;
    vertical-align: middle;
    overflow: hidden;
    border-radius: 10px;
    text-decoration: none;
    color: white;
    font-weight: bold;
    background-color: green;
    text-align: center;
    cursor: pointer;
    white-space: normal;
}

.green-link:hover {
    color: black;
    font-weight: bold;
    background-color: silver;
    box-shadow: 0 4px 8px rgba(255, 255, 255, 0.8);
}

.green-link-dark {
    border: none;
    display: inline-block;
    padding: 8px 16px;
    vertical-align: middle;
    overflow: hidden;
    border-radius: 10px;
    text-decoration: none;
    color: white;
    font-weight: bold;
    background-color: green;
    text-align: center;
    cursor: pointer;
    white-space: nowrap;
}

.green-link-dark:hover {
    color: black;
    font-weight: bold;
    background-color: silver;
    box-shadow: 0 4px 8px rgba(235, 1, 1, 0.8);
}

.blue-link-dark {
    border: none;
    display: inline-block;
    padding: 8px 16px;
    vertical-align: middle;
    overflow: hidden;
    border-radius: 10px;
    text-decoration: none;
    color: white;
    font-weight: bold;
    background-color: blue;
    text-align: center;
    cursor: pointer;
    white-space: nowrap;
}

.blue-link-dark:hover {
    color: black;
    font-weight: bold;
    background-color: silver;
    box-shadow: 0 4px 8px rgba(235, 1, 1, 0.8);
}

/* 5. Inner Column Logic */
.content, .image-box {
  flex: 1; /* Both divs take up 50% width of the 1200px inner div */
}

.image-box img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 8px;
}

/* Update the .row class to include background, shadow, and padding */
.row {
  display: flex;
  align-items: flex-start;
  gap: 0px;
  margin : 20px;
  margin-bottom: 20px; /* Space between the shadowed boxes */
  background-color: white; /* White background to make the shadow pop */
  padding: 20px;
  border-radius: 12px; /* Rounded corners for a modern look */
  
  /* Modern Soft Shadow: X-offset Y-offset Blur Spread Color */
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}

.column {
  width: 50%;
  background-color:aqua; 
  color:black; 
  border-radius: 8px; 
  padding:0px; 
  margin:10px; 
  border: 1px solid rgba(0,0,0,0.5);

  overflow: hidden
}

table{
  border-collapse: collapse; 
  width: 100%; 
  border: 1px solid #ccc;
}
/* Styles every second row (2nd, 4th, 6th...) */
tr:nth-child(even) {
  background-color: #f2f2f2;
}

/* Styles every first row (1st, 3rd, 5th...) */
tr:nth-child(odd) {
  background-color: #ffffff;
}

td{
  padding:15px; 
  text-align: left;
}

/* 6. Responsive Mobile Fix */
@media (max-width: 768px) {
  .column
  {
   width: 95%;
   background-color:aqua; 
  }
  .row, .row.reverse {
    flex-direction: column; /* Stack vertically on small screens */
    text-align: left;
  }
}


/* 1. MAIN CONTAINER */
.slider-container {
  width: 100%;
  /*height:400px;*/
  background-color:white;
  max-width: 1200px; /* You can change this to any size */
  margin: 0px auto;
  padding: 10px;
  position: relative; /* Needed to anchor arrows and dots */
  overflow: hidden;   /* Hides the images that aren't active */
  border-radius: 8px; /* Optional: rounded corners */
  box-shadow: 0 4px 15px rgba(0,0,0,0.2);
  touch-action: pan-y; /* Improves touch scrolling */
  cursor: grab;
}

.slider-container:active {
  cursor: grabbing;
}

/* 2. THE SLIDING WRAPPER */
.slides-wrapper {
  display: flex;
  border-radius: 8px;

  transition: transform 0.5s ease-in-out; /* Smooth sliding effect */
  width: 100%;
}

/* 3. INDIVIDUAL SLIDES & IMAGES */
.slide {
  /*height:400px;*/
  min-width: 100%; /* Each slide takes full width of container */
  box-sizing: border-box;
  touch-action: pan-y;
  pointer-events: auto; /* Ensures the div accepts touch input */  
}

.slide img {
  width: 100%;
  padding:10px;
  border-radius: 20px;
  display: block;   /* Removes bottom whitespace in some browsers */
  /*height: 400px;     /* Maintains aspect ratio */
  user-select: none; /* Prevents users from accidentally dragging the image file */
}

/* 4. NAVIGATION ARROWS */
.prev, .next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%); /* Perfectly centers arrows vertically */
  background-color: rgba(0, 0, 0, 0.4);
  color: white;
  border: none;
  padding: 16px;
  cursor: pointer;
  font-size: 20px;
  font-weight: bold;
  transition: 0.3s;
  z-index: 10;
  user-select: none;
}

.prev { left: 0; border-radius: 0 4px 4px 0; }
.next { right: 0; border-radius: 4px 0 0 4px; }

.prev:hover, .next:hover {
  background-color: rgba(0, 0, 0, 0.8);
}

/* 5. NAVIGATION DOTS (Pagination) */
.dots-container {
  padding: 20px;
  justify-content: center; 
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 22px;
  z-index: 10;
}

.dot {
  width: 12px;
  height: 12px;
  background-color: rgba(0, 255, 0, 0.5);
  border-radius: 50%;
  cursor: pointer;
  transition: all 0.3s ease;
  border: 1px solid rgba(0,0,0,0.2);
}

.dot.active {
  background-color: #646464;
  transform: scale(1.3); /* Makes the active dot slightly larger */
  box-shadow: 0 0 5px rgba(0,0,0,0.3);
}

/* 6. RESPONSIVENESS */
@media (max-width: 600px) {
  /* Hide arrows on mobile to save space; users can swipe instead */
  .prev, .next {
    display: none;
  }
  
  .dots-container {
    bottom: 0px;
  }
}

/* Container for each image + text */
.slide-content {
  position: relative;
  width: 100%;
  height: 100%;
}

/* Common style for overlays */
.overlay-top, .overlay-bottom-right {
  position: absolute;
  color: white;
  background: rgba(0, 0, 0, 0.4); /* Dark semi-transparent background for readability */
  padding: 10px 20px;
  border-radius: 5px;
  pointer-events: none; /* Allows clicks to pass through to the slider dragging logic */
}

/* Heading at the top center */
.overlay-top {
  top: 20px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 24px;
  font-weight: bold;
  text-transform: uppercase;
  letter-spacing: 2px;
}

/* Writing in the bottom right corner */
.overlay-bottom-right {
  bottom: 50px; /* Kept slightly higher to avoid overlapping with dots */
  right: 20px;
  font-size: 14px;
  max-width: 250px;
  text-align: right;
}

/* Mobile adjustments */
@media (max-width: 600px) {
  .overlay-top { font-size: 18px; top: 10px; }
  .overlay-bottom-right { font-size: 11px; bottom: 40px; }
}