/*----------------------------------------------------------------------------
******************************************************************************
Layout
******************************************************************************
----------------------------------------------------------------------------*/
/* ==== Base === */
/* body {
	 background: url(../images/body_bg.jpg); 
} */
.layout {
	width: 1400px;
	margin: 0 auto;
	overflow: hidden;
        /*background-color: rgb(255, 255, 255) !important;*/
}
p { line-height:1.7em; }

/* ==== Backgraund === */
#wrap {
         /* background-color: #f5f5f5 !important; */
	/*background: url(../images/wrap_bg.jpg) repeat-x;*/
}
/* #i_wrap {
	background: url(../images/i_wrap_bg.jpg) repeat-x;
} */
/* ==== Header === */
#hd {
	height: 100px;
	position: relative;
	/* background: url(../images/hd_bg.jpg) no-repeat; */
       
} 
#hd_bnr {
	position: absolute;
	top:8px;
	right:0;
}

#hd_mem {
	position: absolute;
	bottom:15px;
	right:0;
}
/* ==== Navigation === */
#nav {
	margin: 0 auto;
	height: 50px;
        background:#0C1559;
	/* background: url(../images/nav_bg.jpg) center center no-repeat; */
	overflow: hidden;
}
/* strip */
.tab-strip{
  display:flex;
  background:#0C1559;
/*  border:1px solid #ddd; */
  border-bottom:0;
  border-radius:6px 6px 0 0; 
}


/* smooth change */
.tab-strip .tab{
  transition: background-color .15s ease, color .15s ease;
}
/* hover/focus on NON-active tabs */
.tab-strip .tab:not(.is-active):hover,
.tab-strip .tab:not(.is-active):focus-visible{
  background-color: #F5F5F5; /* hsl(0, 0%, 10%); /* very dark gray */
  color: #0C1559; /*#fff;                       /* keep text readable */
  text-decoration: none;             /* optional: remove underline */
}

/* keep the active tab look when hovered */
.tab-strip .tab.is-active:hover,
.tab-strip .tab.is-active:focus-visible{
  background: #fff;
  color: inherit;
}
/* map body id -> active tab */
#alias-index      .tab[data-alias="index"],
#alias-theme      .tab[data-alias="theme"],
#alias-member     .tab[data-alias="member"],
#alias-activity   .tab[data-alias="activity"],
#alias-achievement .tab[data-alias="achievement"],
#alias-access     .tab[data-alias="access"],
#alias-link       .tab[data-alias="link"]{
  background:#fff; color:#222; position:relative; z-index:2;
  border-left:1px solid #ddd; border-right:1px solid #ddd; border-top:1px solid #ddd;
  box-shadow:0 1px 0 #fff inset;
}

.tab-strip .tab{
  font-size: 1rem;        /* was ~1.4rem in my example */
  font-weight: 600;       /* was 800; lighter looks nicer when smaller */
  padding: 0.7rem 0.9rem; /* reduce vertical + horizontal space */
  line-height: 1.2;       /* tighter line height */
  color:#fff;
}
@media (max-width: 720px){
  .tab-strip .tab{
    font-size: 0.95rem;
    padding: 0.6rem 0.7rem;
  }
}
/* tabs */
.tab{
  flex:1 1 0;
  text-align:center;
  padding:1.1rem 1.25rem;
  font-weight:800;
  font-size:1.4rem;
  text-decoration:none;
  color:#222;
  border-right:1px solid #ddd;
}
.tab:last-child{ border-right:0; }

/* content panel below */
.tab-panel{
  background: *#fff;
  border:1px solid #ddd;
  border-top:0;
  border-radius:0 6px 6px 6px;
  padding:1.25rem;
}

/* active tab (class added by the script below) */
.tab.is-active{
  background:#fff;
  position:relative;
  z-index:2;
  border-left:1px solid #ddd;
  border-right:1px solid #ddd;
  border-top:1px solid #ddd;
  box-shadow:0 1px 0 #fff inset;
}
/*.nav_en {
	background: url(../en/images/nav_bg.jpg) center center no-repeat!important;
}*/
/*#nav ul {
	width: 1500px;
	margin: 0 auto;
}*/
#nav ul{
  width: 100%;
  max-width: 1300px;     /* or 1500px if you really want */
  margin: 0 auto;
  padding: 0;
}
@media (max-width: 768px){
  #nav ul{
    overflow-x: auto;
    white-space: nowrap;
  }
  #nav ul li{
    flex: 0 0 auto;
  }
}
#nav li {
	float: left;
}
#nav li img{
	-webkit-transition: All 0.5s ease;
	-moz-transition: All 0.5s ease;
	-o-transition: All 0.5s ease;
	-ms-transition: All 0.5s ease;
	transition: All 0.5s ease;
}
#nav li img:hover {
	opacity:0;
}

