@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

/* ========BASIC======== */
html {
    overflow-y:scroll;
}

body {
    margin:0;
    padding:0;
    line-height:1.6;
    letter-spacing:1px;
   font-family:Verdana, Helvetica, sans-serif;
    font-size:13px;
    color:#000;
}


@media (max-width: 600px) {
    body {
            margin-left: 1em;;
            margin-right: 1em;
            max-width: 90%;
    }
}


/* Optional: adjust for very small screens */
@media (max-width: 480px) {
    #gtranslate_wrapper {
      display: none !important;
    }
}


/* Hide the hidden-keyword div */
#hidden-keyword {
    display: none;
}


br {
    letter-spacing:normal;
}

a {
    color:#000;
    text-decoration:none;
}
a:hover {
    color:#917700;
    text-decoration:underline;
}

img {
    border:0;
    vertical-align:bottom;
}

@media (max-width: 768px) {
   img {
    border: 0;
    vertical-align: bottom;
    max-width: 100%;   /* scales down on smaller screens */
    height: auto;      /* maintains aspect ratio */
    display: block;    /* prevents gaps under image */
    padding-top: 20px;       /* 10px top padding */
    box-sizing: border-box;  /* ensures padding doesn't break layout */
    }
}

/* Mobile */
@media (max-width: 480px) {
    img {
    border: 0;
    vertical-align: bottom;
    max-width: 100%;   /* scales down on smaller screens */
    height: auto;      /* maintains aspect ratio */
    display: block;    /* prevents gaps under image */
    padding-top: 20px;       /* 10px top padding */
    box-sizing: border-box;  /* ensures padding doesn't break layout */
    }
}


h1,h2,h3,h4,h5,h6 {
    margin:0;
}

h2 {
    clear:both;
    padding:0 10px;
    margin-bottom:20px;
    color:#001a91;
    font-size:24px;
    font-weight:600;
    line-height:1.4;
    text-align:center;
}

h3 {
    clear:both;
    margin:50px 0 0 0;
    font-size:18px;
    font-weight:normal;
    color:#917700;
    line-height:1.8;
    border-bottom:1px dotted #917700;
}
h2 + h3 {
    margin-top:20px;
}
h3:first-child {
    margin-top:0;
}

h3 + h4 {
    margin-top:10px;
}
h4 {
    margin:30px 0 0 0;
    color:#333;
    font-weight:bold;
    font-size:16px;
    line-height:2.0;
    border:0;
}

h5 {
    line-height:2.0;
    font-size:14px;
    color:#000;
    font-weight:normal;
}

h6 {
    font-size:14px;
    font-weight:normal;
    color:#917700;
    line-height:2.0;
}

p {
    margin:0.5em 0 1em 0;
    line-height:1.8;
}

ul,ol,dl,dll {
    margin:10px 0;
    padding:0;
}

li {
    padding:0;
    margin:0 0 0 30px;
}

dt {
    margin:0;
    padding:0;
}

dd {
    margin:2em 2em 1em;
    padding:10px;
    background:#f1f1f1;
    margin-left: 40px;
}


ddd {
    margin:0 0 1em 0;
    padding:10px;
    background:#f1f1f1;
    display: block;
    margin-inline-start: 40px;
    unicode-bidi: isolate;
}


@media (max-width: 480px) {

    dd {
        margin: 1em 1em 0.5em;   /* reduce outer spacing */
        margin-left: 10px;       /* smaller indent */
        padding: 8px;            /* smaller padding */
    }

    ddd {
        margin-inline-start: 10px;
        padding: 8px;
    }
}




table.normal {
    width:650px;
    margin:10px 0;
    border-collapse:collapse;
    border:1px solid #999;
    border-spacing:0;
    line-height:1.8;
}

table.normal th {
    padding:5px;
    border:1px solid #999;
    border-width:0 0 1px 1px;
    background:#EFEBEF;
    font-weight:bold;
    text-align:left;
}

table.normal td {
    padding:5px;
    border:1px solid #999;
    border-width:0 0 1px 1px;
    text-align:left;
}

table.wide {
    width:700px;
    margin:10px 0;
    border-collapse:collapse;
    border:1px solid #999;
    border-spacing:0;
    line-height:1.8;
}

table.wide th {
    padding:5px;
    border:1px solid #999;
    border-width:0 0 1px 1px;
    background:#EFEBEF;
    font-weight:normal;
    text-align:center;
    line-height:18px;
}

table.wide td {
    padding:5px 5px 8px 5px;
    border:1px solid #999;
    border-width:0 0 1px 1px;
    text-align:left;
    font-size:12px;
    line-height:18px;
}


