/* ***** GeoSquare Module Styling ********************* */

/* ***** Logo and navigation ************************* */
.header { display: flex; justify-content: space-between; align-items: center; padding: 15px 30px; position: fixed; top: 0; left: 0; right: 0; z-index: 100; width: 100%; }
.fixed-header { background: var(--gs-blue); transition: all 0.3s ease-in-out; }
.header-hamburger { display: none; }
.header .header-logo img { max-width: 280px; }
.header .header-menu { display: flex; align-items: center; justify-content: flex-start; }
.header .header-search { display: flex; align-items: center; margin-right: 20px; }
.header .header-search img { width: 25px; margin-right: 10px; }
.header .header-search input { background: none; border: none;
    border-bottom: 1px solid whitesmoke;
    color: whitesmoke; outline: none; width: 165px; padding-bottom: 2px; font-size: 0.85rem; }
.header ul { display: flex; align-items: center; list-style: none; padding-left: 0; margin-bottom: 0; }
.header ul li { margin-left: 30px; }
.header ul li a { color: var(--gs-white); text-decoration: none; font-size: 1.1rem; }
ul.hs-menu-children-wrapper { float: right; }
ul.hs-menu-children-wrapper:before { content: '\25BA'; font-size: 0.6rem; color: var(--gs-white); margin-left: 10px; position: relative; top: 2px; }
ul.hs-menu-children-wrapper:after { content: '|'; font-size: 1rem; color: var(--gs-lightorange); margin-left: 25px; }
ul.hs-menu-children-wrapper li a { color: var(--gs-lightorange); }

/* ***** Gradient banner ************************* */
#hero { height: 650px; background-size: cover; background-position: center; border-bottom-right-radius: 300px; position: relative; overflow: hidden; display: flex; justify-content: center; }
#hero .hero-bg-overlay { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; opacity: 0.9;    border-bottom-right-radius: 300px; }
#hero .container { position: relative; }
#hero .container .h-title { padding-top: 220px; }
#hero.hero-2 { /* use dynamic viewport for mobile browsers, with a vh fallback */
    min-height: calc(125dvh - 8.25rem);
    min-height: calc(125vh - 8.25rem);
    height: auto; margin-bottom: 8.25rem; display: flex; align-items: center; overflow: visible;}
#hero.hero-2 .container .h-title { padding-top: 0;
    font-size: 5.5rem; }
#hero.hero-2 .container h2.h-subtitle { color: var(--gs-orange); /* font-size: 2.3rem; margin: 1rem 0 1rem; */ }
#hero.hero-2 .container h2.h-subtitle.h-content { color: var(--gs-white); /*font-size: 2.3rem; margin: 0rem 0 1.5rem; */}
.scroll-btn { align-items: center; background: var(--gs-white); border-radius: 50%; box-shadow: 0 4px 10px rgba(0, 0, 0, 0.25); cursor: pointer; display: flex; width: 7.5rem; height: 7.5rem; justify-content: center; position: absolute; left: 50%; bottom: -4.1rem; transform: translateX(-50%); transition: transform 0.2s ease; z-index: 192; }
.scroll-btn img { width: 2.9rem; height: 2.32rem; }
.scroll-btn:hover { transform: translateX(-50%) translateY(3px); }


/* ***** First content module ************************* */
.first-content-module { margin-top: -150px; margin-bottom: 50px; }
#under-hero {
    margin-top: -150px; margin-bottom: 50px; }
#under-hero .cards-container { display: flex; align-items: flex-start; justify-content: space-between; height: 100%; }
#under-hero .cards-container .card { width: 340px; padding-left: 1.5rem; padding-right: 1.5rem; margin: 0px 10px; height: 100%; display: flex; }
#under-hero .cards-container .card h3 { margin: 0; }
#under-hero .cards-container .card p { margin-bottom: 10px; }
#under-hero .cards-container .card .marks::before { content: '✓'; margin-right: 10px; color: var(--gs-orange); }
#under-hero .cards-container .card button { margin: 0; width: 100%; margin-top: 2rem; margin-bottom: 1rem; }
#under-hero .cards-image-container.row { --bs-gutter-x: 3.5rem; }
#under-hero .cards-image-container.row p { color: var(--gs-black); /*margin: 40px 0px 60px 0px;*/ }
#under-hero .cards-image-container.row p.push-button { margin-bottom: 60px; }
#under-hero .cards-image-container.row img { max-width: 300px; display: block; margin: 0 auto 0 auto; }
#under-hero .event-details-block{ display: flex; justify-content: space-between; overflow: hidden; }
#under-hero .event-details-block .content-block h3 { margin: 0rem 0rem 1rem 0rem; text-align: left; font-family: RobotoBl; }
#under-hero .event-details-block .content-block p { color: var(--gs-black);	margin-bottom: 0; font-style: italic; }
#under-hero .event-details-block button { width: 100%; max-width: 300px; }
#under-hero .event-details-block .event-info { height: 100%; background: var(--gs-orange); position: relative; border-top-right-radius: 100px; display: flex; flex-direction: column; }
#under-hero .event-details-block .event-details-content { font-family: 'RobotoBl'; text-align: left; color: var(--gs-lightorange); font-size: 1.3rem; }
#under-hero .event-details-block img { max-width: 40px; }
#under-hero .col-12.col-sm-12.col-md-12.col-lg-4.col-xl-4:nth-child(1) { padding:0px 20px 0px 0px; }
#under-hero .col-12.col-sm-12.col-md-12.col-lg-4.col-xl-4:nth-child(2) { padding:0px 10px 0px 10px; }
#under-hero .col-12.col-sm-12.col-md-12.col-lg-4.col-xl-4:nth-child(3) { padding:0px 0px 0px 20px; }
#under-hero .col-12.col-sm-12.col-md-12.col-lg-4.col-xl-4 { position:relative; margin-top: 0px; }
#under-hero .col-12.col-sm-12.col-md-12.col-lg-4.col-xl-4 a.button { position: absolute; bottom: 30px; width: 50%; left: 25%; }
#under-hero .cards-container .card { position: relative; padding-bottom: 100px; }
.card.block.padded .button{ position: absolute; bottom: 30px; width: 70%; left: 50px; }
.card.block.padded .b-divider { margin-top: 35px; }


