/* 			The basics 			*/


@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Lato:wght@300;400;700&family=Nunito:wght@400;600;800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Roboto+Flex:opsz,wght@8..144,100..1000&family=Roboto+Slab:wght@100..900&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');


html, body {
  margin: 0;
  padding: 0;
  overflow-x: hidden;   /* ✅ Prevent horizontal scrolling */
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
}

hr {
	border-top: 2px solid #cfe0e4;
	margin-bottom: 4px;
}

body {
	background-color: #ffffff;
    /* background: linear-gradient(to right, #E2EEF7, #E2F7F6); */
	text-align: center;
	color: #27437c;
	font-size: 11pt;
    line-height: 1.4;       /* Readable line spacing */
	font-family: 'Montserrat', Verdana, Helvetica, Arial, Geneva, sans-serif;
}

a {
	/* color: #63b5d8; */
	color: #3a80ac;
	text-decoration: none;
	border: none;
}

img {
	border: none;
}

a:hover {
	color: #5b7ca2;
	text-decoration: underline;
}

.ljudje {
	clear: both;
	padding-top: 10px;
	float: left;
	padding-right: 10px;
	padding-bottom: 10px;
}

form {
	position: relative;
	left: -148px;
}

.ftable {
	width: 600px;
	font-size: 8pt;
	font-family: 'Montserrat', Verdana, Helvetica, Arial, Geneva, sans-serif;
}

.if {
	width: 140px;
	vertical-align: top;
	text-align: right;
	display: table-cell;
}

#abstract_counter{
	color: #ff6060;
	font-size: 10px;
}

.pdetails { font-style: italic; font-size: 10pt; font-family: "Times New Roman", Georgia, Times }

.venue {color: #aaaaaa; font-style: normal; font-weight: normal;}
.venue a {color: #aaaaaa; font-style: normal; font-weight: normal;}
.venue a:hover {color: #ffaaaa; font-style: normal; font-weight: normal;}

/****************************/
/* 			Boxes 			*/
/****************************/

/* #pagebox {
	width: 100vw;
	display: inline-block;
	background: none;
	text-align: left;
	margin-right:auto;
	margin-left:auto;
} */

#pagebox {
  flex: 1;
  flex-direction: column;
  width: 100%;               /* Take full viewport width */
  margin: 0;                  /* Remove default margin */
  padding: 0;                 /* Remove internal spacing */
  display: flex;             /* Use block for container layout */
  background: none;
  text-align: left;
  box-sizing: border-box;     /* Includes padding/border in dimensions */
  
}

#topbox {
	width: 100vw;
	/* background-image: url(https://www.sinapsa.org/SiNC25/media/top25.png); */
	position: relative;
    background: linear-gradient(to right, #E2EEF7, #E2F7F6);
	display: block;
	height: 200px;
	transition: padding 0.7s ease-in-out;
}


#topbox img {
  width: 250px;
  height: auto;
  position: absolute;
  top: 90px;
  left: 100px;
  opacity: 0.7;
  transition: all 0.7s ease-in-out;
  transform: translate(0, 0); /* initial position */
}

.topbox-title {
  text-align: center;
  font-family: 'Montserrat', 'Nunito', sans-serif;
}

.topbox-title .top-line {
  font-size: clamp(72px, 6vw, 72px);
  font-weight: 700;
  color: #202e4a;
  margin-top: 20px;
  letter-spacing: 0px;
  transition: font-size 0.7s ease-in-out;
}

.topbox-title .mid-line {
  text-transform: uppercase;
  font-size: clamp(20px, 3.5vw, 20px);
  font-weight: 500;
  color: #5b7ca2;
  margin-top: -5px;
  letter-spacing: clamp(2px, 0.5vw, 7px);
  transition: font-size 0.7s ease-in-out;
}

.topbox-title .bottom-line {
  font-size: clamp(18px, 3.2vw, 18px);
  font-weight: 400;
  color: #5b7ca2;
  margin-top: 0px;
  letter-spacing: clamp(1px, 0.4vw, 2px);
  transition: font-size 0.7s ease-in-out;
}


/* Make logo and title responsive when resizing screen */
@media (max-width: 1350px) {
  #topbox {
    padding-top: 20px;
    padding-bottom: 20px;
  }

  #topbox img {
    position: absolute; /* Keep absolute to allow animation */
    top: 20px;
    left: 50%;
    width: 80px;
    transform: translateX(-50%); /* Center horizontally */
	opacity: 0.7;
  }

    .topbox-title {
    margin-top: 50px; /* Push title below the logo */
    transition: margin-top 0.7s ease-in-out;
  }

}