#nav li span img {
	opacity:0;
}

/* ==== Content === */
#con {
}
#sidenav {
	width: 220px;
	float: left;
	margin-top:20px;
	padding-top:40px;
	background: url(../images/sidenav_bg2.png) top center no-repeat;
        background-size: 160px auto;   /* scales the bg to new width */
}
#sidenav ul {
	padding: 0;
}
#sidenav li {
}
#sidenav li a {
	width: 220px;
	box-sizing: border-box;
	height: auto;
	padding: 12px 5px 9px 23px;
	display: block;
	text-decoration: none;
	background: url(../images/sidenav_icon.png) no-repeat 6px 16px;
	font-size: 12px;
	color: #333;
	border-bottom: dotted 1px #ccc;
}
#main {
	/*width: 720px;*/
        width: 1160px;
	float: right;
	margin-top: 20px;
        background-color: rgb(255, 255, 255) !important;
}
#i_main {
	/*width: 960px;*/
         width: 1400px;
}
/* ol,ul */
#main ol, #main ul {
	padding: 5px 0px 5px 25px;
}
#main ul {
	list-style-type: disc;
}
#main ol li, #main ul li {
	padding: 5px 0px;
}
/* table */
#main table {
	margin: 10px 0px;
}
#main table th, #main table td {
	padding: 5px;
}
/* img */
#main a img {
	display: inline-block;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-property: transform;
	transition-property: transform;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}
#main a img:hover, .shrink:focus, .shrink:active {
	-webkit-transform: scale(0.9);
	transform: scale(0.9);
}
/* ==== Footer === */
#ft {
	/*height:1600px;
	margin-top: 30px;*/
	padding: 82px 0 30px;
	text-align: center;
        /*position: relative;*/
        margin-top: 6rem;
        width: 100%;
        padding: 30px 5%; /* Reduced padding */
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
	color:#fff;
        background-color: #0C1559;
	/*background: url(../images/ft_bg.jpg) left bottom repeat-x;*/
}
/*----------------------------------------------------------------------------
******************************************************************************
Head
******************************************************************************
----------------------------------------------------------------------------*/
h1, h2, h3, h4, h5, h6 {
}
h1 {
	position: absolute;
	top: 15px;
	left: 0px;
}

h3 {
	font-size: 1.4em;
	/*font-weight: normal;*/
	height: 45px;
	margin: 0.8em 0 .4em 0;
	padding: .7em 0 0 .7em;
        background: #eeeeee;
        font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
        color: #0C1559;
	/*background: url(../images/h3_bg.jpg) left center no-repeat;*/
}
#main h3:first-child {
	margin-top: 0;
}
#i_main h3 {
	background: url(../images/h3_bg_i2.png) left center no-repeat;
        color: #0C1559;
}
#i_main h3.h3_new {
	font-size: 1.3em;
	height: 35px;
	margin: 20px 0 0;
	padding: .4em 0 0 1em;
	background: url(../images/h3_bg_new2.png) left center no-repeat;
	color: #fff;
	text-shadow: 1px 1px 1px rgba(0,0,0,0.7);
}
#i_main h3.h3_act {
	font-size: 1.3em;
	height: 35px;
	margin: 25px 0 0;
	padding: .4em 0 0 1em;
	background: url(../images/h3_bg_act.jpg) left center no-repeat;
	color: #fff;
	text-shadow: 1px 1px 1px rgba(0,0,0,0.7);
}
h4 {
	font-size: 1.3em;
	padding: .3em 0 .1em 35px;
	margin: 1em 0 1em 0;
	background: url(../images/h4_bg.jpg) left center no-repeat;
	color:#305FAB;
	border-bottom:1px solid #305FAB;
}h5 {
	font-size: 1.1em;
	margin: 10px 0;
}
h1.img, h2.img, h3.img, h4.img, h5.img, h6.img {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
}
/*----------------------------------------------------------------------------
******************************************************************************
Original
******************************************************************************
----------------------------------------------------------------------------*/
/* ==== Index === */
#i_img {
	/*width: 1060px;*/
        /*width: 1200px;*/
        width:100%;
        background-size: cover;
	height:320px;
	margin: 0 auto;
	overflow: hidden;
	/*background:url(../images/i_img_bg.jpg) no-repeat;*/
}
#i_img div {
	/*width:960px;*/
        /*width: 1200px;*/
        width:100%;
        background-size: cover;
	margin: 0 auto;
	-webkit-box-shadow: 0px 10px 10px rgba(51,51,51,0.2);
	-moz-box-shadow: 0px 10px 10px rgba(51,51,51,0.2);
	-ms-box-shadow: 0px 10px 10px rgba(51,51,51,0.2);
	box-shadow: 0px 10px 10px rgba(51,51,51,0.2);
	filter: progid:DXImageTransform.Microsoft.Shadow(color=#333333, direction=180, strength=10);
	-ms-filter: "progid:DXImageTransform.Microsoft.Shadow(color=#333333, direction=180, strength=10)";
	zoom: 1;
}
#i_news {
	height:320px;
	overflow:auto;
}
#i_news table {
	width:100%;
}
#i_news table td {
	vertical-align: top;
	font-size: .9em;
	padding: 50px;
	border-bottom: 1px dotted #ccc;
}
#i_news table td.date {
	width: 12.5em;
	background: url(../images/common/news_icon.gif) 5px 18px no-repeat;
	padding-left: 30px;
}
#i_bnr {
	margin-top: 20px;
	width: 220px;
	float: right;
	margin-left: 20px;
}
/*----pagetop----*/
#page-top {
	position: fixed;
	bottom: 15px;
	right: 15px;
	font-size: 77%;
}
#page-top a {
	background: #7CAED8;
	text-decoration: none;
	color: #fff;
	width: 90px;
	padding: 38px 0 0 0;
	text-align: center;
	display: block;
	border-radius: 50px;
	opacity: 0.7;
	height: 90px;
	border: 1px solid #ddd;
}
#page-top a:hover {
	text-decoration: none;
}
/*===========Activites====================*/