/* ***** Middle banner ************************* */
#middle-banner { margin: 100px 0px; }
#middle-banner .banner-inner { padding: 35px; display: flex; flex-wrap: wrap; }
#middle-banner .banner-inner .banner-left { display: flex; flex-direction: column; align-items: flex-start; text-align: left; width: 50%; }
#middle-banner .banner-inner .banner-left h3 { color: var(--gs-orange); font-weight: normal; text-align: left; font-family: 'RobotoBo'; }
#middle-banner .banner-inner .banner-right { width: 50%; position: relative; }
#middle-banner .banner-inner .banner-right img { position: absolute; width: 550px; right: 0; top: -120px; }
#middle-banner .banner-inner button { margin-top: 10px; margin-bottom: 0px; }


/* ***** Agenda ************************* */
#agenda { margin-bottom: 80px; }
#agenda .agenda-content { display: flex; align-items: stretch; justify-content: center; max-width: 1920px; margin: 0 auto; flex-wrap: wrap; }
#agenda .agenda-content .agenda-card { width: 340px; background: var(--gs-white); box-sizing: border-box; border-radius: var(--gs-corner); box-shadow: var(--gs-shadow); overflow: hidden; margin: 0px 1%; margin-bottom: 25px; position: relative; min-height: 500px; }
#agenda .agenda-card-image { height: 200px; background-position: center; background-size: cover; position: relative; border-bottom-right-radius: 100px; }
#agenda .agenda-card-image .agenda-date { position: absolute; top: 0px; left: 30px; background: var(--gs-orange); color: var(--gs-white); border-bottom-left-radius: var(--gs-corner-small); border-bottom-right-radius: var(--gs-corner-small); padding: 10px; display: flex; align-items: center; }
#agenda .agenda-card-image .agenda-date.blue { background: var(--gs-blue); }
#agenda .agenda-card-image .agenda-date.orange { background: var(--gs-orange); }
#agenda .agenda-card-image .agenda-date.green { background: var(--gs-antracite); }
#agenda .agenda-card-image .agenda-date-blue { background: var(--gs-blue); }
#agenda .agenda-card-image .agenda-day { 
    font-size: 60px; margin: 0px; margin-right: 10px; line-height: 60px; }
.agenda-date-other { margin-bottom: 0; display: inline-block; word-spacing: 100px; text-align: left; width: fit-content; max-width: 50px; }
.agenda-card-content-box { padding: 30px 30px 130px 30px; }
.agenda-card-content-box .button{ margin: 0 auto; position: absolute; bottom: 30px; width: calc(100% - 60px); }
.agenda-card-content p { text-align: left; font-style: italic; display: block; 
  -webkit-line-clamp: 7; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; }
.agenda-card-content .content-title { text-align: left; font-weight: normal; font-family: RobotoBl; margin-bottom: 5px; font-style: normal; }
.agenda-card-content { min-height: 135px; }
.agenda-location { display: flex; align-items: center; margin-bottom: 20px; position: absolute; bottom: 75px; }
.agenda-location img { width: 20px; margin-right: 10px; }
.agenda-location p { margin-bottom: 0; color: var(--gs-blue); font-size: 1rem; }
.agenda-card-content-box button { margin-bottom: 0; margin-top: 0; width: 100%; }
#filters .agenda-card-content-box { padding: 30px 30px 30px 30px; }


/* ***** Kolom layout ************************* */
/*.ga-1-col .content  p { margin: 0 0 0 1rem; }*/
.ga-1-col .content { max-width: 960px; margin: 0 auto; }
.ga-1-col .more-links img { max-width: 16px; margin-right: 14px; }
.ga-1-col .more-links { font-family: RobotoBl; border: 0; border-radius: 0; box-sizing: border-box; cursor: pointer; display: block; font-family: RobotoBl; font-size: 1rem; margin: 20px auto 0 30px; padding: 0; text-align: left; }
.ga-2-col-content-module .block { display: flex; flex-direction: column; /*justify-content: space-around; */ }
.ga-meerwerk.content, .ga-meerwerk .content { max-width: 100%; padding-left: 1.3rem; border-left: 3px solid var(--gs-orange); margin: 0px auto; font-size: 1.2rem; }
.ga-3-col-content img { display: block; max-width: 280px; margin: 0 auto 0 auto; }
.ga-3-col-content p { text-align: center; }
.cards-image-container h1 { position: relative; top: -1.5rem; color: var(--gs-blue); }