@media (max-width: 600px) {
  #topbox {
    padding-top: 0px;
    padding-bottom: 0px;
  }

  #topbox img {
    position: absolute; /* Keep absolute to allow animation */
    top: 10px;
    left: 50%;
    width: 60px;
    transform: translateX(-50%); /* Center horizontally */
	opacity: 0.7;
  }
	
  .topbox-title .top-line {
    font-size: 42px;
  }

  .topbox-title .mid-line {
    font-size: 16px;
    letter-spacing: 4px;
  }

  .topbox-title .bottom-line {
    font-size: 14px;
    letter-spacing: 1px;
  }
}

#flag {
	width: 50px;
	height: 30px;
	padding-left: 930px;
	padding-top: 75px;
}


#sidebox {
  text-align: left;
  width: 270px;
  min-width: 200px;        /* Optional: allows slight shrink */
  flex-shrink: 1;          /* ✅ allows it to contract */
  box-sizing: border-box;
  overflow-wrap: break-word;
  word-break: break-word;
}

#centerbox {
  display: flex;
  flex-direction: row-reverse;
  justify-content: center;
  align-items: flex-start;
  gap: clamp(10px, 5vw, 400px);  /* 🔥 min 10px, scales with screen, max 80px */
  max-width: 1600px;
  width: 100%;
  margin: 100px auto auto auto;
  padding-right: 60px;
  box-sizing: border-box;
}

#textbox {
  text-align: left;
  flex: 1;
  min-width: 250px;
  max-width: 600px;          /* ✅ limit default width */
  width: 100%;
  display: block;
  box-sizing: border-box;
}



/* #footbox {
  width: 100vw; /* full width of the viewport 
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  background-color: #212834;
  text-align: center;
  color: #212834;
  font-size: 0.9em;
  padding: 20px 0;
  margin-top: 40px;
}
*/

#footbox {
  width: 100%;
  height: 58px;
  margin-top: auto;
  background: linear-gradient(to right, #E2EEF7, #E2F7F6);
  /* background-color: #212834; */
  text-align: center;
  color: #555;
  font-size: 0.9em;
  padding: 20px 0;
}


#toppicbox {
	width: 460px;
	height: 120px;
	display: inline-block;
}

#toppic {
	width: 460px;
	height: 100px;
	border: 0;
}

#sidepicbox {
	width: 260px;
	height: 100;
	padding-left: 22px;
	display: inline-block;
}

#sidepic {
	width: 260px;
	height: 100px;
	border: 0;
}

#menu {
  margin-top: 10px;
  padding: 10px;
  border-radius: 8px;
  width: fit-content;
}

#menu a {
  display: block;               /* Ensures each item is on its own line */
  background-color: #E2EEF7;    /* Light background for the box */
  padding: 8px 8px;            /* Spacing inside the box */
  margin-bottom: 2px;           /* Space between items */
  border-radius: 6px;           /* Rounded corners */
  text-decoration: none;        /* Remove underline */
  color: #27437c;               /* Text color */
  font-weight: 500;             /* Slightly bolder text */
  text-align: center;
  transition: background 0.1s ease;
}

#menu a:hover {
  background-color: #d8e4ff; 
  /* transform: translateX(5px); Subtle movement */
  transform: scale(1.03);
}



/* Stack content vertically on small screens */
@media (max-width: 768px) {
  #centerbox {
    flex-direction: column;
    align-items: center;
    padding: 0 40px;
  }


  #sidebox, #textbox {
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
  }

  #sidebox {
    margin-top: 20px;
    align-items: center;
    text-align: center;  /* Center inline text content */
  }

  #textbox {
    text-align: justify;
    font-size: 12pt; /* Increase from the default 11pt */
  }
  

  #menu {
    width: 100%;
    max-width: 300px;     /* Optional: control menu width */
    margin: 0 auto 20px;  /* Center and space it nicely */
  }

  #logo {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 60px; /* or whatever height fits the logos nicely */
  }

  #logo img {
    position: static !important; /* Override absolute */
    margin: 0 auto;
    display: none;
  }

  #logo img.active {
    display: block;
  }

}

/* Hide stuff that should be removed in html*/

#toppicbox,
#toppic,
#sidepicbox,
#sidepic {
  display: none !important;
}

#centerbox h1 {
  display: none;
}


/* Add rounded corners and soft shadows to boxes

#centerbox, #textbox, #sidebox {
  border-radius: 10px;
  box-shadow: 0 4px 12px rgba(6, 70, 77, 0.05);
} */


/****************************/
/* 			Center 			*/
/****************************/

.textentry {
	border-bottom: 1px dashed #7e7e7e;
	padding-bottom: 0.8em;
}

