@charset "utf-8";

/* CSS Document */
/* RD_Kinarni_1*/

html,
body {
  height: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  width: 100%;
  background-color: whitesmoke;
  color: #111012;
  font-family: 'Open Sans', sans-serif;
}

a {
  color: #1E6FFF;
  padding: 0;
}

a:hover {
  color: #fff;
  background: #ffb81e;
  text-decoration: none;
}

/*----> */
h1, h2, h3, h4, h5, p {
  padding: 0;
  margin: 10px 0;
}   

img {
  width: 100%;
}

/* Navigation styles */
nav {
  width: 100%;
}

/*->*/
nav ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
  overflow: hidden;
  background-color: #444;
  text-align: center;

  /*make the navigation unorderlist flex diemnsions -Part10f2, GeminiAI */
  display: flex;
  /* Makes the list container a flex container */
  list-style: none;
  /* Often reset list styles when using flexbox */
  padding: 0;
  /*make the navigation unorderlist flex diemnsions- Part1of2; end */
}

/*make the navigation unorderlist flex diemnsions -Part2of2, GeminiAI */
ul li {
  flex-grow: 1;
  /* Allows list items to grow and fill the available space */
  /* Or set a specific width/flex-basis if needed */
  /* width: 200px; */
}

/*make the navigation unorderlist flex diemnsions -Part2of2, GeminiAI */

nav li {
  float: left;
  font-family: 'Open Sans', sans-serif;
  font-size: 1.2em;
  line-height: 40px;
  height: 55px;
  border-bottom: 1px solid #393434;
}

nav a {
  text-decoration: none;
  color: #fff;
  display: block;
  text-transform: uppercase;
  padding: 4px;
  font-weight: bold;
  font-size: 1.5em;
  width: 120px;
}

nav ul li a {
    display: block; /* Makes the link fill its container */
    padding: 10px 15px; /* Adds space around the text, which is included in the hover area */
    /* Other styles like color, text-decoration etc. */
}

nav ul li a:hover, /* was nav a: hover*/
a:active {
  background-color: #ffb81e; /*highlight for the navigaton barlinks*/
}

/*<-*/

/* Main Page Layout Wrapper */
#wrapper {
  position: relative;
  z-index: 1; 
  background-color: rgba(255, 255, 255, 0.85); 
  width: 960px;
  margin: 20px auto;
  min-height: 100vh; 
  padding: 20px;
  box-sizing: border-box;
}

header {
  height: auto; 
  padding: 15px;
  text-align: center; /* Centers the text alignment horizontally */
  display: flex;
  flex-direction: column; /* Keeps the heading and subtitle stacked vertically */
  align-items: center; /* Centers the inner content blocks horizontally */
  justify-content: center; /* Centers everything within the vertical space */
}

section {
  float: left;
  padding: 15px;
  margin: 5px;
  border: solid 0px #ccc;
  width: 900px; 
  box-sizing: border-box;
}

/* Row Styling for Side-by-Side Viewport Layouts */
.row-section {
  display: flex;
 /* align-items: stretch; */ /* Forces text container and link container to have equal height */ /* commented out here*/
align-items: flex-start; /* Keeps text structures standard while JS overrides image heights */
  justify-content: space-between;
  background: #e0e0ad;  /*<-- ~Line137:ctrls bkgr color of sections, was #f5f5f5 lt grey*/
  gap: 15px;
}

/* Text block left wrapper */
.section-text {
  flex: 1; /* Takes up the remaining 3/4th width space dynamically */
}

/* Image column rules <----*/
.section-link-img {
  display: block;
  width: 225px; 
  min-width: 225px;       
  text-decoration: none;
  padding: 0;
  overflow: hidden; 
  /* Forces the height to exactly match whatever its current width is */
  aspect-ratio: 1 / 1; 
}	

.section-link-img:hover {
  background: transparent; 
}

/* Image Element fills height and width of container <----*/
.row-right-img {
  width: 30% /*controls image width dimension */
  height: 30% /*controls image height dimension */
  object-fit: cover; 
  object-position: center;
  border-radius: 4px;
  border: 1px solid #ddd;
  display: block;
}

/* section width: Added #three_4 to this group rule <-- add here when adding more sections<--*/
#zero, #one, #two, #three, #three_2, #three_3, #three_4 {
  width: 900px;
}

#four {
  width: 900px;
  background: transparent; 
}

#BSCtxt_toggle {
  width: 900px; 
  min-height: 120px;
  background: #f5f5f5;  
}

#BSCtxt_toggle .step { 
  display: none; 
}

#BSCtxt_toggle .step.active { 
  display: block; 
}

#progress { 
  width: 100%; 
}

.custom-img {
  object-fit: cover; 
  object-position: center; 
  border: 1px solid #3498db;
  border-radius: 15px; 
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2); 
  display: block; 
  margin: 20px auto; 
  max-width: 100%;
}

.customizable_bkgr_image {
  background-image: url('https://picsum.photos/seed/picsum/200/300');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  width: 100%;
  height: 400px;
  background-color: #f0f0f0;
}

.customizable_pgbkgr_image {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-image: url("https://picsum.photos/seed/picsum/200/300");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  z-index: -1; 
}

header h1 {
  color: hsla(105, 22%, 11%, 0.814);
  font-family: Arial, sans-serif;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.youtube-video-container {
  position: relative;
  padding-bottom: 56.25%; 
  height: 0;
  overflow: hidden;
}

.youtube-video-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 80%; 
  height: 90%; 
}

#five {
  width: 900px;
  clear: both;
}

#six {
  width: 900px;
  background: #c5e7ff; /* ~Line264: was #d7eeff */
}

#six_2 {
  width: 900px;
  background: rgb(241, 225, 255); /* was rgb(248, 242, 253)*/
  text-align: center;
		
}

footer {
  clear: both;
  padding: 15px;
  width: 900px;
  text-align: center;
}

/* Media Queries for Responsiveness */
@media screen and (max-width: 960px) {
  #wrapper {
    width: 100%;
    margin: 0;
  }
  section, #zero, #one, #two, #three, #three_2, #three_3, #three_4, #four, #five, #six, #six_2, #BSCtxt_toggle, footer {
    width: 100%;
  }
}

/*<----*/
@media screen and (max-width: 600px) {
  .row-section {
    flex-direction: column;
    align-items: center;
  }

  .section-link-img {
    width: 100%;
    min-width: 100%;
    /* Height is removed here because aspect-ratio handles it automatically */
  }

  /* ... keep your other nav and typography mobile styles here ... */
}


  nav ul {
    flex-direction: column; 
  }

  nav a {
    width: 100%;
    padding: 5px 0;
  }

  nav li {
    font-size: 0.9em;
    line-height: 30px;
    height: auto;
  }

  h1, h2 {
    font-size: 1.2em;
  }

  .headingtext {
    display: none;
  }

  section {
    width: 100%;
    float: none;
  }
/*} */  /* commented out extra } */