/* ***** Footer ************************* */
.footer-container { background: var(--gs-blue); border-top-left-radius: 200px; }
.footer-content { padding: 50px; max-width: 1600px; margin: 0 auto; display: flex; justify-content: space-between; }
.footer-logo img { max-width: 250px; margin-right: 30px; width: 80%; }
.footer-logo { width: 20%; display: flex; align-items: flex-start; justify-content: end; }
.footer-column { color: var(--gs-white); text-align: left; display: flex; flex-direction: column; align-items: flex-start; padding-left: 20px; border-left: 2px solid var(--gs-orange); width: 30%; justify-content: flex-start; }
.footer-column-3 { width: 20%; }
.footer-column .address { margin-bottom: 1.2rem; }
.footer-column a.address { margin-bottom: 1.2rem; color: var(--gs-white); }
.footer-column p { font-size: 1rem; margin-bottom: 0px; }
.footer-column .address-title { font-weight: 600; margin-bottom: 5px; font-size: 1rem; }
.footer-column .contact{ display: flex; flex-direction: column; }
.footer-column .contact a { display: flex; align-items: center; color: var(--gs-white); text-decoration: none; margin-bottom: 5px; }
.footer-column .contact a img { width: 1.5rem; margin-right: 10px; }
.footer-column-2 .address-title::before { content: ""; display: inline-block; width: 11px; height: 12px; background: url('https://7512680.fs1.hubspotusercontent-na1.net/hubfs/7512680/Geosquare%20academy/images/arrow.png'); background-position: center; background-size: cover; margin-right: 10px; }
.footer-column button { margin: 0; width: 100%;
    /* background: rgba(245, 245, 245, 0.764); color: var(--gs-blue); */ padding-top: 15px; padding-bottom: 15px; }
.footer-copyright { background: var(--gs-antracite); display: flex; align-items: center; padding: 1.2rem; justify-content: center; color: var(--gs-white); }
.footer-copyright p { font-size: 0.85rem; margin-right: 1.2rem; margin-bottom: 0; line-height: 0.85rem; text-align: center; }
.footer-copyright a { display: flex; align-items: center; font-size: 0.85rem; line-height: 0.85rem; padding-left: 1.2rem; margin-right: 1.2rem; color: var(--gs-white); margin-bottom: 0; border-left: 2px solid var(--gs-orange); }


/* ***** Event details ************************* */
#plenaire-sprekers .plenaire-sprekers-content .image { max-width: 200px; margin-right: 25px; }
#plenaire-sprekers .plenaire-sprekers-content .content h5 { text-align: left; color: var(--gs-orange); font-weight: 600; font-size: 1.4rem; }
#plenaire-sprekers .plenaire-sprekers-content .social-icon{ max-height: 30px; }
.programma-details-container .time { color: var(--gs-blue); font-family: 'RobotoBl'; font-size: 1.2rem; font-weight: normal; letter-spacing: 0; text-align: center; }
  padding-left:0 !important; }
.programma-details-container  h3 { color: var(--gs-orange); font-family: 'Varela'; font-size: 2rem; font-weight: bold; }
.programma-details-container .time-container { border-right: 2px solid var(--gs-orange); }
.programma-details-container .time-container .time { text-align: right; }
.programma-details-container .content p { margin-bottom: 10px; }
.programma-details-container .content p strong { font-family: 'RobotoBl'; font-weight: normal; }
.programma-details-container .programma-details-spreakers-container {	display: flex; align-items: center; }
 .programma-details-container .programma-details-spreakers-container.speaker-type-2 {
	align-items: flex-start !important; }
.programma-details-container .programma-details-spreakers-container.speaker-type-2 .content p { margin-top: 15px; }
.programma-details-container .programma-details-spreakers-container.extra-content { display: flex; align-items: center; }
.programma-details-container .programma-details-spreakers-container .image img { max-width: 60px;	margin-right: 20px; }
.programma-details-container .programma-details-spreakers-container .content { color: var(--gs-orange); font-size: 1.2rem; }
.programma-details-container .programma-details-spreakers-container .content .extra-content { color: var(--gs-black); font-size: 1.2rem; }
.programma-details-content-popup-container .programma-details-content-popup .f-divider { border-radius: 3px; height: 2.5px; margin: 1rem auto 2rem; width: 10rem; background: var(--gs-orange); }
.programma-details-content-popup-container .programma-details-content-popup h4 {text-align: left; font-size: 1.2rem; font-family: 'RobotoBl'; font-weight: normal; margin-bottom: 10px; }
.programma-details-content-popup-container .programma-details-content-popup p { 
  margin-bottom: 20px !important; }
.programma-details-content-popup-container .programma-details-content-popup {
    padding-bottom: 50px !important; }
.programma-details-content-popup-container .programma-details-content-popup a { font-family: 'RobotoBl'; font-weight: normal; font-size: 1rem;
	text-align: right !important; display: block; position: absolute; right: 30px; bottom: 30px; }