table.layout {
   width:100%;
   border-collapse: collapse;
}

table.layout th {
   padding:5px;
   font-size:12px;
   text-align:left;
   border:0px solid; 
   background:#cfcfcf;
}

table.layout td {
   padding:5px;
   font-size:12px;
   text-align:left;
   border:0px solid ;
}



/* ========TEMPLATE LAYOUT======== */
#container {
    width:100%;
    margin:0 auto;
    background:#fff;
}

/* Tablet */
@media (max-width: 768px) {
    #container {
        max-width: 95%;
        padding: 0 12px;
    }
}

/* Mobile */
@media (max-width: 480px) {
    #container {
        max-width: 100%;
        padding: 0 10px;
    }
}

/* Base (mobile-first) */
#header {
    position: relative;
    width: 100%;
    max-width: 940px;
    margin: 0 auto;
    padding: 0 16px;
    box-sizing: border-box;

    display: flex;
    flex-direction: column;   /* stack on small screens */
    align-items: center;
}

/* Menu */
/* Hide button on desktop */
#menu-toggle {
    display: none;
}

/* ---------- MOBILE ONLY ---------- */
@media (max-width: 768px) {

    /* Show hamburger */
    #menu-toggle {
        display: flex;
        background: white;
        color: #23558e;
        font-weight: bold;
        border: none;
        padding: 10px 15px;
        font-size: 2.5em;
        cursor: pointer;
        justify-content: center;  /* horizontal */
        align-items: center;      /* vertical */
        align-content: center;

    }

    /* Hide menu initially */
    #grobalnavi {
        display: none;
        width: 100%;
    }

    /* Show when active */
    #grobalnavi.active {
        display: block;
    }

    /* Stack menu items */
    #grobalnavi > ul {
        display: block;
    }

    #grobalnavi li {
        border-bottom: 1px solid #ddd;
    }

    /* Submenus hidden by default */
    #grobalnavi li ul {
        position: static;
        display: none;
        padding-left: 15px;
    }

    /* Open submenu */
    #grobalnavi li.open > ul {
        display: block;
    }
}



/* Base styles */

#menu {
    position: static;         /* remove absolute positioning */
    margin-top: 10px;
}

/* Tablet and up */
@media (min-width: 768px) {
    #header {
        flex-direction: row;          /* horizontal layout */
        justify-content: space-between;
        align-items: center;
    }

    #menu {
        margin-top: 0;
    }
}

/* Desktop */
@media (min-width: 1024px) {
    #header {
        max-width: 940px;
        padding: 0;
    }
}

#contents {
    overflow:hidden;
    width:940px;
    margin:0 auto;
}

#conL {
    float:left;
    width:200px;
    
}

#TOPconL {
    float:left;
    width:200px;
}


#conR {
    clear:both;
    float:right;
    width:700px;
}

#conR p {
    text-align: justify;
    padding-bottom: 1.4em;
}

#TOPconR {
    clear:both;
    float:center;
    width: 930px;;
}

ul.mission-list li {
    line-height: 1.8; /* Adjust this value for more or less spacing */
    margin-bottom: 8px; /* Optional: adds space between list items */
}



/* ========HEADER CUSTOMIZE======== */
#header h1 {
    margin:0;
    padding:40px 0px 10px 0px;
    font-size:30px;
    color:#770000;
    line-height:1.0;
}

#header h1 a {
    color:#770000;
}

#header h1 a:hover {
    color:#770000;
}

/* ========MENU CUSTOMIZE======== */
#menu ul {
    margin:0;
    padding:0;
    list-style:none;
}

#menu li {
    overflow:hidden;
    float:left;
    margin:0;
    padding:0 0 0 30px;
}

#menu li a {
    display:block;
    font-weight:bold;
    color:#333;
    outline:none;
    text-decoration:none;
}

#menu li a:hover {
    color:#333;
    border-bottom:3px solid #917700;
    text-decoration:none;
}


/* Responsive for mobile */
@media (max-width: 768px) {
    #menu {
        position: absolute; /* remove absolute positioning on small screens */
        top: 20px;
        left: 0;
        background-color: #fff; /* optional background for menu */
    }

    #menu ul {
        flex-direction: row; /* stack menu items vertically */
        padding: 0;
    }

    #menu li {
        padding-left: 20px;
        margin: 5px 0;
        font-size: 8px;
    }

    #menu li a:hover {
    color: #333;
    border-bottom: 3px solid #917700;
    }
    
}


#contents {
    overflow: hidden;
    width: 940px;       /* fixed width on large screens */
    max-width: 100%;    /* ensures it doesn't overflow viewport */
    margin: 0 auto;     /* center horizontally */
    box-sizing: border-box; /* include padding in width */
}