.padd-15{
    padding-left: 15px;
    padding-right: 15px;
}
.row{
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right:-15px;
    margin-right:15px;
    position: relative;
}
.container{
    max-width: 1100px;
    margin:auto;
}
.Activites {
    background-color: #eee;
}

.Activites .container{
    padding-bottom:40px;
}
.Activites .container .row{
    padding:1rem 2%; 
}
.Activites .container .section-title{
    width:60%;
    text-align: center;
    margin:auto;
}
.Activites .container .row .section-title{
    padding:2rem 9%; 
}
.Activites .container .section-title h2{
    font-size: 40px;
    /*color: #8B0000;*/
    text-transform:none;
    margin-top: 15px;
    margin-bottom: 12px;
    line-height: 70px;
    letter-spacing: 1px;
    /*color: #ffffff;
    font-family: 'Montserrat', sans-serif;*/
    font-weight: 800;
}

.Activites .Activites-item{
    flex: 0 0 33.33%;
    max-width: 33.33%;
    margin-bottom: 30px;
    display: grid;
}

.Activites .Activites-item-inner{
    display: flex;
    flex-direction: column;
    align-items: center;
    overflow: hidden;
}
.Activites .Activites-item-inner .Activites-img{
    width: 100%;
    height: 200px; /* Adjust the height as needed */
    position: relative; /* Ensures child elements with absolute positioning are placed correctly */
    overflow: hidden;
}
.Activites .Activites-item-inner .Activites-img img{
   width: 100%;
   height: 100%;
   display: block;
   object-fit: cover;
   -webkit-transition: all 0.5s ease;
   transition: all 0.5s ease;
   
}
.Activites .Activites-item-inner:hover .Activites-img img{
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
  
}
.Activites .Activites-item-inner .Activites-img .Activites-date{
    background-color: #eee;
    position: absolute;
    padding: 4px 10px;
    border-radius: 5px;
    color: #8B0000;
    font-weight: 600;
    font-size: 14px;
    left: 15px;
    bottom: 15px;
}
.Activites  .Activites-item-inner{
    border-radius: 10px;
    overflow: hidden;
    border:1px solid #d4d4e3;
}
.Activites .Activites-item-inner .Activites-info{
    flex-grow: 1; /* Makes sure it expands fully */
    width: 100%; /* Ensures it stretches to the full card width */
    padding: 30px 15px;
    background-color: #fdf9ff;
    box-sizing: border-box; /* Ensures padding doesn't reduce width */
}
.Activites .Activites-item-inner .Activites-info .Activites-title{
    font-size: 18px;
    font-weight: 700;
    color: #302e4d;
    text-transform: capitalize;
    margin-bottom: 10px;
}
.Activites .Activites-item-inner .Activites-info .Activites-description{
    font-size: 16px;
    line-height: 25px;
    color: #504e70;
    font-weight: 400;
    margin-bottom: 15px;
}
.Activites .Activites-item-inner .Activites-info .Activites-tags{
    font-size: 16px;
    line-height: 25px;
    color: #504e70;
    font-weight: 400;
    font-size: 14px;
    text-transform: capitalize;
}
/*Activites End*/
.photo-grid{
  display: grid;
  grid-template-columns: repeat(12, 1fr); /* 12-col grid */
  gap: 12px;
}