.programma-details-content-popup .modal-overlay { position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; background: rgba(0, 0, 0, 0.6); display: none; align-items: center; justify-content: center; z-index: 999; }
.programma-details-content-popup .modal { background: var(--gs-white); border-radius: var(--gs-corner-small); width: 90%; max-width: 700px; max-height: 90vh; display: flex; flex-direction: column; box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2); } 
.programma-details-content-popup .modal-header { padding: 1rem; 
  border-bottom: 1px solid #ccc; position: sticky; top: 0; z-index: 1; display: flex; justify-content: space-between; align-items: center; }
.programma-details-content-popup .modal-header h2 { margin: 0; font-size: 1.3rem; }
.programma-details-content-popup .modal-content { padding: 1rem; overflow-y: auto; }
.programma-details-content-popup .close-btn { background: none; border: none; font-size: 1.5rem; cursor: pointer; }
.detail-content-popup { max-width: 1000px; margin: 0 auto; background: var(--gs-white); padding: 0; border-radius: var(--gs-corner-small);  overflow: hidden; box-shadow: 0 10px 40px rgba(0, 0, 0, 0.25); position: relative; }
.detail-content-popup .popup-inner { display: flex; flex-direction: column; max-height: 90vh; }
.mfp-close-btn-in .mfp-close {
    color: var(--gs-lightblue) !important; margin: 10px;
    border: 1px solid var(--gs-lightblue) !important; width: 30px; height: 30px; line-height: 30px; font-size: 1.5rem; }
.detail-content-popup .popup-header { padding: 20px; background-color: var(--gs-white); text-align: left; }
.detail-content-popup .popup-header .content { border-bottom: 2px solid var(--gs-orange); }
.detail-content-popup .popup-header h4 { color: var(--gs-black); font-size: 1.5rem;	text-align: left; margin-bottom: 20px; }
.detail-content-popup .popup-body { padding: 20px; overflow-y: auto; }
.detail-content-popup .popup-body  .programma-details-spreakers-container.extra-content { display: flex; align-items: flex-start; }
.detail-content-popup .popup-body  .programma-details-spreakers-container.extra-content .extra-content p { font-size: 1rem; color: var(--gs-black); }
.detail-content-popup .popup-body .image img { max-width: 60px; margin-right: 20px; }
.detail-content-popup .popup-body .time-container { text-align: right; border-right: 2px solid var(--gs-orange); }
.detail-content-popup .popup-body .time { font-size: 1.2rem; color: var(--gs-blue); letter-spacing: -0.05rem; font-weight: 600; }
.detail-content-popup .popup-body .content p { margin-bottom: 10px; color: var(--gs-orange); }
#beschrijving-van-de-dag-details .sidebar-content .imagebox .agenda-date { align-items: center; background: var(--gs-orange); border-bottom-left-radius: var(--gs-corner-small); border-bottom-right-radius: var(--gs-corner-small); color: var(--gs-white); display: flex; right: 30px; padding: 10px; position: absolute; top: 0; }
#beschrijving-van-de-dag-details .sidebar-content .imagebox .agenda-day { 
    font-size: 50px; margin: 0 10px 0 0; font-style: normal; color: var(--gs-white); line-height: 0; }
#beschrijving-van-de-dag-details .sidebar-content .imagebox .agenda-date-other { display: inline-block; margin-bottom: 0; max-width: 50px; text-align: left; width: fit-content; word-spacing: 100px; margin-top: 0px; color: var(--gs-white); font-style: normal; }
#beschrijving-van-de-dag-details .content h3  { color: var(--gs-orange); font-size: 1.2rem; text-align: left; margin-top: 0; font-family: RobotoBl; font-weight: normal; }
#beschrijving-van-de-dag-details .content { padding: 30px 30px 20px 15px; }
#beschrijving-van-de-dag-details .sidebar-content { min-height: 100%; background: var(--gs-lightorange-bg); position: relative; border-bottom-right-radius: 100px; }
#beschrijving-van-de-dag-details .sidebar-content p { text-align: center; font-size: 1rem; font-style: italic; margin-top: 40px; margin-bottom: 40px; color: var(--gs-blue); }
#beschrijving-van-de-dag-details .content h4 { text-align: left; font-size: 1.2rem; font-family: RobotoBl; font-weight: normal; }


/* ***** Cursus overzicht ************************* */
#filters { margin-top: -150px; margin-bottom: 50px; }
.filters-title { font-size: 2.5rem; }
.filters-content { display: flex; align-items: flex-start; justify-content: center; margin-bottom: 30px; }
.filters-content a { font-family: 'RobotoLi'; font-size: 1.5rem;  margin: 0.5rem 0px 0.5rem 12px; }
.filters-content img { width: 45px; margin-left: 12px; }
.filters-options { display: flex; align-items: center; padding: 10px 0px; border-bottom: 2px solid var(--gs-lightorange); border-top: 2px solid var(--gs-lightorange); margin-bottom: 75px; flex-wrap: wrap; }
.filters-options p { font-size: 1rem; }
.filters-option { display: flex; align-items: center; margin: 10px 20px; text-align: center; }
.option-title { margin-bottom: 0px; margin-right: 10px; }
#onderwerpen-select {
    border: 2px solid #E0E2EE; padding: 8px 12px; border-radius: 50px;
    color: #656565; max-width: 350px; width: 100%; -moz-appearance: none !important; -webkit-appearance: none !important; appearance: none !important; background-color: var(--gs-white); }
.niveau-container { border: 2px solid var(--gs-orange); padding: 10px 15px; border-radius: 50px; margin-right: 10px; opacity: 0.5; height: 50px; min-width: 65px; }
.niveau-container.active { background: var(--gs-lightorange); opacity: 1; }
.niveau-container img { width: 25px; }
.type-container { border: 2px solid var(--gs-blue); padding: 10px 15px; border-radius: 50px; margin-right: 10px; opacity: 0.5; height: 50px; min-width: 65px; }
.type-container.active { background: var(--gs-lightblue); opacity: 1; }
.type-container img { width: auto; height: 25px; }
.exit-button { width: 50px; margin-left: 20px; }
.agenda-type { position: absolute; top: 0; right: 30px; text-align: center; background: var(--gs-blue); padding: 15px 10px; border-bottom-left-radius: var(--gs-corner-small); border-bottom-right-radius: var(--gs-corner-small); min-width: 100px; }
.agenda-type img { width: auto; height: 22px; margin: 0px 5px;}
.agenda-niveau img { width: auto; height: 20px; margin: 0px; }
.agenda-niveau { position: absolute; top: 0px; left: 30px; background: var(--gs-orange); padding: 15px 10px; border-bottom-left-radius: 10px; border-bottom-right-radius: 10px; min-width: 90px; text-align: center; }
#agenda .agenda-loc-container { margin-bottom: 0px; position: absolute; left: 30px; right: 30px; bottom: 30px; }
#agenda .agenda-loc-container .agenda-location { margin-bottom: 15px; }
.filters-container #agenda { margin-bottom: 50px; }
.end-content-buttons { display: flex; justify-content: center; }
.end-content-buttons a.button { margin-left: 50px; margin-right: 50px; }
#filters .style-b:hover { box-shadow: var(--gs-shadow); }
.filters-container .agenda-location { position: relative; bottom: 0; }
.filters-container .agenda-card-content-box .button { position: relative; bottom: 0; }