/* Responsive adjustments */
@media (max-width: 768px) {
    #contents {
        width: 100%;     /* fill the screen on tablets */
        padding: 0 15px; /* reduce horizontal padding */
    }
}

@media (max-width: 480px) {
    #contents {
        padding: 0 10px; /* even smaller padding for mobile */
    }
}

#conL {
    float: left;
    width: 200px;
}

#TOPconL {
    float: left;
    width: 200px;
}

#conR {
    clear: both;
    float: right;
    width: 700px;
}

#conR p {
    text-align: justify;
    padding-bottom: 1.4em;
}

#TOPconR {
    clear: both;
    width: 930px;
}

@media (max-width: 480px) {
#TOPconR {
    clear: both;
    width: 100%;          /* full width on small screens */
    max-width: 930px;     /* limit width on large screens */
    margin: 0 auto;       /* center container horizontally */
    box-sizing: border-box; /* include padding in width if needed */
    padding: 0 10px;      /* optional side padding for mobile */
}
}

ul.mission-list li {
    line-height: 1.8;
    margin-bottom: 8px;
}


/* ========HEADER CUSTOMIZE======== */

#header h1 {
    margin: 0;
    padding: 40px 0 10px 0;
    font-size: 30px;
    color: #770000;
    line-height: 1;
}

#header h1 a {
    color: #770000;
}

#header h1 a:hover {
    color: #770000;
}

/* ========DROPMENU CUSTOMIZE======== */

#grobalnavi ul,
#grobalnavi li,
#grobalnavi span,
#grobalnavi a {
	border: 0;
	margin: 0;
	padding: 0;
	position: relative;
}


#grobalnavi {
	margin-right: auto;
	margin-left : auto;
	margin-bottom:20px;
	width: 940px;
}

#grobalnavi:after,
#grobalnavi ul:after {
	content: '';
	display: block;
	clear: both;
}


#grobalnavi ul {
	list-style: none;
}

#grobalnavi > ul {
	float: left;
	display: table;
	table-layout: fixed;
	width: 100%;
	padding: 0;
}

#grobalnavi > ul > li {
	display: table-cell;
	background: #5189ca;
	color: #fff;
	font-size: 14px;
	width: 159px;
}


#grobalnavi > ul > li.active a,
#grobalnavi > ul > li:hover > a {
	background: #5189ca;
	color: #fff;
	display: inline-block;
	font-size: 14px;
	padding: 0px 20px 0px 0px;
	text-decoration: none;

}

#grobalnavi > ul > li.active{
	text-align: center;
	vertical-align: middle;
	height:54px;
}


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

    #grobalnavi {
    margin: 0 auto 10px auto;
    width: 100%;
    }


    #grobalnavi > ul > li {
        font-size: 8px;          /* readable minimum font size */
        padding: 5px 0;
        white-space: normal;     /* allow text to wrap */
        word-wrap: break-word;   /* break long words if needed */
        display: table-cell;          /* stack vertically */
        background: #5189ca;
        color: #fff;
        width: 50%;             /* full width */
        box-sizing: border-box;  /* include padding in width */

    }
}

/* Mobile styles */
@media (max-width: 480px) {

  #grobalnavi > ul {
    display: flex;
    flex-wrap: wrap;
  }

  #grobalnavi > ul > li {
    font-size: clamp(12px, 3.5vw, 14px);
    padding: 15px 5px;
    white-space: normal;
    word-break: break-word;
    background: #5189ca;
    color: #fff;
    width: 50%;
    box-sizing: border-box;
    text-align: center;
    border-right: 1px solid rgba(255,255,255,0.4); /* vertical center line */
    border-bottom: 1px solid rgba(255,255,255,0.4); /* horizontal line */
  }

  /* remove right border for items on the right side */
  #grobalnavi > ul > li:nth-child(2n) {
    border-right: none;
  }

}




#grobalnavi .sub {
	z-index: 1;
}
#grobalnavi .sub:hover > ul {
	display: block;
}
#grobalnavi .sub ul {
	display: none;
	position: absolute;
	top: 54px;
	left: 0;
}

#grobalnavi .sub ul li{
	width:159px;
}
	
	
#grobalnavi .sub ul li a {
	background: #8cb1dc;
	border-bottom: 1px solid #5189ca;
	display: block;
	line-height: 100%;
	font-size: 14px;
	text-align:left;
	padding:10% 10px;
}


#grobalnavi .sub ul li:hover a {
	background: #5189ca;
}
#grobalnavi .sub .sub:hover > ul {
	display: block;
}
#grobalnavi .sub .sub ul {
	display: none;
	position: absolute;
	left: 100%;
	top: 0;
}



