    html, body {
      margin: 0;
      padding: 0;
      height: 100%;
	  scroll-behavior: smooth;
	  font-family:'MutatorSans', sans-serif;
    }

    body {
/*      background: url('background.jpg') no-repeat center center/cover; */
    }
	
	/* Ez a nyitokep */
	.hero {
	      height: 100vh; /* full viewport height */
	      background: url('background.jpg')  no-repeat center center/cover;
	    }
	

	/* Egy kicsi, majdnem atlatszo, sotetito boritas a nyitooldaon */
	.masking{
	    background:rgba(0,0,0,0.3);
	    position:absolute;
	    left:0;
	    top:0;
	    width:100%;
	    height:100%;
	    z-index:10
	}
	
	
    /* Ez a felso menusor */
    header {
      position: fixed;
      top: 0; left: 0;
      width: 100%;
      display: flex;
      justify-content: center;
      align-items: center;
      padding: 1rem 2rem;
      transition: background 0.3s;
      z-index: 999;
    }

    header.scrolled {
      background: rgba(0,0,0,0.85);
    }

	/* Ez a bal felso sarokbeli kis ikon */
    .logo {
      color: white;
      font-size: 1.0rem;
      font-weight: normal;
	  font-family:'Montserrat', sans-serif;
      height: 50px;
      position: absolute;
	  top: 10px;
      left: 20px;
      transition: all 0.3s ease;
    }

	/* Ez a felso menusor menupontjai */
    nav {
      display: flex;
      gap: 1.5rem;
    }

    nav a {
      color: white;
      text-decoration: none;
      font-weight: 200;
      transition: color 0.2s;
      font-size: 1.0rem;
      font-weight: normal;
	  font-family:'MutatorSans', sans-serif;
	  
    }

    nav a:hover {
      color: #ddd;	  
    }



	.foszoveg{
	    color:white;
/*	    max-width:600px; */
	    position:relative;
	    z-index:20;
		padding-top:110px;
		padding-left:80px;
	}
	.foszoveg h1
	{
		color:white;
		font-size:3rem;
		font-weight:800;
		font-size:4rem;
		line-height: 10pt;
	}
	.foszoveg h2{
		font-size:1.75rem;
/*		font-family:'Montserrat', sans-serif; */
		font-weight:700;
		line-height: 10pt;
	}
	.foszoveg h3{
		font-size:1.8rem;
		font-weight:1;		
		line-height: 10pt;
		font-style: normal;
		font-family: "MutatorSans", sans-serif;
	}

	.down-arrow {
	            position: absolute;
	            bottom: 20px;
	            left: 50%;
	            transform: translateX(-50%);
	            font-size: 40px;
				font-weight: normal;
	            color: white;
	            animation: bounce 2s infinite;
	}
	.down-arrow a{
	            font-size: 40px;
				font-weight: normal;
	            color: white;
			    text-decoration: none;
		
	}
		

	@keyframes bounce {
	            0%, 100% { transform: translateX(-50%) translateY(0); }
	            50% { transform: translateX(-50%) translateY(10px); }
	}
	
    section {
       padding: 4rem 3rem;
       background: #fff; /* example */
     }


	
	.row{
	    display:flex;
	    flex-wrap:wrap;
	    margin-top:0;
	    margin-right:0rem;
	    margin-left:0rem;
		justify-content: center;
	}
    .col{
		font-family: "Arial" lighter;
        flex:0 0 auto;
        width:46%;
		text-align: justify;
		text-justify: inter-word;
		line-height: 160%;
		margin-bottom:1.5rem !important;
	    font-size:1.05rem;
		letter-spacing: 1.1;
		color: #38485e;
		margin: 0 auto; 
    }
	
	.col h3 {
		font-size:1.8rem;
		line-height: 10pt;
		font-style: bold;
		font-family: "MutatorSans", sans-serif bold center;     
	 	align: center;
		color: black;
		line-height: 10pt;
	    text-align:center !important;
	}
	
	.important-dates {
	  background-color: rgba(241, 246, 250, 0.6);
	  backdrop-filter: blur(5px);
	/*  background-color: #F1F6FA; */ /* #f5f5f5; */  /* light card box */
	/*  color: #161c24;             /* dark text for contrast inside the light box */
	  max-width: 800px;
	  margin: 4rem auto;          /* centers the box and adds space around */
	  padding: 2rem;
	  border-radius: 8px;         /* rounded corners for card feel */
	  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2); /* optional soft shadow */
	  color: #38485e;
	}

	.important-dates h2 {
	  text-align: center;
	  font-size: 2rem;
	  letter-spacing: 1px;
	  color: #161c24;  /* match text color to dark site accent */
	}

	.important-dates table {
	  width: 100%;
	  border-collapse: collapse;
	  margin-top: 2rem;
	}

	.important-dates th,
	.important-dates td {
	  border: 1px solid #ddd;
	  padding: 1rem;
	  text-align: left;
	}

	.important-dates th {
	  background-color: #eaeaea;
	}

	.important-dates tr:nth-child(even) td {
/*	  background-color: #f9f9f9; */
	  background-color: rgba(249, 249, 249, 0.5);
	  backdrop-filter: blur(5px);
	}

	.important-dates a {
	  color: #0066cc;
	  text-decoration: none;
	}

	.important-dates a:hover {
	  text-decoration: underline;
	}
	
	.speakers-grid {
	  display: grid;
	  grid-template-columns: 1fr; /* default: 1 column */
	  gap: 2rem;
	  max-width: 1200px;
	  margin: 0 auto;
	}

	@media (min-width: 768px) {
	  .speakers-grid {
	    grid-template-columns: 1fr 1fr; /* switch to 2 columns on wider screens */
	  }
	}
	
	
	.speaker {
  	  background-color: rgba(249, 251, 252, 0.8);
	  backdrop-filter: blur(5px);
	  border: 1px solid #cdd9e3;       /* subtle border */
	  border-radius: 10px;
	  padding: 0 0.6rem;
	  margin: 1rem auto;               /* centers block */
	  max-width: 100%;                /* limit width on big screens */
	  width: 90%;                      /* adjustable width */
	  box-shadow: 0 4px 12px rgba(0,0,0,0.1); /* subtle lift */
	  
	  display: flex;
      margin-bottom: 0px;
      align-items: center;	  
	}

	.speaker img {
	    width: 120px;
	    height: 120px;
	    border-radius: 50%;
	    margin-right: 20px;
	}


	@media (max-width: 768px) {
	    .speaker {
	        flex-direction: column;
	        text-align: center;
	    }
	    .speaker img {
	        margin-bottom: 15px;
	    }
	}

	.speaker-info {
	  color: #161c24;                  /* strong dark text for contrast */
	  font-family: "MutatorSans", sans-serif bold;
	  font-style: bold;
	  font-size:1.2rem;
	  padding: 0.5rem;
	  line-height: 2.5rem;
	  letter-spacing: 2px;
	  text-align:left !important;
	}

	.speaker-info h3 {
	  color: #1e3a5f;                  /* slightly deeper color for names */
	  margin-top: 5;
	  font-size:1.5rem;
	  text-align:left !important;
	  line-height: 0.1rem;
	}
	
	
	
	
	
	
	.venue {
	  background-color: #f9fbfc;
	  padding: 4rem 2rem;
	  background: url('venue-background.png') center center / cover no-repeat;
	  position: relative;
	}

	.venue h2 {
	  text-align: center;
	  font-size: 2.4rem;
	  margin-bottom: 2rem;
	  color: #ffffff;
	}
	.venue-wrapper {
	  max-width: 1200px;
	  margin: 0 auto;
	}

	.venue-address {
	  background: #fff;
	  border: 1px solid #cdd9e3;
	  border-radius: 6px;
	  padding: 1rem 1.5rem;
	  margin-bottom: 2rem;
	}
	

	.venue-address h4 {
	  margin: 0 0 0.5rem;
	  color: #1e3a5f;
	}

	.venue-grid {
	  display: grid;
	  grid-template-columns: 1fr; /* mobile default */
	  gap: 2rem;
	  max-width: 1200px;
	  margin: 0 auto;
	}

	@media (min-width: 768px) {
	  .venue-grid {
	    grid-template-columns: 1fr 1fr; /* two columns on wide screens */
	  }
	}

	.venue-map iframe {
	  width: 100%;
	  height: 100%;
	  min-height: 300px;
	  border-radius: 8px;
	}

	.venue-info {
	  display: flex;
	  flex-direction: column;
	  gap: 2rem;
	}

	.how-to-get {
	  display: grid;
	  grid-template-columns: 1fr;
	  gap: 1rem;
	}

	@media (min-width: 480px) {
	  .how-to-get {
	    grid-template-columns: 1fr 1fr; /* two transport boxes side by side on medium screens */
	  }
	}

	.transport-box {
	  background-color: #ffffff;
	  border: 1px solid #cdd9e3;
	  border-radius: 6px;
	  padding: 1rem;
	  text-align: left;
	}

	.transport-box h4 {
	  margin: 0 0 0.5rem;
	  color: #1e3a5f;
	}

	.accommodation {
	  background-color: #ffffff;
	  border: 1px solid #cdd9e3;
	  border-radius: 6px;
	  padding: 1rem;
	  text-align: left;
	}

	.accommodation h4 {
	  margin: 0 0 0.5rem;
	  color: #1e3a5f;
	}
	
	.venue-address,
	.transport-box,
	.accommodation {
	  background-color: rgba(225, 225, 225, 0.6); /* white, 80% opaque */
	  border: 1px solid #cdd9e3;
	  border-radius: 6px;
	  padding: 1rem 1.5rem;
	  text-align: left;
	  backdrop-filter: blur(2px); /* optional: frosted glass effect */
	}
	
	
	
	
	.committee {
	  background-color: #f0f6fa;
	  padding: 4rem 2rem;
	}

	.committee-grid {
	  display: grid;
	  grid-template-columns: 1fr;
	  gap: 2rem;
	  margin: 0 auto;
	  max-width: 100%;                /* limit width on big screens */
	  width: 95%;                      /* adjustable width */
	  
	}

	@media (min-width: 768px) {
	  .committee-grid {
	    grid-template-columns: 1fr 1fr;
	  }
	}

	.committee-box {
	  background: #ffffff;
	  border-radius: 6px;
	  padding: 2rem;
	  box-shadow: 0 2px 8px rgba(0,0,0,0.05);
	}

	.committee-box h3 {
	  margin-top: 0;
	  color: #1e3a5f;
	}

	.committee-box ul {
	  list-style: none;
	  padding: 0;
	  margin: 0;
	}

	.committee-box li {
	  margin-bottom: 0.5rem;
	  line-height: 1.5;
	  color: #333;
	}
	
	
	
	
	.contributed-talks {
	  background: url('contrib-background.png') center center / cover no-repeat;
	  position: relative;
	  padding: 6rem 2rem;
	  color: #ffffff;
	}

	.contributed-overlay {
	  background: rgba(0, 0, 0, 0.5); /* dark overlay for readability */
	  padding: 4rem 2rem;
	}

	.contributed-content {
	  max-width: 100%;
	  margin: 0 auto;
	  text-align: left;
	}

	.contributed-content h2 {
	  font-size: 4rem;
	  margin-bottom: 1rem;
	}

	.contributed-content p {
  	  font-size: 1.2rem;
	  max-width: 700px;
	  margin-bottom: 2rem;
	  line-height: 1.6;
	  text-align: left;
	}

	.contributed-tables {
	  display: grid;
	  grid-template-columns: 1fr;
	  gap: 2rem;
	}

	@media (min-width: 768px) {
	  .contributed-tables {
	    grid-template-columns: 1fr 1fr;
	  }
	}

	.price-table, .deadline-table {
	  background: rgba(255, 255, 255, 0.2); /* slightly see-through white */
	  border-radius: 6px;
	  padding: 1.5rem;
	  backdrop-filter: blur(4px); /* optional frosted effect */
	}

	.price-table h3, .deadline-table h3 {
	  margin-top: 0;
	  color: #ffffff;
	}

	table {
	  width: 100%;
	  border-collapse: collapse;
	  color: #ffffff;
	}

	th, td {
	  border-bottom: 1px solid rgba(255,255,255,0.4);
	  padding: 0.5rem 0;
	  text-align: left;
	}

	th {
	  text-align: left;
	}




	.social-events {
	  background-color: #f0f6fa;
	  padding: 4rem 2rem;
	  text-align: center;
	}

	.social-events h2 {
	  margin-bottom: 2rem;
	  color: #1e3a5f;

	}

	.social-events-grid {
	  display: grid;
	  grid-template-columns: 1fr;
	  gap: 2rem;
	  max-width: 1200px;
	  margin: 0 auto;
	}

	@media (min-width: 768px) {
	  .social-events-grid {
	    grid-template-columns: repeat(3, 1fr);
	  }
	}

	.event-box {
	  background: #ffffff;
	  border-radius: 6px;
	  padding: 2rem;
	  box-shadow: 0 2px 8px rgba(0,0,0,0.05);
	  text-align: left;
	}

	.event-box h3 {
	  margin-top: 0;
	  color: #1e3a5f;
	}

	.event-box p {
	  margin: 0.5rem 0;
	  color: #333;
	}



	.summer-school {
	  position: relative;
	  background: url('school-background.png') center center / cover no-repeat;
	  padding: 6rem 2rem;
	  color: #ffffff;
	}

	.summer-school::before {
	  content: "";
	  position: absolute;
	  top: 0; left: 0; right: 0; bottom: 0;
	  background: rgba(0, 0, 0, 0.2);
	  z-index: 0;
	}

	.summer-school-content {
	  max-width: 1000px;
	  margin: 0 auto;
	  text-align: left;
	  position: relative;  /* puts content above the overlay */
	  z-index: 1;
	}

	.summer-school-content h1 {
	  font-size: 3rem;
	  margin-bottom: 1rem;
	}
	.summer-school-content h2 {
	  font-size: 1.75rem;
	  margin-bottom: 1rem;
	}

	.summer-school-content p {
	  margin: 0.5rem 0;
	  line-height: 1.5;
	}

	.summer-school-content a {
	  color: #ffffff;
	  text-decoration: underline;
	}

	.school-topics-box {
	  background: rgba(255, 255, 255, 0.2);  /* semi-transparent white box */
	  border-radius: 6px;
	  padding: 1.5rem;
	  margin-top: 2rem;
	  backdrop-filter: blur(4px);
	}

	.school-topics-box h3 {
	  margin-top: 0;
	  color: #ffffff;
	}

	.school-topics-box ul {
	  list-style: none;
	  padding: 0;
	  margin: 1rem 0 0;
	}

	.school-topics-box li {
	  margin-bottom: 0.5rem;
	}

	
	






	
	






	
	
	
	
	.organizers {
	    margin: 60px auto;
	    text-align: center;
	    max-width: 1000px;
	}

	.organizer-list {
	    display: flex;
	    justify-content: space-around;
	    flex-wrap: wrap;
	    gap: 20px;
	    margin-top: 20px;
	}

	.organizer {
	    text-align: center;
	}

	.organizer img {
	    width: 120px;
	    height: 120px;
	    object-fit: cover;
	    border-radius: 50%;
	    border: 2px solid #000000;
	}
	.organizer p {
	    margin-top: 10px;
	    color: #1e3a5f;
	    font-size: 16px;
	    font-style: bold;
		letter-spacing: 0px;
	}
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
    /* DUMMY CONTENT TO ENABLE SCROLL */
    main {
      height: 200vh;
    }
	
	
	.sponsors {
/*  	  background-color: rgba(21, 27, 33); /* white, 80% opaque */
/*  	  border: 1px solid #cdd9e3;
  	  border-radius: 6px;
  	  padding: 1rem 1.5rem;
  	  text-align: center;
	  max-width: 1000px; */
		
	}
	
	footer{
	    color:#fff;
		background:#098dcf;
	    padding-top:2rem !important;
	    padding-bottom:2rem !important;
	}
	footer a{
	    color:#fff;
	}
	footer a:hover{
	    color:#fff;
	}