/* ***** Cursus details ************************* */
.praktische-informatie h3 { color: var(--gs-orange); font-size: 1.5rem; margin: 0.5rem 0; text-align: left; font-family: 'RobotoBl'; font-weight: normal; }
.praktische-informatie ul:not(.regular) li { font-size: 1rem; margin-bottom: 10px; position: relative; }
.praktische-informatie .info .icon img { max-width: 20px; margin-right: 10px; position: relative; top: 5px; }
.praktische-informatie h4 { color: var(--gs-blue); font-size: 1.2rem; }
.praktische-informatie .block { height: 100%; }
.praktische-informatie ul:not(.regular) { list-style-type: none; padding-left: 2rem; position: relative; }
.praktische-informatie ul:not(.regular) .marks::before { content: ""; display: inline-block; background-image: url(https://7512680.fs1.hubspotusercontent-na1.net/hubfs/7512680/Geosquare%20academy/images/ok.png); background-size: contain; background-repeat: no-repeat; width: 1rem; height: 1rem; margin-right: 10px; position: absolute; left: -30px; top: 2px; }
.praktische-informatie ul:not(.regular) .close::before { content: ""; display: inline-block; background-image: url(https://7512680.fs1.hubspotusercontent-na1.net/hubfs/7512680/Geosquare%20academy/images/icons/closebtn.png); background-size: contain; background-repeat: no-repeat; width: 1rem; height: 1rem; margin-right: 10px; position: absolute; left: -30px; top: 7px; }
.praktische-informatie .agenda-type { background: var(--gs-blue); border-bottom-left-radius: var(--gs-corner-small); border-bottom-right-radius: var(--gs-corner-small); right: 60px; min-width: 100px; padding: 15px 10px; position: absolute; top: 0; left: auto; }
.praktische-informatie .agenda-niveau { background: var(--gs-orange); border-bottom-left-radius: var(--gs-corner-small); border-bottom-right-radius: var(--gs-corner-small); left: auto; min-width: 90px; padding: 15px 10px; position: absolute; top: 0; right: 60px; }
.praktische-informatie .more-links { border: 0; border-radius: 0; box-sizing: border-box; cursor: pointer; display: inline-block; font-family: RobotoBl; font-weight: normal; font-size: 1rem; margin: 0; padding: 0; }
.praktische-informatie .more-links img { margin-right: 0; max-width: 12px; transform: rotate(180deg); margin-left: 20px; margin-top: -4px; }
.course-options { display: flex; flex-direction: column; gap: 8px; padding-top: 1rem; font-size: 0.85rem; }
.option { display: flex; align-items: center; gap: 8px; }
.icons { display: flex; gap: 2px; align-items: center; }
.icons img { width: 1rem; height: 1rem; }
#ga-1-cursussen-inhoud  { margin-bottom: 50px; }
#ga-1-cursussen-inhoud h2 { color: var(--gs-orange); font-size: 1.5rem; margin: 0.5rem 0; text-align: left; font-family: 'RobotoBl'; font-weight: normal; }
#ga-1-cursussen-inhoud .right-image-banner-container { display: flex; padding: 0; }
#ga-1-cursussen-inhoud .right-image-banner-image { width: 50%; border-top-left-radius: 300px; background-position: center center; background-size: cover; display: flex; justify-content: center; overflow: hidden; position: relative; }
#ga-1-cursussen-inhoud .right-image-banner-content { width: 50%; padding: 30px; }
#ga-1-cursussen-inhoud .right-image-banner-content .f-title, #ga-1-cursussen-inhoud .right-image-banner-content h3,  #ga-1-cursussen-inhoud .right-image-banner-content h2 { text-align: left; }
.bg-overlay { height: 100%; left: 0; opacity: 0.9; position: absolute; top: 0; width: 100%; background: var(--gs-gradient); }
#ga-1-cursussen-inhoud .right-image-banner-image h4 {  z-index: 1; color: var(--gs-white); max-width: 370px; text-align: left; position: absolute; top: 250px; font-size: 2.2rem; font-weight: 300; font-family: 'RobotoTh'; }
#ga-1-cursussen-inhoud .right-image-banner-image h4::before { content: ""; position: absolute; left: -30px; top: -40px; width: 2px; height: 80px; background-color: var(--gs-orange); }


/* ***** Maatwerk ************************* */
.tag { border: 1px solid var(--gs-orange); border-radius: 6px; padding: 0.3rem 0.8rem; margin: 0.3rem; display: inline-block; font-size: 0.95rem; color: var(--gs-blue); background-color: var(--gs-white); }
.tag.orange { background-color: var(--gs-lightorange); color: var(--gs-blue); border-color: var(--gs-orange); }
.section-label { font-weight: 500; color: var(--gs-blue); }
.agenda-date-other { margin-bottom: 0px; display: inline-block; word-spacing: 100px; text-align: left; width: fit-content; max-width: 50px; }
.ga-meerwerk .more-links img { max-width: 16px; margin-right: 14px; }
.ga-meerwerk .more-links { font-family: RobotoBl; border: 0; border-radius: 0; box-sizing: border-box; cursor: pointer; display: block; font-family: RobotoBl; font-size: 1rem; margin: 20px auto 0 30px; padding: 0; }


/* ***** Docenten ************************* */
#cursussen-docent .cursussen-docent-content .image { width: 400px; margin-right: 25px; }
#cursussen-docent .cursussen-docent-content .image img { max-width: 150px; }
#cursussen-docent .cursussen-docent-content .content h5 { color: var(--gs-orange); font-weight: 600; font-size: 1.5rem; }
#cursussen-docent .cursussen-docent-content .social-icon { max-height: 30px; }


/* ***** Left image banner ************************* */
#left-image-banner  { margin-bottom: 50px; }
#left-image-banner .left-image-banner-container { display: flex; padding: 0px; }
.left-image-banner-image { width: 35%; border-top-right-radius: 150px; }
.left-image-banner-content { width: 65%; padding: 50px 70px; }
.left-image-banner-content .f-title, .left-image-banner-content h3,  .left-image-banner-content h2 { text-align: left; }
#left-image-banner.ga-voorbeelden-praktijk .left-image-banner-content h3 { text-align: left; color: var(--gs-orange); font-family: RobotoBl; font-weight: normal; }
#left-image-banner.ga-voorbeelden-praktijk .left-image-banner-content {  padding: 35px 50px; }
#left-image { margin-bottom: 50px; }
#left-image .left-image-container { display: flex; align-items: stretch; padding: 0px; overflow: hidden; }
#left-image .left-image-container .left-image-image { width: 35%; display: flex; flex-direction: column; background: #FFE0B2; border-bottom-right-radius: 150px; }
#left-image .left-image-container .left-image-image .back-image { flex: 1; background-position: center; background-size: cover; border-bottom-left-radius: 150px; }
#left-image .left-image-container .left-image-image button { margin-top: 65px; margin-bottom: 65px; }
#left-image .left-image-container .left-image-content { width: 65%; display: flex; flex-direction: column; padding: 50px; align-items: flex-start; }
#left-image .left-image-container .left-image-content h4 { font-weight: 700px; font-family: 'RobotoBl'; color: var(--gs-orange); margin-bottom: 10px }
#left-image .left-image-container .left-image-content h5 { text-align: left; font-weight: 900; }


/* ***** Quotes ************************* */
#quotes { margin: 0px 0px 80px 0px; }
.quotes-container { display: flex; flex-direction: column; position: relative; padding-bottom: 100px; }
.the-quote { display: flex; align-items: flex-start; justify-content: flex-start; }
.the-quote span { color: var(--gs-orange); font-size: 8.8rem; line-height: 110px; height: fit-content; margin-right: 10px; }
.the-quote p { color: var(--gs-blue); font-weight: 300; font-style: italic; font-size: 1.7rem; }
.the-quote p span { position: absolute; width: fit-content; color: var(--gs-orange); font-size: 8.8rem; line-height: 0px; display: inline-flex; height: fit-content; font-style: normal; font-weight: 300; transform: rotate(180deg); padding-left: 20px; margin-left: 10px; }
.author { margin-top: 30px; display: flex; justify-content: center; align-items: flex-start; width: fit-content; position: absolute; bottom: 0px; left: 50%; }
.author-line { height: 2px; width: 80px; background: var(--gs-orange); margin-right: 25px; margin-top: 15px; }
.author-content h3 { margin-top: 0px; margin-bottom: 10px; text-align: left; color: var(--gs-orange); font-weight: 600; }
.author-content p { color: var(--gs-orange); margin-bottom: 0; }
#quotes.versie-2 .author-content h3 { color: var(--gs-blue); font-weight: normal; margin-bottom: 10px; margin-top: 0; text-align: left; font-size: 1.2rem; font-family: 'RobotoBo'; }
#quotes.versie-2 .author-content p { color: var(--gs-blue); margin-bottom: 0; }
#quotes.versie-2 .author-content a { align-items: flex-start; display: inline-flex; font-family: RobotoBl; gap: 5px; margin-top: 10px; max-width: 240px; text-align: left; }
#quotes.versie-2 .author-content a::before { background: url(https://7512680.fs1.hubspotusercontent-na1.net/hubfs/7512680/Geosquare%20academy/images/icons/left-arrow.png) no-repeat 50%; background-size: contain; content: ""; height: 15px; width: 20px; transform: rotate(-180deg); margin-top: 3px; }
#quotes.versie-2 .quotes-container { padding-bottom: 150px; }
#quotes.versie-2 .author-image { max-width: 100px; overflow: hidden; height: 100px; border-radius: 150px; margin-right: 20px; }
#quotes.versie-2 .author-image img { width: 100%; }


/* ***** xxx ************************* */
#book-banner { margin-bottom: 50px; }
#book-banner .book-banner-container { display: flex; flex-direction: column; align-items: center; justify-content: center; }
#book-banner .book-banner-container img { max-width: 450px; width: 100%; }


/* ***** Logos ************************* */
.logo-grid { padding: 2rem 0; }
.logo-grid img { max-width: 100%; height: auto; max-height: 100px; object-fit: contain; padding: 0.5rem; transition: transform 0.2s ease-in-out; }


/* ***** Video ************************* */
#v1ideo { margin-bottom: 50px; }
.video-content {  display: flex; flex-direction: column; align-items: center; justify-content: center; position: relative; }
.video-content video { max-width: 900px; width: 100%; border-radius: var(--gs-corner); } 
.video-content img { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 100px; filter: invert(1); } 
.embed_container { display: block !important; margin-left: auto; margin-right: auto; } 

/* ***** Contact ************************* */
.ga-contact-content.margin-50 {
   margin-top: 50px !important; }
.ga-contact-content.minus-margin-top{
   margin-top: 50px !important; }
.ga-contact-content .content-with-subheader p {
   margin-top: 10px !important; }
.ga-contact-content .content-with-subheader h3 { color: var(--gs-blue); font-size: 1rem;
    margin: 0px !important; font-family: RobotoBl; }
#map-container { position: relative; width: 99vw; height: 60vh; border: 1px solid var(--gs-lightblue); background: var(--gs-lightgrey); border-radius: var(--gs-corner-small); }
#map-container-small { position: relative; width: 60vw; height: 40vh; border: 1px solid var(--gs-lightblue); background: var(--gs-lightgrey); }


/* ***** Tooltips ************************* */
.custom-tooltip { position: relative; display: inline-block; }
.tooltip-text { visibility: hidden; background-color: var(--gs-antracite); color: var(--gs-white); font-size: 0.85rem; text-align: center; border-radius: var(--gs-corner-small); padding: 4px 8px; position: absolute; bottom: 125%; /* boven het icoon */ left: 50%; transform: translateX(-50%); opacity: 0; transition: opacity 0.2s; white-space: nowrap; z-index: 99999; }
.custom-tooltip:hover .tooltip-text { visibility: visible; opacity: 1; }


/* ***** Layout helpers ************************* */
.max-width-1100 { max-width: 1100px; margin: 0 auto; }
.max-width-1360 { max-width: 1360px; margin: 0 auto; }
.max-width-1440 { max-width: 1440px; margin: 0 auto; width: 100%; }


/* Over Ons Section */

#over-ons {
    margin-bottom: 80px;
}



/* ***** Responsive ************************* */
@media (min-width: 1400px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {  max-width: 1550px; }
   }

@media screen and (min-width: 1200px) and (max-width: 1400px) {
    #middle-banner .banner-inner .banner-right img { width: 450px; top: -75px; }
    .footer-container { border-top-left-radius: 100px; }
   }

@media screen and (min-width: 992px) and (max-width: 1199px) {
   #under-hero .cards-container { justify-content: center; flex-wrap: wrap; }
   #under-hero .cards-container .card { margin-bottom: 25px; height: auto; min-height: 400px; }
   #middle-banner .banner-inner .banner-right img { width: 400px; top: -55px; }
   .footer-container { border-top-left-radius: 100px; }
   #ga-1-cursussen-inhoud .right-image-banner-container { flex-direction: column; border-top-right-radius: 150px; }
   #ga-1-cursussen-inhoud .right-image-banner-image { height: 300px; width: 100%; }
   #ga-1-cursussen-inhoud .right-image-banner-content { width: 100%; }
   }

@media screen and (min-width: 768px) and (max-width: 991px) {
   #ga-1-cursussen-inhoud .right-image-banner-image {
        height: 500px !important;
        border-top-left-radius: 180px !important; }
   #ga-1-cursussen-inhoud .right-image-banner-image h4 {
        top: 150px !important; }
   #under-hero .cards-container { justify-content: center; flex-wrap: wrap; }
   #under-hero .cards-container .card { margin-bottom: 25px; height: auto; min-height: 400px; }
   #middle-banner .banner-inner { flex-direction: column; }
   #middle-banner .banner-inner .banner-left { width: 100%; }
   #middle-banner .banner-inner .banner-right { width: 100%; display: flex; justify-content: center; }
   #middle-banner .banner-inner .banner-right img { position: relative; width: 100%; top: 0px; max-width: 350px; }
   .footer-container { border-top-left-radius: 100px; }
	 #under-hero .cards-image-container .card { margin-bottom: 25px; }
	 #under-hero .cards-image-container.row {
     --bs-gutter-x: 1.5rem; }
		#under-hero .event-details-block { background: transparent; }
   }