@media (max-width: 480px) {
  /* Hide all submenus on mobile */
  #grobalnavi .sub ul {
    display: none !important;
  }

  /* Optional: remove hover effects */
  #grobalnavi .sub:hover > ul {
    display: none !important;
  }

  #grobalnavi .sub .sub ul {
    display: none !important;
  }
}



/* ========HEADIMAGE CUSTOMIZE======== */
#slide {
    position:relative;
    overflow:hidden;
    padding-bottom:25px;
}

.slidePrev {
    position:absolute;
    cursor:pointer;
    z-index:100;
}

.slideNext {
    position:absolute;
    cursor:pointer;
    z-index:100;
}

.slidePrev img {
    position:absolute;
    width:50px;
    height:60px;
}

.slideNext img {
    position:absolute;
    width:50px;
    height:60px;
}

.slideInner {
    position:relative;
    margin:0;
    padding:0;
}
.slideInner li {
    float:left;
    margin:0;
    padding:0;
    list-style:none;

}
.slideInner li img {
    margin:0 5px;
    padding:0;
}

.filterPrev {
    position:absolute;
    left:0;
    opacity:0.5;
    filter:alpha(opacity=50);
    background-color:#fff;
}

.filterNext {
    position:absolute;
    right:0;
    opacity:0.5;
    filter:alpha(opacity=50);
    background-color:#fff;
}

.controlNav {
      position:absolute;
      float:left;
      left:50%;
      bottom:0;
}
.controlNav span {
      position:relative;
      left:-50%;
      float:left;
      margin:5px;
      -webkit-border-radius:5px;
      -moz-border-radius:5px;
      border-radius:5px;
      width:10px;
      height:10px;
      overflow:hidden;
      -webkit-box-shadow:1px 1px 2px rgba(0, 0, 0, 0.5) inset;
      -moz-box-shadow:1px 1px 2px rgba(0, 0, 0, 0.5) inset;
      box-shadow:1px 1px 2px rgba(0, 0, 0, 0.5) inset;
      background:#eee;
      text-indent:-9999px;
      vertical-align:middle;
}
.controlNav span:hover {
      background:#ccc;
      cursor:pointer;
}
.controlNav span.current {
      -webkit-box-shadow:1px 1px 2px rgba(0, 0, 0, 0.5) inset, 0 0 2px rgba(133, 209, 198, 0.5);
      -moz-box-shadow:1px 1px 2px rgba(0, 0, 0, 0.5) inset, 0 0 2px rgba(133, 209, 198, 0.5);
      box-shadow:1px 1px 2px rgba(0, 0, 0, 0.5) inset, 0 0 2px rgba(133, 209, 198, 0.5);
      background:#8cb1dc;
}

/* ========MAINCONTENTS CUSTOMIZE======== */

/* INFORMATION CUSTOMIZE */
.information {
    margin-bottom:20px;
}

.information dl {
    margin:0;
}

.information dll {
    margin:0;
}

.information dt {
    float:left;
    padding-top:5px;
}

.information dd {
    margin:0 0 5px 0;
    padding:5px 0px 5px 13em;
    border-bottom:1px solid #ddd;
    background:none;
    font-size: 1em;
}

.information ddd {
    margin:0 0 5px 0;
    padding:5px 0px 5px 2em;
    border-bottom:1px solid #ddd;
    background:none;
}

@media (max-width: 600px) {

    .information dll {
    display: flex;
    gap: 1px;
    border-bottom:1px solid #ddd;
    }

    .information dl dt {
        float: none;         /* remove float */
        width: 100%;         /* full width */
        padding: 5px 0;      /* less padding */
        font-weight: bold;
    }

    .information dll dt {
        float: none;         /* remove float */
        width: 10%;         /* full width */
        padding: 5px 0;      /* less padding */
        font-weight: bold;
    }

    .information dd {
    margin:0 0 5px 0;
    padding:5px 0px 5px 13em;
    border-bottom:1px solid #ddd;
    background:none;
    font-size: 1em;
}


    .information ddd {
    margin:0 0 5px 0;
    padding:5px 0px 5px 2em;
    border-bottom:0px solid #ddd;
    background:none;
    font-size: 1em;
}

}




/* Responsive for small screens */
@media (max-width: 480px) {

    .information dl dt {
        float: none;         /* remove float */
        width: 100%;         /* full width */
        padding: 5px 0;      /* less padding */
        font-weight: bold;
    }

    .information dd {
        padding-left: 0;     /* remove left padding */
        border-bottom: 1px solid #ddd;
    }

    .information dll {
    display: flex;
    gap: 1px;
    border-bottom:1px solid #ddd;
    }

    .information dll dt {
        float: none;         /* remove float */
        width: 10%;         /* full width */
        padding: 5px 0;      /* less padding */
        font-weight: bold;
    }

}