.photo-grid img{
  width: 100%;
  height: 220px;            /* crop to a consistent height */
  object-fit: cover;        /* fills without distortion */
  border-radius: 6px;       /* optional */
  display: block;
}

/* first three each take 4 columns = 3 across */
.photo-grid img:nth-child(-n+3){ grid-column: span 4; }

/* last one full width and taller */
.photo-grid img.wide{
  grid-column: 1 / -1;      /* span all columns */
  height: 420px;            /* make the big one tall */
}

/* mobile: stack everything */
@media (max-width: 768px){
  .photo-grid{ grid-template-columns: 1fr; }
  .photo-grid img{ height: 200px; }
  .photo-grid img.wide{ height: 260px; }
}



/* 2-up grid */
.news-grid{
  display:grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 32px;                       /* space between cards and rows */
}

/* each card spans half the width on desktop */
.news-card{ grid-column: span 6; }

/* image at top with consistent aspect ratio */
.news-card .thumb{
  display:block; border-radius:8px; overflow:hidden; margin-bottom:14px;
}
.news-card .thumb img{
  width:100%; aspect-ratio: 16 / 9; object-fit:cover; display:block;
  transition: transform .3s ease;
}
.news-card .thumb:hover img{ transform: scale(1.03); }

/* meta line */
.news-card .meta{
  font-size:.85rem; text-transform:uppercase; color:#7a7a7a; margin-bottom:6px;
}
.news-card .meta .cats{ color:#666; margin-right:.5rem; }
.news-card .meta time{ color:#aaa; }

/* title + excerpt */
.news-card .title{ font-size:1.6rem; line-height:1.25; margin:6px 0 8px; font-weight:700; }
.news-card .title a{ color:#1b1b1b; text-decoration:none; }
.news-card .title a:hover{ text-decoration:underline; }
.news-card .excerpt{ color:#555; line-height:1.6; margin:0; }

/* optional: limit excerpt to 3 lines */
.news-card .excerpt{
  display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden;
}

/* responsive: stack to one column */
@media (max-width: 900px){
  .news-card{ grid-column: span 12; }
  .news-grid{ gap: 24px; }
}
/*======News====*/
.img-row{ display:flex; gap:12px; }
.img-row img{ width:33.333%; aspect-ratio:16/9; object-fit:cover; display:block; border-radius:6px; }
.img-row-title{ text-align:center; font:700 1.1rem/1.3 Arial, "Helvetica Neue", Helvetica, sans-serif; margin:8px 0 16px; }
@media (max-width:768px){ .img-row{ flex-direction:column; } .img-row img{ width:100%; } }
/*===============*/
.double-photos{
  display:grid;
  grid-template-columns: repeat(2, 1fr);
  gap:12px;
  margin:16px 0;
}
.double-photos img{
  width:100%;
  aspect-ratio:16/9;
  object-fit:cover;
  display:block;
  border-radius:6px;
}
.double-photos figcaption{
  grid-column: 1 / -1;   /* span both columns */
  text-align:center;
  font:700 1.1rem/1.3 Arial, "Helvetica Neue", Helvetica, sans-serif;
  margin-top:8px;
}
@media (max-width:768px){
  .double-photos{ grid-template-columns: 1fr; }
}
/*==================================*/

.pro-links a{
    height: 35px;
    width: 35px;
    display: inline-block;
    line-height: 35px;
    /*color: #ffffff;*/
    border-radius: 50%;
    text-decoration: none;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.pro-links a:hover{
    -webkit-transition: scale(1.1);
    transform: scale(1.1);
}
.pro-links {
    margin-top: 25px;
    display: flex;
    justify-content:center; /* Centers horizontally */
    align-items: center; /* Centers vertically (if needed) */
    gap: 10px; /* Adds spacing between icons */
    padding-right: 40px; /* Moves it slightly to the right */
}

.events-section {
   /*background-color: #eee;*/
   background-color: white;
   margin: 0 auto;        /* centers the section */
      /*width: 90%;
   max-width: 900px;*/
   padding: 40px 30px;
      /*background: rgba(255, 255, 255, 0.05);*/
   border-radius: 12px;
   align-items: center;
   justify-content: center;
      /*min-height: 100vh;*/
}
.section-title {
  position: relative;
  text-align: center;
  font-size: 26px;
  font-weight: 700;
  color: #1f2c44;
  margin: 40px 0;
  margin-top: 0;
}

.section-title::before,
.section-title::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 35%;
  height: 2px;
  background: #dcdcdc;
}

.section-title::before {
  left: 0;
}

.section-title::after {
  right: 0;
}

.events-section h2 {
   text-align: center;
   font-size: 24px;
   letter-spacing: 1px;
   color: #0b3d78;/* #ffffff;*/
   margin-bottom: 30px;
}
.events-list {
   display: flex;
   flex-direction: column;
   gap: 16px;
}
.event-card {
   display: grid;
   grid-template-columns: 110px 1fr;
   background: rgba(255, 255, 255, 0.08);
   border: 1px solid  #0b3d78; /*white;/* rgba(255, 255, 255, 0.5);*/
   border-radius: 4px;
   overflow: hidden;
   backdrop-filter: blur(4px);
}
.event-card {
  transition: all 0.25s ease;
  cursor: pointer;
}

.event-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.15);
  background: #ffffff;
  border-color: rgba(0, 0, 0, 0.1);
}


.event-date {
   background: #0b3d78;
   color: #ffffff;
   display: flex;
   flex-direction: column;
   align-items: center;
   justify-content: center;
   padding: 18px 10px;
}
.event-date .day {
   font-size: 30px;
   font-weight: 700;
   line-height: 1;
   margin-bottom: 4px;
}
.event-date .month {
   font-size: 12px;
   letter-spacing: 2px;
   text-transform: uppercase;
}
.event-content {
   display: flex;
   flex-direction: column;
   justify-content: center;
   padding: 16px 22px;
   color: #0b3d78;/* #ffffff;*/
}

.event-title {
      font-size: 18px;
      font-weight: 600;
      margin-bottom: 12px;
}

.event-meta {
      display: flex;
      flex-wrap: wrap;
      gap: 16px;
      font-size: 13px;
      opacity: 0.95;
}

.event-meta-item {
      display: flex;
      align-items: center;
      gap: 8px;
}

.event-meta-item .icon {
      font-size: 16px;
      opacity: 0.9;
}

@media (max-width: 600px) {
      .event-card {
        grid-template-columns: 80px 1fr;
}

.event-date .day {
    font-size: 24px;
}

.event-title {
      font-size: 16px;
   }
}

/*==============Announcement====================*/
.stories-section {
      margin-Top: 24px;
      width: 100%;
      max-width: 1400px;
      /*max-width: 1400px;*/
    }

    /* Header row: title + button */
    .stories-header {
      display: flex;
      align-items: center;
      justify-content: space-between;
      margin-bottom: 24px;
    }

    .stories-title {
      font-size: 24px;
      font-weight: 700;
      color: #212121;
    }

    .stories-cta {
      padding: 10px 18px;
      border-radius: 999px;
      border: 1px solid rgba(0, 0, 0, 0.08);
      background: #fff7ee;
      font-size: 14px;
      font-weight: 500;
      cursor: pointer;
      transition: all 0.2s ease;
    }

    .stories-cta:hover {
      background: #ffe3bf;
      transform: translateY(-1px);
    }

    /* Layout: left feature + right list */
    .stories-grid {
      display: grid;
      grid-template-columns: 1.6fr 1.2fr;
      gap: 24px;
    }

    /* Shared card styles */
    .card {
      background: #fff;
      border-radius: 22px;
      box-shadow: 0 18px 35px rgba(0, 0, 0, 0.08);
      overflow: hidden;
      display: flex;
      flex-direction: column;
      transition: transform 0.2s ease, box-shadow 0.2s ease;
    }

    .card:hover {
      transform: translateY(-4px);
      box-shadow: 0 24px 45px rgba(0, 0, 0, 0.12);
    }

    .card-image {
      width: 100%;
      height: 260px;
      object-fit: cover;
    }

    .card-body {
      padding: 18px 20px 20px;
    }

    .card-tag {
      font-size: 13px;
      font-weight: 500;
      color: #a06c3b;
      margin-bottom: 6px;
    }

    .card-title {
      font-size: 18px;
      font-weight: 600;
      color: #222;
      margin-bottom: 8px;
    }

    .card-meta {
      font-size: 12px;
      color: #7b7b7b;
      margin-bottom: 10px;
    }

    .card-excerpt {
      font-size: 13px;
      color: #555;
      line-height: 1.6;
    }

    /* Right-side small stories */
    .story-list {
      display: flex;
      flex-direction: column;
      gap: 16px;
    }

    .story-item {
      display: grid;
      grid-template-columns: 110px 1fr;
      gap: 14px;
      padding: 10px;
      border-radius: 18px;
      background: #fff;
      box-shadow: 0 10px 24px rgba(0, 0, 0, 0.06);
      cursor: pointer;
      transition: transform 0.2s ease, box-shadow 0.2s ease;
    }

    .story-item:hover {
      transform: translateY(-3px);
      box-shadow: 0 18px 35px rgba(0, 0, 0, 0.12);
    }

    .story-thumb {
      width: 100%;
      height: 90px;
      border-radius: 16px;
      object-fit: cover;
    }

    .story-text {
      display: flex;
      flex-direction: column;
      justify-content: center;
    }

    .story-tag {
      font-size: 11px;
      font-weight: 500;
      color: #a06c3b;
      margin-bottom: 4px;
    }

    .story-title {
      font-size: 14px;
      font-weight: 600;
      color: #222;
      margin-bottom: 4px;
    }

    .story-meta {
      font-size: 11px;
      color: #7b7b7b;
    }

    /* Responsive */
    @media (max-width: 900px) {
      .stories-grid {
        grid-template-columns: 1fr;
      }

      .card-image {
        height: 220px;
      }

      .stories-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
      }
    }

    @media (max-width: 600px) {
      .story-item {
        grid-template-columns: 90px 1fr;
      }

      .story-thumb {
        height: 80px;
      }
    }
/*==============Members====================*/
 /* --- Person blocks --- */
.person-title {
  font-size: 18px;
  margin: 12px 0 4px;
  font-family: "Calibri Light", Calibri, "Segoe UI", Arial, sans-serif;
  font-weight: 300;
  font-size: 18px;
}
    .person {
      margin-bottom: 26px;
    }

    .person p {
      margin: 2px 0;
    }

    /* --- Links row --- */
    .link-row {
      margin-top: 4px;
      font-size: 14px;
    }

    a {
      color: #1a73e8;
      text-decoration: underline;
    }

    a:hover {
      text-decoration: none;
    }

    /* Small role/position line in alumni section */
    .role {
      margin-top: 2px;
      font-size: 14px;
    }

    .blockquote-line {
      margin-top: 2px;
      font-size: 14px;
    }
/*==============visiting professor====================*/
.alumni-section {
      max-width: 650px;
    }

    .alumni-title {
      font-size: 22px;
      letter-spacing: 1px;
      font-weight: 700;
      text-transform: uppercase;
      margin-bottom: 6px;
    }

    .alumni-line {
      height: 2px;
      background: #cccccc;
      margin-bottom: 18px;
    }

    .alumni-item {
      display: flex;
      gap: 16px;
      margin-bottom: 20px;
    }

    .alumni-item img {
      width: 160px;
      height: 110px;
      object-fit: cover;
      display: block;
      border-radius: 999px;
    }

    .alumni-content {
      flex: 1;
    }

    .alumni-heading {
      font-size: 18px;
      font-weight: 700;
      margin-bottom: 4px;
    }

    .alumni-text {
      font-size: 14px;
      color: #c0392b; /* red text similar to example */
      margin-bottom: 10px;
      line-height: 1.5;
    }

    .read-more {
      font-size: 11px;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.5px;
      cursor: pointer;
    }

    .read-more span {
      margin-left: 4px;
    }

    .read-more:hover {
      text-decoration: underline;
    }
/*==============Symposium ECES====================*/

.conference-section{
  position: relative;
  width: 100%;
  height: 520px;          /* subsection height */
  overflow: hidden;
}

.conference-img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* dark overlay */
.conference-section::before{
  content:"";
  position:absolute;
  inset:0;
  background: rgba(0,0,0,0.45);
}

/* IMPORTANT: use flex to stack items (no overlap) */
.conference-content{
  position: absolute;
  inset: 0;
  z-index: 2;

  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  text-align: center;
  padding: 20px;
  gap: 18px;              /* spacing between title/date/countdown */
}

.conference-title{
  margin: 0;
  color: #fff;
  font-weight: 400;

  font-size: clamp(36px, 6vw, 80px);  /* responsive size */
  line-height: 1.05;                  /* prevents text overlap */
  text-shadow: 0 10px 25px rgba(0,0,0,.35);
}

.conference-date{
  background: #ff2b74;
  color: #fff;
  padding: 10px 24px;
  border-radius: 999px;
  font-weight: 700;
}

/* countdown row */
.countdown{
  display: flex;
  gap: clamp(18px, 4vw, 60px);
  flex-wrap: wrap;
  justify-content: center;
}

.time-box{ min-width: 90px; }

.time-num{
  color: #fff;
  font-size: clamp(34px, 5vw, 70px);
  font-weight: 800;
  line-height: 1;
  text-shadow: 0 10px 25px rgba(0,0,0,.35);
}

.time-label{
  color: rgba(255,255,255,.9);
  margin-top: 6px;
  font-size: 14px;
}
    /* Subsection container (fits inside a webpage) */
    .speakers-section{
      width: min(1050px, 92%);
      margin: 40px auto;
      padding: 10px 0 30px;
    }

    .speakers-section h2{
      font-size: 34px;
      font-weight: 700;
      color:#1d2c3a;
      margin-bottom: 10px;
    }

    .speakers-section .intro{
      color:#6b7280;
      font-size: 15px;
      line-height: 1.7;
      max-width: 680px;
      margin-bottom: 18px;
    }

    .divider{
      height: 1px;
      background:#e5e7eb;
      margin: 16px 0 28px;
    }

    /* Each speaker row */
.speaker{
  display: grid;
  grid-template-columns: 140px 1fr;
  gap: 30px;
  align-items: center;   /* ⭐ THIS FIXES THE ALIGNMENT */
}

    /* space between speaker blocks like screenshot */
    .speaker + .speaker{
      margin-top: 34px;
    }

    .avatar-wrap{
      display: flex;
      justify-content: center;
      padding-top: 6px;
    }

.avatar{
  width: 120px;
  height: 120px;
  border-radius: 50%;
  overflow: hidden;
}

.avatar img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

    /* Right content with vertical line */
/* right side */
.speaker-content{
  display: flex;
  align-items: center;   /* ⭐ aligns line with image */
  gap: 18px;
}

/* vertical line */
.vline{
  width: 3px;
  height: 80px;          /* adjust if needed */
  background:#1f3e6e;
}

    .speaker-head{
      margin-bottom: 12px;
    }

    .speaker-title{
      font-size: 18px;
      font-weight: 700;
      color:#1d2c3a;
      margin-bottom: 6px;
    }

    .speaker-subtitle{
      font-size: 13px;
      line-height: 1.6;
      color:#7b8794;
      max-width: 720px;
    }

    .speaker-bio{
      font-size: 14px;
      line-height: 1.9;
      color:#7b8794;
      max-width: 780px;
      margin-top: 6px;
    }

    /* Responsive */
    @media (max-width: 820px){
      .speaker{
        grid-template-columns: 1fr;
        gap: 18px;
      }

      .avatar-wrap{
        justify-content: flex-start;
      }

      .speaker-content{
        gap: 14px;
      }

      .vline{
        height: 52px;
      }
    }
    .about-section{
      width: min(1150px, 92%);
      margin: 40px auto;
      padding: 10px 0;
    }

    .about-grid{
      display: grid;
      grid-template-columns: 1.05fr 1fr;
      gap: 40px;
      align-items: center;
    }

    /* LEFT illustration */
    .about-visual{
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .about-visual img{
      width: 100%;
      max-width: 560px;
      height: auto;
      display: block;
    }

    /* RIGHT content */
    .about-content h2{
      font-size: 30px;
      font-weight: 600;
      color:#20314b; /* dark blue like screenshot */
      margin-bottom: 12px;
    }

    .about-content .desc{
      font-size: 14px;
      line-height: 1.8;
      color:#7b8794;
      margin-bottom: 18px;
      max-width: 520px;
    }

    .bullet-list{
      list-style: none;
      margin: 10px 0 22px;
      display: grid;
      gap: 12px;
    }

    .bullet-list li{
      display: flex;
      gap: 12px;
      align-items: flex-start;
      color:#3b4858;
      font-size: 15px;
      font-weight: 600;
    }

    /* circle icon */
    .dot{
      width: 18px;
      height: 18px;
      border-radius: 50%;
      border: 2px solid #ff5a8b;
      margin-top: 2px;
      flex: 0 0 auto;
      position: relative;
    }

    /* small inner dot */
    .dot::after{
      content:"";
      position:absolute;
      inset: 4px;
      border-radius: 50%;
      background:#ff5a8b;
      opacity: .25;
    }

    /* button */
    .learn-btn{
      display: inline-block;
      padding: 14px 34px;
      background:#ff5a8b;
      color:#fff;
      font-weight: 800;
      letter-spacing: .02em;
      text-decoration: none;
      border-radius: 999px;
      box-shadow: 0 12px 28px rgba(255,90,139,.30);
      transition: transform .15s ease, box-shadow .15s ease;
    }

    .learn-btn:hover{
      transform: translateY(-2px);
      box-shadow: 0 16px 32px rgba(255,90,139,.36);
    }

    /* Responsive */
    @media (max-width: 900px){
      .about-grid{
        grid-template-columns: 1fr;
      }
      .about-content h2{
        font-size: 32px;
      }
      .about-visual img{
        max-width: 520px;
      }
    }
    /* Subsection container */
    .agenda-section{
      /*width: min(900px, 92%);*/
      margin: 10px auto 0;
      padding: 24px 0 0;
      position: relative;
    }

    /* Top icon (simple clock) */
    .clock{
      width: 54px;
      height: 54px;
      border-radius: 50%;
      border: 3px solid #2b3640;
      margin: 0 auto 10px;
      position: relative;
    }
    .clock::before{
      content:"";
      position:absolute;
      width:3px; height:18px;
      background:#2b3640;
      left:50%; top:50%;
      transform: translate(-50%,-85%);
      border-radius:2px;
    }
    .clock::after{
      content:"";
      position:absolute;
      width:16px; height:3px;
      background:#2b3640;
      left:50%; top:50%;
      transform: translate(-10%,-50%) rotate(20deg);
      border-radius:2px;
    }

    .agenda-title{
      text-align:center;
      letter-spacing: 2px;
      font-weight: 800;
      font-size: 22px;
      margin-bottom: 16px;
      text-transform: uppercase;
    }

    /* horizontal line under title */
    .title-line{
      width: 430px;
      max-width: 90%;
      height: 3px;
      background:#2b3640;
      margin: 0 auto 28px;
    }

    /* Timeline wrapper */
    .timeline{
      position: relative;
      /*padding: 8px 0 10px;*/
      min-height: 520px;
    }

    /* center vertical line */
    .timeline::before{
      content:"";
      position:absolute;
      left: 50%;
      top: 0;
      bottom: 0;
      width: 3px;
      background:#2b3640;
      transform: translateX(-50%);
    }

    .row{
      display:grid;
      grid-template-columns: 1fr 40px 1fr;
      align-items:center;
      gap: 0;
      margin: 26px 0;
    }

    .time{
      text-align: right;
      padding-right: 22px;
      font-weight: 700;
      color:#384553;
      letter-spacing: .5px;
    }

    /* right gray blocks */
    .event{
      justify-self: start;
      background:#c7cdd3;
      padding: 16px 22px;
      min-width: 280px;
      max-width: 360px;
      font-weight: 800;
      letter-spacing: 1px;
      text-transform: uppercase;
      color:#384553;
    }

.photo-strip{

  height: 300px;
  margin-top: 40px;

  /* ONE background image */
  background-image: url("../images/kihadahall.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;

  position: relative;
}


/* center box */
.location-wrap{

  position: absolute;

  left: 50%;
  bottom: -60px; /* overlap effect like screenshot */

  transform: translateX(-50%);

  background: #eef3f7;

  padding: 30px 50px;

  text-align: center;

  box-shadow: 0 10px 25px rgba(0,0,0,0.15);

}


.location-title{

  font-size: 22px;
  font-weight: bold;

}


.location-line{

  width: 60%;
  height: 2px;
  background: #333;

  margin: 10px auto;

}


.location-address{

  font-weight: bold;

}

    /* Make it work on smaller screens */
    @media (max-width: 680px){
      .row{
        grid-template-columns: 1fr;
        gap: 10px;
        padding-left: 10px;
      }
      .timeline::before{
        left: 10px;
        transform:none;
      }
      .time{
        text-align:left;
        padding-right:0;
        padding-left: 24px;
      }
      .event{
        min-width: unset;
        width: 100%;
        max-width: 520px;
        margin-left: 24px;
      }
      .title-line{ width: 300px; }
    }