@media screen and (min-width: 0px) and (max-width: 767px) {
  #ga-1-cursussen-inhoud .right-image-banner-image h4 {
    max-width: 300px !important;
    font-size: 2rem !important; }
   #ga-1-cursussen-inhoud .right-image-banner-image {
     height: 500px !important;
     border-top-left-radius: 180px !important; width: 100%; }
	#ga-1-cursussen-inhoud .right-image-banner-image h4 {
    top: 150px !important; }
	/*.programma-details-container .programma-details-spreakers-container .content { color: var(--gs-orange); 
	   font-size: 18px; text-align: left; }*/
	.detail-content-popup .popup-body .time-container { text-align: left;	border-right: 0; }
	.programma-details-content-popup-container .programma-details-content-popup { margin-bottom: 40px; }
	.programma-details-container .time-container { text-align: left; border-right: 0; }
	#plenaire-sprekers .plenaire-sprekers-content .content-container { flex-direction: column; text-align: center; }
	#plenaire-sprekers .plenaire-sprekers-content .content-container .content{ margin-top: 20px; }
	#plenaire-sprekers .plenaire-sprekers-content .content-container p, #plenaire-sprekers .plenaire-sprekers-content .content-container h5 { text-align: center; }
  #under-hero .cards-container { justify-content: center; flex-wrap: wrap; }
  #under-hero .cards-container .card { margin-bottom: 25px; width: 100%; height: auto; }
  #middle-banner .banner-inner { flex-direction: column; }
  #middle-banner .banner-inner .banner-left { width: 100%; }
  #middle-banner .banner-inner .banner-right { width: 100%; display: flex; justify-content: center; }
  #middle-banner .banner-inner .banner-right img { position: relative; width: 100%; top: 0px; max-width: 350px; }
  .footer-container { border-top-left-radius: 50px; }
  #hero { border-bottom-right-radius: 100px; }
  #middle-banner { margin: 50px 0px; }
  #agenda, #over-ons { margin-bottom: 50px; }
  .footer-content { flex-direction: column; }
  .footer-logo { width: 100%; justify-content: center; margin-bottom: 35px; }
  .footer-column { width: 100%; margin-bottom: 35px; }
  .footer-content { padding: 50px 35px; }
  .footer-copyright { flex-direction: column; }
  .footer-copyright p { margin-right: 0px; margin-bottom: 20px; text-align: center; }
  .footer-copyright a { margin-bottom: 20px; margin-right: 0px; border-left: none; padding-left: 0px; padding-right: 0px; }
   #agenda .agenda-content .agenda-card { margin: 0px 20px; margin-bottom: 25px; width: 100%; }
   .header .header-search { display: none; }
   .header .header-logo img { max-width: 200px; }
   .header { padding: 15px 30px; }
   .header ul {
        top: 75px!important; }
	 #under-hero .cards-image-container.row {
      --bs-gutter-x: 0rem; }
   #under-hero .cards-image-container .card { margin-bottom: 25px; }
   #under-hero .event-details-block { background: transparent; }
   #cursussen-docent .cursussen-docent-content .content-container { flex-direction: column; text-align: center; }
   #cursussen-docent .cursussen-docent-content .content-container .content {	margin-top: 1.2rem; }
  #hero.hero-2 { min-height: calc(100dvh - 9.25rem); min-height: calc(100vh - 9.25rem);}
  #hero .hero-bg-overlay{  border-bottom-right-radius: 100px;}
  .scroll-btn{bottom: -2.1rem;     height: 4.5rem; width: 4.5rem;}
  .scroll-btn img { height: 1.32rem;  width: 1.9rem;}
	 }