/* SUBMENU CUSTOMIZE */
.submenu h3 {
    position:relative;
    text-align:center;
    margin:0;
    padding:15px 0;
    line-height:1.0;
    color:#fff;
    border:none;
    background:#61bca1;
}
.submenu h3:after {
    content:'▼';
    position:absolute;
    bottom:-13px;
    left:45%;
    float:left;
    color:#61bca1;
}


.submenu .colored-heading-container h4 {
    color: #917700;
    font-weight: bold; /* Make the font bold */
}

/* General styles for all h4 elements inside .submenu */
.submenu h4 {
    font-weight: normal;
    font-size: 14px;
    padding: 5px 10px 5px 15px;
    margin: 10px 0 0 0;
    background: #f1f1f1;
}


.submenu ul {
    margin:0 10px 0 15px;
    padding:0;
}
.submenu li {
    margin:0;
    padding:0 0 0 7px;
    list-style:none;
    border-bottom:1px dotted #ddd;
    background:url("../images/bg_arrow.gif") no-repeat left 50%;
}
.submenu li a {
    display:block;
    padding:10px 0;
    text-decoration:none;
}

.submenu p {
    margin:10px;
}

/* BANNER CUSTOMIZE */



.banner {
    width:178px;
    margin:20px 0;
    padding:10px;
    border:1px solid #ddd;
}

.banner ul {
    margin:0 0 -10px 0;
    padding:0;
}

.banner li {
    margin:0;
    padding:10px;
    list-style:none;
    margin-bottom:10px;
    background:#eee;
}

.in {
	padding: 5px 10px 5px 15px;
	background: url(../images/in.png) no-repeat center left;
	text-decoration: none;
}


/* ========FOOTMENU CUSTOMIZE======== */
/* Base (mobile-first) */
#footMenu,
#footer {
    clear: both;
    width: 100%;
    max-width: 940px;
    margin: 20px auto;
    padding: 0 16px;
    box-sizing: border-box;
}

/* Footer menu list */
#footMenu ul {
    margin: 5px 0;
    padding: 15px 0;
    text-align: center;
    border-top: 1px solid #ddd;

    display: flex;
    flex-wrap: wrap;              /* allows wrapping on small screens */
    justify-content: center;
    gap: 10px 20px;               /* spacing between items */
}

/* Menu items */
#footMenu li {
    list-style: none;
}

/* Links */
#footMenu li a {
    color: #000;
    text-decoration: none;
    display: inline-block;
    padding: 5px 0;
}

#footMenu li a:hover {
    color: #666;
    text-decoration: underline;
}

/* Tablet (≥768px) */
@media (min-width: 768px) {
    #footMenu,
    #footer {
        padding: 0 24px;
    }

    #footMenu ul {
        justify-content: center;
        gap: 15px 30px;
    }
}

/* Desktop (≥1024px) */
@media (min-width: 1024px) {
    #footMenu,
    #footer {
        max-width: 940px;
        padding: 0;
    }

    #footMenu ul {
        flex-wrap: nowrap; /* keep items in one row if space allows */
    }
}

/* Large screens (≥1200px) */
@media (min-width: 1200px) {
    #footMenu,
    #footer {
        max-width: 1100px; /* optional expansion */
    }
}

/* ========FOOTER CUSTOMIZE======== */
.copyright {
    font-style:normal;
    font-size:11px;
    color:#999;
    line-height:3.0;
    text-align:center;
}

/* ========PAGRTOP CUSTOMIZE========= */
#pageTop {
    position:fixed;
    right:20px;
    bottom:20px;
}

#pageTop a {
    display:block;
    padding:30px 30px 30px 42px;
    color:#fff;
    font-size:11px;
    text-decoration:none;
    background:#5189ca url("../images/bg_pagetop.gif") 30px 50% no-repeat;
    -webkit-border-radius:10px;
    -moz-border-radius:10px;
    border-radius:10px;
}
/*#pageTop a:hover {
    background:#8cb1dc url("../images/bg_pagetop.gif") 30px 50% no-repeat;
}*/


/* ---------- MOBILE ---------- */
@media (max-width: 768px) {

    #pageTop {
        right: 10px;
        bottom: 10px;
    }

    #pageTop a {
        padding: 12px 12px 12px 30px;
        font-size: 10px;
        border-radius: 8px;
        background-size: 14px; /* smaller icon */
    }
}