.einfo {
	font-family: 'Montserrat', Verdana, Helvetica, Arial, Geneva, sans-serif;
	font-size: 11pt;
	margin-bottom: 1pt;
}

.etype {
	font-weight: bold;
}

.edate {
}

.etitle {
	font-family: 'Montserrat', Verdana, Helvetica, Arial, Geneva, sans-serif;
	font-size: 16pt;
	margin: 0;
}

.ttitle {
	font-family: 'Montserrat', Verdana, Helvetica, Arial, Geneva, sans-serif;
	font-size: 16pt;
	margin: 0;
}

.tstitle {
	font-family: 'Montserrat', Verdana, Helvetica, Arial, Geneva, sans-serif;
	font-size: 11pt;
	font-weight: bold;
}


h1 {
	font-family: 'Montserrat', Verdana, Helvetica, Arial, Geneva, sans-serif;
	font-size: 16pt;
	margin: 0;
	font-weight: normal;
}

h2 {
	font-family: 'Montserrat', Verdana, Helvetica, Arial, Geneva, sans-serif;
	font-size: 16pt;
	font-weight: bold;
    font-variant-caps: titling-caps;
}


h3 {
	font-family: 'Montserrat', Verdana, Helvetica, Arial, Geneva, sans-serif;
	font-size: 9pt;
	font-weight: bold;
}




.s-poglavje {
	font-family: 'Montserrat', Verdana, Helvetica, Arial, Geneva, sans-serif;
	font-size: 11pt;
	font-weight: bold;
}

.s-clen {
	font-weight: bold;
}

/****************************/
/* 			Side 			*/
/****************************/

.sideentry {
	border-bottom: 1px dashed #7e7e7e;
	padding-bottom: 0.8em;
}

.stitle {
	font-family: 'Montserrat', Verdana, Helvetica, Arial, Geneva, sans-serif;
	font-size: 11pt;
	font-weight: bold;
}

.tweetstuff {
	margin: 15px 0 0 0;
	text-align: left;
}

/****************************/
/* 			Footnote		*/
/****************************/

#footnote {
	width: 100%;
	padding-top: 30px;
	padding-left: auto;
	padding-right: auto;
	font-size: 11px !important;
	color: #5b7ca2;
}


/****************************/
/* 			EForm			*/
/****************************/

.eform {
	margin-left : -120px;
}
.fime {
	text-align : right;
	width : 115px;
}
.yellow {

	background-color: #fef8e3;

}

/****************************/
/* 			PopUp Abstract	*/
/****************************/

.abstract  {
	background: #ffffff;
	text-align: left;
	color: #343434;
	font-size: 8pt;
	font-family: 'Montserrat', Verdana, Helvetica, Arial, Geneva, sans-serif;
}

.o-naslov  { color: #187fb1; font-weight: bold; font-size: 11pt; font-family: Arial, Helvetica, Geneva, Swiss, SunSans-Regular }
.o-podatki { font-style: italic; font-size: 10pt; font-family: "Times New Roman", Georgia, Times }
.besedilo  { color: #001; font-size: 10pt; font-family: Arial, Helvetica, Geneva, Swiss, SunSans-Regular; text-align: justify }

.opis  {
	clear: both;
	margin-top: 30px;
	}

.lit {

}




/************************************/
/* 				Floatmenu	 		*/
/************************************/


.float {

	width: 175px;
	height: auto;
	position: absolute;
	visibility: hidden;
	background: transparent url(b50.png);
	background: rgba(0,0,0,0.50) none;
	border: 1px solid #747a88;
	padding: 5px;
	color: #fff;
	font-family: 'Montserrat', Verdana, Helvetica, Arial, Geneva, sans-serif;
	top: 1px;
	left: 1px;
	text-align: left;
	font-size: 12px;
}

.infoline {
	width: 170;
	display: block;
	padding-left: 3px;
	padding-right: 3px;
	font-weight: bold;
	color: #ffcb00;
}

.cline {
	width: 144;
	display: block;
	padding-left: 3px;
	padding-right: 3px;
}

.cline:hover{
	background: transparent url(w33.png);
	background: rgba(254,255,254,0.33) none;
}



/************************************/
/* 				Fields   	 		*/
/************************************/

.tbt {

}

.ok{

}

.nok{
	border-style: solid;
	border-color: #b42626;
}


.thanx {
	border-bottom: 1px dashed #7e7e7e;
	padding-bottom: 0.8em;
	color: red;
}



/************************************/
/* 				Logo     	 		*/
/************************************/


#logo { display: block; width: 250px; height: 40px; }
#logo img { display: none; }
#logo img.active { display: block; }


/************************************/
/*       	Feedback form     	 	*/
/************************************/

#fform {
	position: relative;
	left: 0;
}