@media screen and (min-width: 0px) and (max-width: 1250px) {
    .header .header-search { margin-right: 30px; }
    .header ul:not(.hs-menu-children-wrapper) { position: fixed; padding: 25px; background: var(--gs-blue); right: 0px; max-width: 90%; top: 75px; transform: translateX(100%); opacity: 0; transition: transform 0.3s ease, opacity 0.3s ease; }
    .header ul, ul.hs-menu-children-wrapper { display: block; text-align: right; }
    .header ul.active { transform: translateX(0); opacity: 1; }
    .header ul li { margin-left: 0px; margin-bottom: 15px; } 
    .header ul li a { color: var(--gs-white); } 
    .header-hamburger { display: block; }
    ul.hs-menu-children-wrapper { margin: 10px 0px 10px 0px; padding-top: 10px; padding-right: 10px; border-right: 1px solid var(--gs-lightblue); }
    ul.hs-menu-children-wrapper:before { content: ''; margin-left: 0; top: 0; }
    ul.hs-menu-children-wrapper:after { content: ''; margin-left: 0; }
    ul.hs-menu-children-wrapper li a { color: var(--gs-lightorange); }
     }

@media screen and (min-width: 768px) and (max-width: 1250px) {
    html, body { font-size: 15px; }
    .header .header-search { margin-right: 30px; }
    .header ul { width: 350px; top: 92px; }
     }