/* ---------- SMALL PHONES ---------- */
@media (max-width: 480px) {

    #pageTop a {
        padding: 10px;
        font-size: 0; /* hide text, icon only */
        width: 40px;
        height: 40px;
        background-position: center;
        background-size: 16px;
    }
}







#hidden-keyword{
    display: none;
}





   /* Modal fade animation */
.modal.fade {
  display: none;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.modal.show {
  display: block;
  opacity: 1;
}

/* Fullscreen fixed overlay */
.modal {
  position: fixed;
  z-index: 1050;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.5);
  overflow: hidden;
}

/* Modal Dialog (centered and responsive) */
.modal-dialog {
  margin: auto;
  position: relative;
  width: auto;
  max-width: 90%;
  height: 90%;
  pointer-events: none;
  display: flex;
  align-items: center;
  justify-content: center;
}

.modal-dialog-centered {
  align-items: center;
}

/* Extra large width option */
.modal-xl {
  max-width: 1000px;
}

/* Modal content */
.modal-content {
  background-color: #fff;
  border-radius: 6px;
  overflow: hidden;
  width: 100%;
  height: 100%;
  pointer-events: auto;
  display: flex;
  flex-direction: column;
  box-shadow: 0 0 20px rgba(0,0,0,0.2);
}

/* Modal header */
.modal-header {
  padding: 1rem;
  background: #f7f7f7;
  border-bottom: 1px solid #dee2e6;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

/* Modal title */
.modal-title {
  margin: 0;
  font-size: 1.25rem;
}

/* Close button */
.btn-close {
  background: none;
  border: none;
  font-size: 1.5rem;
  line-height: 1;
  cursor: pointer;
}

/* Modal body */
.modal-body {
  padding: 0;
  flex: 1 1 auto;
  position: relative;
}

/* PDF iframe styling */
#pdfViewer {
  width: 100%;
  height: 100%;
  border: none;
}

.email-link {
  color: blue;
  text-decoration: none; /* optional: removes underline */
}

.email-link:hover {
  text-decoration: underline; /* optional: add underline on hover */
}

/* ==================================================================
   ALKEW HOMEPAGE REFRESH
   Full-screen hero + responsive navigation + cleaned home sections
   ================================================================== */
html { scroll-behavior: smooth; }
body { font-family: "Inter", "Aptos", "Segoe UI", Arial, sans-serif; color:#14233b; background:#fff; }
#container { width:100%; margin:0; }

.hero {
  position:relative;
  width:100%;
  height:100vh;
  min-height:560px;
  overflow:hidden;
  color:#fff;
  isolation:isolate;
}
.hero-slide {
  position:absolute;
  inset:0;
  z-index:-3;
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
  opacity:0;
  transform:scale(1.02);
  transition:opacity 900ms ease, transform 6s ease;
}
.hero-slide.active { opacity:1; transform:scale(1); }
.hero-overlay {
  position:absolute;
  inset:0;
  z-index:-2;
  background:linear-gradient(90deg, rgba(3,25,45,.78) 0%, rgba(3,25,45,.40) 43%, rgba(3,25,45,.14) 100%), linear-gradient(0deg, rgba(0,0,0,.30), transparent 40%);
}
.hero-top {
  position:absolute;
  top:0; left:0; right:0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:28px clamp(24px, 5vw, 72px);
  z-index:5;
}
.hero-logo {
  color:#fff;
  font-size:clamp(36px, 3.4vw, 54px);
  line-height:.9;
  font-weight:900;
  font-style:italic;
  letter-spacing:-2.2px;
  text-decoration:none;
  text-shadow:0 2px 18px rgba(0,0,0,.22);
}
.hero-logo:after {
  content:"";
  display:block;
  width:65%;
  height:3px;
  margin-top:10px;
  background:#5a98dc;
}
#menu { margin:0; }
#menu ul { display:flex; gap:clamp(18px,3vw,44px); list-style:none; margin:0; padding:0; }
#menu li { margin:0; padding:0; }
#menu li a { color:#fff; font-size:clamp(15px,1.15vw,18px); font-weight:700; letter-spacing:.5px; text-decoration:none; }
#menu li a:hover { color:#fff; border-bottom:2px solid #fff; }
.hero-copy {
  position:absolute;
  left:clamp(28px,8vw,130px);
  top:50%;
  transform:translateY(-40%);
  max-width:min(680px,76vw);
  z-index:3;
}
.hero-kicker { display:block; font-size:clamp(14px,1vw,16px); font-weight:600; letter-spacing:.2px; margin-bottom:12px; }
.hero-copy h1 { margin:0; color:#fff; font-size:clamp(34px,3.25vw,48px); line-height:1.12; letter-spacing:-.45px; font-weight:650; }
.hero-copy p { margin:16px 0 0; max-width:610px; font-size:clamp(14px,1vw,16px); line-height:1.6; letter-spacing:.1px; color:rgba(255,255,255,.92); }
.hero-arrow {
  position:absolute; top:50%; transform:translateY(-50%); z-index:6;
  border:0; background:transparent; color:#fff; cursor:pointer;
  font-size:clamp(38px,4vw,64px); line-height:1; padding:20px;
  opacity:.85; text-shadow:0 2px 10px rgba(0,0,0,.55);
}
.hero-arrow:hover { opacity:1; }
.hero-prev { left:12px; }
.hero-next { right:12px; }
.hero-dots { position:absolute; bottom:58px; left:50%; transform:translateX(-50%); display:flex; gap:9px; z-index:6; }
.hero-dots button { width:12px; height:12px; border-radius:50%; border:1px solid #fff; background:transparent; padding:0; cursor:pointer; box-shadow:0 1px 5px rgba(0,0,0,.4); }
.hero-dots button.active { background:#fff; }
.hero-down { position:absolute; bottom:17px; left:50%; transform:translateX(-50%); width:30px; height:32px; z-index:6; display:flex; flex-direction:column; align-items:center; text-decoration:none; }
.hero-down span { width:13px; height:13px; border-right:2px solid #fff; border-bottom:2px solid #fff; transform:rotate(45deg); margin-top:-5px; opacity:.9; }
.hero-down span + span { margin-top:-10px; opacity:.45; }

#menu-toggle { display:none; }
#grobalnavi {
  position:sticky; top:0; z-index:50;
  width:100%; margin:0;
  background:#5189ca;
  box-shadow:0 2px 12px rgba(0,0,0,.12);
}
#grobalnavi > ul { float:none; display:flex; justify-content:center; flex-wrap:wrap; width:100%; margin:0; padding:0; }
#grobalnavi > ul > li { display:flex; align-items:stretch; width:auto; height:auto; min-height:60px; background:#5189ca; text-align:center; flex:0 1 auto; }
#grobalnavi > ul > li > a { display:flex; align-items:center; justify-content:center; width:100%; min-height:60px; padding:10px 22px; box-sizing:border-box; color:#fff; font-size:clamp(13px,1.05vw,16px); line-height:1.15; font-weight:600; letter-spacing:.2px; text-decoration:none; white-space:nowrap; }
#grobalnavi > ul > li:hover > a, #grobalnavi > ul > li.active > a { background:#467db9; color:#fff; }
#grobalnavi .sub ul { top:60px; width:100%; background:#5189ca; }
#grobalnavi .sub ul li { width:100%; }
#grobalnavi .sub ul li a { background:#6b9bd2; color:#fff; font-size:13px; padding:9px 12px; }

#main-content { width:100%; }
.about-banner { position:relative; min-height:620px; overflow:hidden; display:flex; align-items:center; }
.about-banner-image { position:absolute; inset:0; background:url('../images/env-sustainability.png') center/cover no-repeat; transform:scale(1.01); }
.about-banner-overlay { position:absolute; inset:0; background:linear-gradient(90deg, rgba(3,40,64,.82), rgba(3,40,64,.36) 55%, rgba(3,40,64,.12)); }
.about-banner-content { position:relative; z-index:2; width:min(680px,88%); margin-left:clamp(30px,8vw,130px); color:#fff; padding:80px 0; }
.section-eyebrow { margin:0 0 12px; color:#a8c84f; font-size:16px; font-weight:700; letter-spacing:2px; }
.about-banner-content h2 { padding:0; margin:0; text-align:left; color:#fff; border:0; font-size:clamp(34px,4vw,60px); line-height:1.1; font-weight:700; }
.about-banner-content > p:not(.section-eyebrow) { font-size:clamp(16px,1.5vw,21px); line-height:1.65; margin:24px 0 30px; color:rgba(255,255,255,.93); }
.outline-button { display:inline-flex; align-items:center; gap:24px; padding:12px 18px; border:1px solid rgba(255,255,255,.85); color:#fff; text-decoration:none; font-weight:600; }
.outline-button:hover { background:#fff; color:#173b5c; text-decoration:none; }

.home-sections { width:min(1390px, calc(100% - 80px)); margin:0 auto; padding:58px 0 90px; }
.information { margin-bottom:70px; }
.section-title { clear:both; margin:0 0 12px; padding:0 0 10px; color:#8f7b00; border-bottom:1px dotted #b5a33b; font-size:16px; font-weight:400; line-height:1.2; text-align:left; }
.project-list { width:100%; }
.project-row { display:grid; grid-template-columns:80px 175px minmax(0,1fr); gap:0; align-items:center; min-height:54px; border-bottom:1px solid #ddd; font-size:12px; letter-spacing:1px; }
.project-row a, .service-list a { color:#111f35; text-decoration:none; }
.project-row a:hover, .service-list a:hover { color:#8f7b00; text-decoration:none; }
.project-year, .project-country { font-weight:600; }
.project-name { min-width:0; }
.service-list { list-style:none; margin:0; padding:0; }
.service-list li { display:grid; grid-template-columns:38px minmax(0,1fr); align-items:center; min-height:54px; margin:0; border-bottom:1px solid #ddd; font-size:12px; letter-spacing:1px; }
.service-number { font-weight:600; }
.read-more { display:flex; justify-content:flex-end; margin-top:26px; }
.read-more a { color:#111f35; font-size:9px; font-weight:600; text-decoration:none; }
.read-more a span { display:inline-block; margin-left:8px; color:#e59b00; font-size:10px; transition:transform .2s ease; }
.read-more a:hover span { transform:translateX(4px); }

#footer { margin:0; padding:34px clamp(24px,6vw,90px); background:#0d2a43; color:#fff; }
#footMenu ul { display:flex; flex-wrap:wrap; gap:26px; list-style:none; margin:0 0 18px; padding:0; }
#footMenu li { margin:0; padding:0; }
#footMenu a { color:#fff; text-decoration:none; }
#footMenu a:hover { text-decoration:underline; }
.copyright { font-size:13px; color:rgba(255,255,255,.72); }

@media (max-width: 900px) {
  .hero-top { padding:22px 24px; }
  .hero-copy { left:8vw; max-width:82vw; }
  .project-row { grid-template-columns:70px 130px minmax(0,1fr); }
  .home-sections { width:min(94%, 1390px); }
}
@media (max-width: 700px) {
  .hero { min-height:620px; }
  .hero-top { align-items:flex-start; }
  .hero-logo { font-size:42px; }
  #menu ul { gap:14px; }
  #menu li a { font-size:13px; }
  .hero-copy { top:52%; left:7%; transform:translateY(-35%); }
  .hero-copy h1 { font-size:clamp(30px,7vw,44px); }
  .hero-copy p { font-size:15px; }
  .hero-kicker { font-size:13px; }
  .hero-arrow { padding:10px; font-size:42px; }
  #grobalnavi > ul > li, #grobalnavi > ul > li > a { min-height:54px; }
  .about-banner { min-height:540px; }
  .about-banner-content { margin-left:7%; width:86%; }
  .project-row { grid-template-columns:70px 1fr; padding:9px 0; align-items:start; }
  .project-name { grid-column:1 / -1; padding-top:5px; }
  .service-list li { min-height:58px; }
}
@media (max-width: 480px) {
  body { font-size:14px; }
  .hero { min-height:560px; }
  .hero-top { padding:18px 16px; }
  .hero-logo { font-size:36px; }
  #menu ul { gap:9px; }
  #menu li a { font-size:11px; }
  .hero-copy { left:6%; max-width:88%; }
  .hero-copy h1 { font-size:30px; }
  .hero-copy p { font-size:14px; }
  .hero-dots { bottom:52px; }
  .hero-down { bottom:10px; }
  #grobalnavi > ul > li > a { font-size:13px; }
  .home-sections { width:90%; padding-top:45px; }
  .project-row { font-size:12px; }
  .service-list li { font-size:12px; }
  #footMenu ul { flex-direction:column; gap:10px; }
}
body { margin:0; max-width:none; }
.anchor-target { position:relative; top:-80px; display:block; }
@media (max-width: 600px) { body { margin:0; max-width:none; } }

/* ========SHARED MENU (same as main page) ======== */
#grobalnavi > ul > li.active { display:flex; align-items:stretch; height:auto; min-height:60px; }
#grobalnavi > ul > li.active > a,
#grobalnavi > ul > li:hover > a {
    display:flex; align-items:center; justify-content:center;
    width:100%; min-height:60px; padding:10px 22px; box-sizing:border-box;
    font-size:clamp(13px,1.05vw,16px); line-height:1.15; font-weight:600; letter-spacing:.2px;
    white-space:nowrap; text-decoration:none;
}
#grobalnavi > ul > li.active > a { background:#5189ca; color:#fff; }
#grobalnavi > ul > li.active:hover > a { background:#467db9; }
#grobalnavi .sub ul li a { display:block; text-align:center; }
/* utility links (Contact Us / Careers) on pages with a white header */
#header #menu li a { color:#111; font-size:13px; font-weight:400; letter-spacing:1px; }
#header #menu li a:hover { color:#666; border-bottom:0; text-decoration:underline; }