@media screen and (max-width: 768px) {
    html, body { font-size: 14px; }
    #quotes { margin: 75px 0px; }
    .quotes-container { padding-bottom: 0px; }
    .the-quote span { 
      font-size: 5.8rem; line-height: 65px; margin-right: 10px; }
    .the-quote p { 
      font-size: 1.3rem; }
    .the-quote p span { 
      font-size: 5.8rem; margin-left: 10px; }
    .author { position: relative; flex-direction: column; justify-content: center; align-items: center; text-align: center; width: 100%; left: 0px; margin-top: 35px; }
    .author-line { margin-top: 0px; margin-right: 0px; margin-bottom: 15px; }
    .author-content h3, .author-content p { text-align: center; }
    }

@media screen and (min-width: 992px) and (max-width: 1199px) {
    #hero.hero-2 .container .h-title, h1.h-title { font-size: 4.5rem; }
    #left-image .left-image-container .left-image-image, #left-image .left-image-container .left-image-content { width: 50%; }
    }

@media screen and (max-width: 992px) {
    #hero.hero-2 .container .h-title, h1.h-title { font-size: 4rem; }
    .filters-content { display: block; margin-bottom: 10px; }
    .end-content-buttons { flex-direction: column; }
    #left-image-banner .left-image-banner-container { flex-direction: column; border-top-right-radius: 150px; }
    .left-image-banner-image { height: 300px; width: 100%; }
    .left-image-banner-content { width: 100%; }
    #left-image .left-image-container { flex-direction: column-reverse; border-bottom-right-radius: 70px; }
    #left-image .left-image-container .left-image-image { border-bottom-right-radius: 70px; }
    #left-image .left-image-container .left-image-image, #left-image .left-image-container .left-image-content { width: 100%; }
    #left-image .left-image-container .left-image-image .back-image { height: 300px; width: 100%; flex: auto; }
    }

@media screen and (max-width: 500px) {
    #hero.hero-2 .container .h-title, h1.h-title { font-size: 2.8rem; }
    #hero.hero-2 .container h2.h-subtitle, h2.h-subtitle { font-size: 1.8rem; }
    .filters-option { margin: 10px 0px; }
    .left-image-banner-content, #left-image .left-image-container .left-image-content { padding: 25px; }
    #left-image .left-image-container .left-image-image button { margin-top: 50px; margin-bottom: 50px; }
    #ga-1-cursussen-inhoud .right-image-banner-content  { padding: 25px; }
    }