@import 'colors.css';
@import 'forms.css';
@font-face {font-family: Poppins;src: url('../fonts/Poppins.ttf');font-display: swap;}
@font-face {font-family: Cairo;src: url('../fonts/Cairo.ttf');font-display: swap;}
@font-face {font-family: Segoe Ui;src: url('../fonts/SegoeUI.ttf');}
@font-face {font-family: Alro;src: url('../fonts/Alro.ttf');}
@font-face {font-family: Raleway;src: url('../fonts/Raleway.ttf');}
@font-face {font-family: Gotham;src: url('../fonts/Gotham-Book.otf');}

html,body {padding:0;margin:0;}
* {box-sizing: border-box;font-family: 'Poppins', 'Cairo', sans-serif;}
* ::-webkit-scrollbar-track{background-color:rgb(184 164 247 / 20%)}
* ::-webkit-scrollbar{background-color:transparent;width:10px;height: 12px;}
* ::-webkit-scrollbar-thumb{border-inline:2px solid transparent;border-block:3px solid transparent;border-radius:12px;background-clip:content-box;background-color:rgb(109 60 240 / 50%);}
* ::-webkit-scrollbar-thumb:hover{background-color:var(--brand-500);}
::selection {background: var(--brand-500);color: #FFF;}

/* Font Class */
.ff-segoe-ui, .ff-segoe-ui * {box-sizing: border-box;font-family: 'Segoe Ui', 'Cairo', sans-serif;}
.ff-alro, .ff-alro * {box-sizing: border-box;font-family: 'Alro', 'Cairo', sans-serif;}
.ff-raleway, .ff-raleway * {box-sizing: border-box;font-family: 'Raleway', 'Cairo', sans-serif;}
.ff-gotham, .ff-gotham * {box-sizing: border-box;font-family: 'Gotham', 'Cairo', sans-serif;}

/* GLOBAL */
a {color:currentColor;text-decoration:none;}
a:hover {color: var(--brand-500);}
img {display: block;}

.no-scrollbar ::-webkit-scrollbar {display:none;}

.no-outline { outline: none !important; }
.no-outline:focus { outline: none !important; }
.no-outline:focus-visible {outline: none !important;}

.no-box-shadow {box-shadow: none;}
.no-box-shadow:focus {box-shadow: none;}

.cursor-pointer {cursor:pointer;}

/* Masque les éléments animés par GSAP le temps que le script démarre (retiré par animations.js ou après 3 s) */
.gsap-pending [data-intro], .gsap-pending [data-reveal] {visibility: hidden;}

/* GENERAL */
body {position: relative;display: flex;flex-flow: column;width:100%;min-height:100vh;font-size: 16px;line-height: 1.5;overflow-x: hidden;background: var(--brand-50);color: var(--brand-ink);}
body::before {content: "";position: fixed;inset: 0;z-index: -2;pointer-events: none;
  background:
    radial-gradient(60vw 60vw at 110% -10%, rgb(184 164 247 / 45%), transparent 60%),
    radial-gradient(50vw 50vw at -15% 105%, rgb(109 60 240 / 22%), transparent 60%),
    radial-gradient(40vw 40vw at 50% 50%, rgb(255 255 255 / 70%), transparent 70%),
    var(--brand-50);}
main {position:relative;width: 100%;}

.btn-primary {--bs-btn-bg: var(--brand-700);--bs-btn-border-color: var(--brand-700);--bs-btn-hover-bg: var(--brand-800);--bs-btn-hover-border-color: var(--brand-800);--bs-btn-active-bg: var(--brand-900);--bs-btn-active-border-color: var(--brand-900);--bs-btn-disabled-bg: var(--brand-500);--bs-btn-disabled-border-color: var(--brand-500);--bs-btn-focus-shadow-rgb: 74, 31, 200;}
.btn-outline-primary {--bs-btn-color: var(--brand-700);--bs-btn-border-color: var(--brand-700);--bs-btn-hover-bg: var(--brand-700);--bs-btn-hover-border-color: var(--brand-700);--bs-btn-active-bg: var(--brand-800);--bs-btn-active-border-color: var(--brand-800);}

/* HEADER / NAVBAR */
.site-header {position: sticky;top: 0;z-index: 1030;background: var(--brand-gradient);box-shadow: 0 10px 30px -15px rgb(30 11 87 / 60%);transition: background-color .3s ease, box-shadow .3s ease;}
.site-header::after {content: "";position: absolute;left: 0;right: 0;bottom: 0;height: 1px;background: linear-gradient(90deg, transparent, rgb(241 215 154 / 70%), transparent);}
.site-header.is-scrolled {background: rgb(42 15 134 / 88%);}
/* Pas de backdrop-filter sous 992px : il ferait du header le bloc conteneur de l'offcanvas */
@media (min-width: 992px) {.site-header.is-scrolled {-webkit-backdrop-filter: blur(14px);backdrop-filter: blur(14px);}}
@media (max-width: 991px) {.site-header.is-scrolled {background: var(--brand-gradient);}}
nav.navbar {height: 88px;padding-block: 0;transition: height .3s ease;}
.site-header.is-scrolled nav.navbar {height: 72px;}
nav.navbar .container-xxl {gap: 1rem;}
.brand {display: flex;align-items: center;gap: 1.1rem;padding: 0;margin: 0;color: #FFF;}
.brand:hover {color: #FFF;}
.brand img {height: 50px;width: auto;}
.brand-divider {width: 1px;height: 42px;background: rgb(255 255 255 / 45%);}
.brand-text {font-size: .72rem;line-height: 1.4;letter-spacing: .02em;text-transform: uppercase;color: rgb(255 255 255 / 88%);white-space: normal;max-width: 320px;}
.navbar-toggler {color: #FFF;font-size: 2rem;padding: 0;}
nav.navbar .nav-link {position: relative;color: rgb(255 255 255 / 78%);text-transform: uppercase;font-size: .82rem;font-weight: 500;letter-spacing: .06em;padding: .5rem .85rem !important;}
nav.navbar .nav-link::after {content: "";position: absolute;left: .85rem;right: .85rem;bottom: .15rem;height: 2px;border-radius: 2px;background: #FFF;transform: scaleX(0);transform-origin: left;transition: transform .35s cubic-bezier(.2,.8,.2,1);}
nav.navbar .nav-link:hover, nav.navbar .nav-link.active {color: #FFF;}
nav.navbar .nav-link:hover::after, nav.navbar .nav-link.active::after {transform: scaleX(1);}
nav.navbar .nav-link.disabled {opacity: 0.4;}
nav.navbar .nav-link-account {display: inline-flex;align-items: center;gap: .45rem;}
nav.navbar .nav-link-account i {font-size: 1.05rem;}
.nav-item:has(.nav-item.disabled), .nav-item:has(.nav-link.disabled) {cursor: not-allowed;}

/* BOUTONS CTA */
.btn-cta {position: relative;display: inline-flex;align-items: center;justify-content: center;gap: .9rem;padding: .95rem 2.6rem;border: 0;border-radius: 999px;background: var(--brand-gradient-cta);color: #FFF;font-weight: 700;letter-spacing: .12em;text-transform: uppercase;line-height: 1;box-shadow: var(--brand-shadow), inset 0 1px 0 rgb(255 255 255 / 35%);overflow: hidden;isolation: isolate;transition: box-shadow .3s ease;}
.btn-cta:hover, .btn-cta:focus-visible {color: #FFF;box-shadow: 0 22px 45px -16px rgb(74 31 200 / 75%), inset 0 1px 0 rgb(255 255 255 / 45%);}
.btn-cta:focus-visible {outline: 3px solid var(--brand-gold-soft);outline-offset: 3px;}
.btn-cta i {font-size: .9em;transition: transform .3s ease;}
.btn-cta:hover i {transform: translateX(4px);}
.btn-cta .btn-shine {position: absolute;top: 0;left: -60%;width: 45%;height: 100%;z-index: -1;background: linear-gradient(100deg, transparent, rgb(255 255 255 / 45%), transparent);transform: skewX(-20deg);pointer-events: none;}
.btn-cta-sm {padding: .7rem 1.6rem;font-size: .82rem;border: 1px solid rgb(255 255 255 / 35%);}
.btn-cta-lg {padding: 1.15rem 3.4rem;font-size: 1.2rem;}
.btn-ghost {display: inline-flex;align-items: center;gap: .6rem;padding: .95rem 2.2rem;border-radius: 999px;border: 1.5px solid var(--brand-300);color: var(--brand-800);font-weight: 600;letter-spacing: .1em;text-transform: uppercase;font-size: .9rem;background: rgb(255 255 255 / 60%);transition: background-color .3s ease, border-color .3s ease, color .3s ease;}
.btn-ghost:hover {background: #FFF;border-color: var(--brand-500);color: var(--brand-700);}

/* CONTENT */
.body-overlay {display: none;}
.content {position: relative;flex: 1;display:flex;flex-flow: column;width: 100%;align-items: center;padding: 0 1.25rem 4rem;}
.content.content-home {padding: 0;align-items: stretch;}
.main-content {position:relative;width:100%;}
.content-box {position:relative;background:#FFF;color:var(--brand-ink);width:100%;max-width: 1200px;padding: 2rem;border-radius: 24px;border: 1px solid var(--brand-100);box-shadow: 0 30px 60px -30px rgb(42 15 134 / 35%) !important;z-index: 1;margin-top: 1rem;}
.registration-box {max-width: 960px;margin-inline: auto;}

/* ÉLÉMENTS DE MARQUE PARTAGÉS */
.gold-divider {display: flex;align-items: center;gap: .75rem;width: min(100%, 560px);margin-inline: auto;}
.gold-divider .line {flex: 1;height: 1px;background: linear-gradient(90deg, transparent, var(--brand-gold));transform-origin: right;}
.gold-divider .line + .star + .line {background: linear-gradient(90deg, var(--brand-gold), transparent);transform-origin: left;}
.gold-divider .star {width: 18px;height: 18px;color: var(--brand-gold);flex: none;}
.event-meta {display: flex;flex-flow: wrap;justify-content: center;gap: .75rem 2.5rem;list-style: none;padding: 0;margin: 0;font-weight: 600;font-size: 1.15rem;color: var(--brand-ink);}
.event-meta li {display: flex;align-items: center;gap: .65rem;}
.event-meta i {font-size: 1.45rem;color: var(--brand-700);}
.eyebrow {display: inline-block;font-size: .8rem;font-weight: 600;letter-spacing: .32em;text-transform: uppercase;color: var(--brand-500);margin: 0 0 .5rem;}
.section-title {font-size: clamp(2rem, 4vw, 3rem);font-weight: 800;color: var(--brand-900);line-height: 1.1;margin: 0 0 1.25rem;}

/* HERO (ACCUEIL) */
.hero {position: relative;display: flex;align-items: center;min-height: calc(100vh - 88px);min-height: calc(100svh - 88px);padding-block: 2rem 6rem;overflow: hidden;}
.hero-landscape {position: absolute;top: 0;right: 0;bottom: 0;width: min(32vw, 520px);z-index: 0;pointer-events: none;}
.hero-landscape img {width: 100%;height: 100%;object-fit: cover;object-position: center;opacity: .95;-webkit-mask-image: linear-gradient(to right, transparent 0%, #000 45%);mask-image: linear-gradient(to right, transparent 0%, #000 45%);}
.hero-orb {position: absolute;border-radius: 50%;pointer-events: none;z-index: 0;filter: blur(2px);}
.hero-orb-1 {width: 46vw;height: 46vw;left: -14vw;bottom: -24vw;background: radial-gradient(circle at 35% 35%, rgb(184 164 247 / 55%), rgb(109 60 240 / 12%) 60%, transparent 70%);}
.hero-orb-2 {width: 22vw;height: 22vw;right: 24vw;top: -8vw;background: radial-gradient(circle, rgb(217 206 251 / 80%), transparent 70%);}
.hero-sparkles {position: absolute;inset: 0;pointer-events: none;z-index: 0;}
.hero-sparkles span {position: absolute;width: 6px;height: 6px;border-radius: 50%;background: radial-gradient(circle, #FFF 0%, var(--brand-gold-soft) 45%, transparent 70%);box-shadow: 0 0 10px 2px rgb(241 215 154 / 60%);opacity: .7;}
.hero-inner {position: relative;z-index: 1;display: grid;grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);align-items: center;gap: 2rem;width: 100%;}
.hero-art {position: relative;width: 100%;max-width: 620px;justify-self: start;}
.hero-art-frame {position: relative;}
.hero-art-frame img {width: 100%;height: auto;mix-blend-mode: multiply;-webkit-mask-image: linear-gradient(to bottom, transparent, #000 6%, #000 82%, transparent), linear-gradient(to right, transparent, #000 6%, #000 88%, transparent);-webkit-mask-composite: source-in;mask-image: linear-gradient(to bottom, transparent, #000 6%, #000 82%, transparent), linear-gradient(to right, transparent, #000 6%, #000 88%, transparent);mask-composite: intersect;}
.hero-art-ring {position: absolute;top: 12%;right: -6%;width: 62%;aspect-ratio: 1;border-radius: 50%;border: 1px solid rgb(217 164 65 / 55%);pointer-events: none;}
.hero-copy {display: flex;flex-flow: column;align-items: center;text-align: center;padding-inline-end: min(6vw, 90px);}
.hero-logo {width: min(100%, 680px);margin: 0;}
.hero-logo img {width: 100%;height: auto;filter: drop-shadow(0 22px 30px rgb(74 31 200 / 22%));}
.hero-copy .gold-divider {margin-block: 1.5rem 1.75rem;}
.hero-tagline {padding-inline-start: .38em;display: flex;flex-flow: wrap;justify-content: center;align-items: center;margin: 1.75rem 0 2.25rem;font-size: 1.1rem;font-weight: 500;letter-spacing: .38em;text-transform: uppercase;color: var(--brand-500);}
.hero-tagline .sep {color: var(--brand-gold);letter-spacing: 0;margin-inline: .5rem .9rem;}
.hero-rule {display: block;width: 48px;height: 2px;border-radius: 2px;background: var(--brand-300);margin: 2.25rem 0 1.5rem;}
.organ-icons {display: flex;align-items: center;gap: 1.6rem;list-style: none;padding: 0;margin: 0;}
.organ-icons li {position: relative;}
.organ-icons li + li::before {content: "";position: absolute;left: -.8rem;top: 50%;width: 4px;height: 4px;border-radius: 50%;background: var(--brand-gold);transform: translate(-50%, -50%);}
.organ-icons img {width: 58px;height: 58px;border-radius: 50%;mix-blend-mode: multiply;}
.scroll-hint {position: absolute;left: 50%;bottom: 1.25rem;z-index: 2;display: flex;flex-flow: column;align-items: center;gap: .2rem;color: var(--brand-700);transform: translateX(-50%);}
.scroll-hint:hover {color: var(--brand-900);}
.scroll-hint .mouse {position: relative;width: 22px;height: 34px;border: 2px solid currentColor;border-radius: 12px;}
.scroll-hint .wheel {position: absolute;top: 6px;left: 50%;width: 3px;height: 7px;margin-left: -1.5px;border-radius: 2px;background: currentColor;}

/* COMPTE À REBOURS */
.countdown {position: relative;z-index: 2;padding: 0 1.25rem;margin-top: -2.5rem;}
.countdown-inner {display: flex;flex-flow: wrap;align-items: center;justify-content: center;gap: 1rem 2.5rem;max-width: 900px;margin-inline: auto;padding: 1.4rem 2rem;border-radius: 28px;background: var(--brand-gradient);color: #FFF;box-shadow: 0 30px 60px -30px rgb(42 15 134 / 70%);}
.countdown-label {font-size: .8rem;font-weight: 600;letter-spacing: .3em;text-transform: uppercase;color: var(--brand-gold-soft);margin: 0;}
.countdown-units {display: flex;gap: 1.5rem;list-style: none;padding: 0;margin: 0;}
.countdown-units li {display: flex;flex-flow: column;align-items: center;min-width: 64px;}
.countdown-value {font-size: 2.2rem;font-weight: 800;line-height: 1;font-variant-numeric: tabular-nums;}
.countdown-unit {font-size: .7rem;letter-spacing: .2em;text-transform: uppercase;color: rgb(255 255 255 / 70%);margin-top: .35rem;}

/* THÉMATIQUES */
.section {position: relative;padding: 6rem 1.25rem;}
.section-head {text-align: center;margin-bottom: 3.5rem;}
.themes-grid {display: grid;grid-template-columns: repeat(6, minmax(0, 1fr));gap: 1.5rem;max-width: 1200px;margin-inline: auto;}
.theme-card {--mx: 50%;--my: 0%;position: relative;grid-column: span 2;display: flex;flex-flow: column;padding: 2.2rem 1.9rem;border-radius: 24px;background: #FFF;border: 1px solid var(--brand-100);box-shadow: 0 18px 40px -28px rgb(42 15 134 / 55%);overflow: hidden;isolation: isolate;}
.theme-card:nth-child(4), .theme-card:nth-child(5) {grid-column: span 3;}
.theme-card::before {content: "";position: absolute;inset: 0 0 auto 0;height: 4px;background: linear-gradient(90deg, var(--brand-700), var(--brand-500), var(--brand-gold));transform: scaleX(0);transform-origin: left;transition: transform .5s cubic-bezier(.2,.8,.2,1);}
.theme-card::after {content: "";position: absolute;inset: 0;z-index: -1;background: radial-gradient(320px circle at var(--mx) var(--my), rgb(184 164 247 / 28%), transparent 65%);opacity: 0;transition: opacity .4s ease;}
.theme-card:hover::before {transform: scaleX(1);}
.theme-card:hover::after {opacity: 1;}
.theme-num {font-size: 3.2rem;font-weight: 800;line-height: 1;background: var(--brand-gradient);-webkit-background-clip: text;background-clip: text;color: transparent;}
.theme-card h3 {font-size: 1.2rem;font-weight: 700;color: var(--brand-900);margin: 1rem 0 .4rem;}
.theme-card p {color: #5B4F86;margin: 0;}
.themes-actions {display: flex;flex-flow: wrap;justify-content: center;gap: 1rem;margin-top: 3.5rem;}

/* EN-TÊTE DES PAGES INTÉRIEURES */
.page-hero {position: relative;width: 100%;max-width: 1200px;margin-inline: auto;display: flex;flex-flow: column;align-items: center;text-align: center;padding: 2.5rem 0 1.75rem;}
.page-hero picture {display: block;}
.page-hero-logo {width: min(78vw, 400px);height: auto;filter: drop-shadow(0 18px 24px rgb(74 31 200 / 20%));}
.page-hero-title {font-size: clamp(1.5rem, 3vw, 2.1rem);font-weight: 800;color: var(--brand-900);margin: 1.25rem 0 0;}
.page-hero .gold-divider {width: min(100%, 420px);margin-block: 1.1rem;}
.page-hero .event-meta {font-size: 1rem;}
.page-hero .event-meta i {font-size: 1.2rem;}

/* FOOTER */
.site-footer {position: relative;background: var(--brand-gradient);color: rgb(255 255 255 / 85%);padding: 2.5rem 1.25rem 2rem;}
.site-footer::before {content: "";position: absolute;left: 0;right: 0;top: 0;height: 2px;background: linear-gradient(90deg, transparent, var(--brand-gold), transparent);}
.footer-inner {display: flex;flex-flow: wrap;align-items: center;justify-content: space-between;gap: 1.5rem;}
.footer-brand {display: flex;align-items: center;gap: 1rem;}
.footer-brand img {height: 44px;width: auto;}
.footer-meta {margin: 0;font-size: .9rem;line-height: 1.6;}
.footer-meta strong {color: #FFF;}
.footer-links {display: flex;flex-flow: wrap;gap: .5rem 1.5rem;list-style: none;padding: 0;margin: 0;}
.footer-links a {font-size: .8rem;letter-spacing: .08em;text-transform: uppercase;color: rgb(255 255 255 / 75%);}
.footer-links a:hover {color: var(--brand-gold-soft);}

/* AGENDA */
.agenda-nav-tabs {display: flex;flex-flow: wrap;justify-content: center;padding-bottom: 1rem;gap: 1rem;border-bottom: 0;}
.agenda-tab {color: var(--brand-700) !important;border-radius: 999px !important;padding: 0.75rem 1rem !important;font-size: .95rem !important;font-weight: 600;line-height: 1.75rem !important;border: 1.5px solid var(--brand-200) !important;background: var(--brand-50) !important;display: flex;align-items: center;justify-content: center;transition: background-color .25s ease, color .25s ease, border-color .25s ease;}
.agenda-tab i {font-size: 1.2rem;padding-inline-end: 0.5rem;}
.agenda-tab.active {background: var(--brand-gradient) !important;color:var(--bs-white) !important;border-color: transparent !important;box-shadow: var(--brand-shadow);}
.agenda-tab:hover:not(.active) {background-color: var(--brand-100) !important;color: var(--brand-900) !important;border-color: var(--brand-300) !important;}

.agenda-header {position: relative;display: grid;align-items: center;grid-template-columns: 12% 52% 24% 12%;background: var(--brand-gradient);color:var(--bs-white);font-weight:bold;border-radius: 0.75rem;}
.agenda-header.hide-hall {grid-template-columns: 12% 59% 29%;}
.agenda-header-item {padding:0.5rem;}
.agenda-event-time {min-width: 150px;text-align: center;text-transform: uppercase;}
.agenda-event-speakers {min-width: 300px;display: flex;flex-flow: column;}
.agenda-event-speaker-name {font-weight: bold;margin: 0;text-align: center;}
.agenda-event-speaker-title {font-size: small;font-weight: lighter;margin: 0;text-align: center;}
.agenda-event-hall {min-width: 150px;}

.agenda-block {position: relative;display: flex;flex-flow: column;color: var(--brand-900);gap:0.5rem;padding-block: 0.5rem;line-height: 1.2;}

.agenda-block-heading {position: relative;width: 100%;display: flex;flex-flow: wrap; justify-content: space-between;background: var(--agenda-primary);color: var(--bs-white);padding: 0.6rem 1rem;border-radius: 0.75rem;font-size: 1.1rem;gap:0.5rem;border-inline-start: 4px solid var(--brand-gold);}

.agenda-session {position: relative;width: 100%;display: flex;justify-content: space-between;background: var(--agenda-secondary);color: var(--bs-white);border-radius: 0.5rem;padding: 0.5rem;}

.session-details {display: flex;flex-flow: row;align-items: start;justify-content: start;gap: 0.5rem;}
.session-time {min-width: max-content;font-size:0.875rem;text-transform: uppercase;}
.session-title {display: flex;justify-content: start;align-items: start;gap: 0.25rem;}
.session-title-mark {min-width: max-content;color: var(--brand-gold-soft);}

.session-moderators {display: flex;flex-flow: wrap;align-items: center;gap: 0.5rem;font-size: 0.9rem;}
.session-moderators-item {display: flex;flex-flow: wrap;gap: 0.25rem;}
.moderator-name::after {content: ",";}
.moderator-name:last-child::after {display:none;}

.agenda-event {position: relative;width: 100%;display: grid;grid-auto-flow: column;grid-template-columns: 150px calc(100% - 150px);align-items:start;border:1px dashed var(--brand-200);border-radius: 0.75rem;background: var(--brand-50);transition: border-color .25s ease, box-shadow .25s ease;}
.agenda-event:hover {border-color: var(--brand-300);box-shadow: 0 10px 24px -18px rgb(42 15 134 / 50%);}
.agenda-event[class*='bg-'] {border: 0;}
.agenda-event-item {padding:0.5rem;}
.agenda-event-details {position: relative;width: 100%;display: grid;grid-template-columns: 59% 27% 13%;padding: 0;}
.agenda-event-details.hide-hall {grid-template-columns: 67% 33%;}

.agenda-header.workshops {grid-template-columns: 58% 30% 12%;background: var(--bs-primary);font-weight: normal;}
.workshops .agenda-block-heading {background: var(--agenda-secondary);}
.workshops .agenda-event {grid-template-columns: 100%;}
.workshops .agenda-event:nth-child(odd) {background: var(--bs-muted);}

.agenda-btn {display: flex;flex-flow: wrap;gap: 10px;align-items: center;justify-content: center;padding-block: 1rem 0.5rem;}
.agenda-btn img {max-height: 50px;max-width: 100%;}
.agenda-btn img:hover {scale: 1.05;}

/*SPONSORS IMAGES*/
.sponsors-block {position: relative;display: flex;flex-flow: column;align-items: center;justify-content: center;}
.sponsors-item {position: relative;width: 100%;display: flex;flex-flow: wrap;align-items: center;justify-content: center;padding: 1rem 0.5rem;border-bottom: 2px solid rgb(75 75 75 / 15%);gap: 1rem;}
.sponsor-image {display: flex;align-items: center;justify-content: center;padding: 20px;border: 1px solid #ddd;border-radius: 0.5rem;gap: 1rem;max-height: 240px;}
.sponsors-lvl-2 .sponsor-image {width: calc(33.33334% - 0.66667rem);padding: 15px;height: 180px;}
.sponsors-lvl-3 .sponsor-image {width: calc(25% - 0.75rem);height: 140px;padding: 10px;}
.sponsors-lvl-4 .sponsor-image {width: calc(20% - 0.8rem);height: 100px;border: 1px solid #ddd;}
.sponsor-image img {width:auto;max-width: 95%; max-height: 200px;}
.sponsors-lvl-2 .sponsor-image img {max-height: 150px;}
.sponsors-lvl-3 .sponsor-image img {max-height: 120px;}
.sponsors-lvl-4 .sponsor-image img {max-height: 80px;}

/* SIGN UP FORM */
#signUpForm .form-header {gap: 5px;text-align: center;font-size: .9em;}
#signUpForm .form-header .stepIndicator {position: relative;flex: 1;padding-bottom: 30px;}
#signUpForm .form-header .stepIndicator.active {font-weight: 600;color: var(--brand-500);}
#signUpForm .form-header .stepIndicator.finish {font-weight: 600;color: var(--brand-900);}
#signUpForm .form-header .stepIndicator::before {content: "";position: absolute;left: 50%;bottom: 0;transform: translateX(-50%);z-index: 9;width: 20px;height: 20px;background-color: var(--brand-200);border-radius: 50%;border: 3px solid var(--brand-50);}
#signUpForm .form-header .stepIndicator.active::before {background-color: var(--brand-500);border: 3px solid var(--brand-200);}
#signUpForm .form-header .stepIndicator.finish::before {background-color: var(--brand-900);border: 3px solid var(--brand-300);}
#signUpForm .form-header .stepIndicator::after {content: "";position: absolute;left: 50%;bottom: 8px;width: 100%;height: 3px;background-color: #f3f3f3;}
#signUpForm .form-header .stepIndicator.active::after {background-color: var(--brand-200);}
#signUpForm .form-header .stepIndicator.finish::after {background-color: var(--brand-900);}
#signUpForm .form-header .stepIndicator:last-child:after {display: none;}
#signUpForm .invalid {border-color:#ffaba5;}
#signUpForm .step {display: none;}
#signUpForm .oneColumn {width:fit-content;max-width:100%;}
#signUpForm .workshops {width:fit-content;max-width:100%;}
#signUpForm .form-footer{overflow:auto;gap: 20px;}
#signUpForm .form-footer button{background-color: var(--brand-700);border: 1px solid var(--brand-700) !important;color: #ffffff;border: none;padding: 13px 30px;font-size: 1em;cursor: pointer;border-radius: 5px;flex: 1;margin-top: 5px;}
#signUpForm .form-footer button:hover {opacity: 0.9;}
#signUpForm .form-footer #prevBtn {background-color: #fff;color: var(--brand-700);}

.registration-box {padding: 2.25rem;border-top: 5px solid var(--brand-500);}
.registration-header {text-align: center;padding-bottom: 1.25rem;margin-bottom: 0.5rem;border-bottom: 1px solid var(--brand-100);}
.registration-form-title {font-size: 1.5rem;font-weight: 700;color: var(--brand-900);margin: 0 0 0.5rem;}
.registration-meta {display: flex;flex-flow: wrap;justify-content: center;gap: 0.25rem 1.25rem;font-size: 0.9rem;color: #4a4270;margin: 0 0 0.5rem;}
.registration-meta i {color: var(--brand-500);padding-inline-end: 0.35rem;}
.registration-required-hint {font-size: 0.8rem;color: #6c757d;margin: 0;}

#signUpForm .form-section {margin: 0;padding-block: 0 1.25rem;border-bottom: 1px dashed var(--brand-200);}
#signUpForm .form-section:last-of-type {border-bottom: 0;}
#signUpForm .form-section-title {display: flex;align-items: center;gap: 0.6rem;float: none;width: auto;font-size: 0.8rem;font-weight: 600;letter-spacing: 0.08em;text-transform: uppercase;color: var(--bs-primary);margin-bottom: 0;padding-top: 1.25rem;}
#signUpForm .form-section > .row:first-of-type {margin-top: 0;}
#signUpForm .form-section-title i {display: inline-flex;align-items: center;justify-content: center;width: 2rem;height: 2rem;border-radius: 50%;background: rgba(var(--bs-primary-rgb), 0.1);font-size: 1rem;}
#signUpForm .form-label {font-size: 0.9rem;font-weight: 500;color: #2d2a40;margin-bottom: 0.35rem;}
#signUpForm .form-label .text-danger {padding-inline-start: 0.15rem;}

#signUpForm .form-control {min-height: 44px;border-color: #ced4da;}
#signUpForm .form-control::placeholder {color: #a0aec0;font-size: 0.9rem;}
#signUpForm .form-control:focus {border-color: var(--bs-primary);box-shadow: 0 0 0 0.2rem rgba(var(--bs-primary-rgb), 0.15);}
#signUpForm .choices__inner.invalid, #signUpForm .form-control.invalid {border-color: var(--bs-danger) !important;background-color: #fff8f9;}

#signUpForm .password-toggle {border: 1px solid #ced4da;border-inline-start: 0;color: #6c757d;background: #fff;}
#signUpForm .password-toggle:hover {color: var(--bs-primary);}
#signUpForm .input-group:has(.invalid) .password-toggle {border-color: var(--bs-danger);}

#signUpForm .registration-hp {position: absolute;left: -10000px;width: 1px;height: 1px;overflow: hidden;}
#signUpForm .field-error:empty {display: none;}
#signUpForm .field-error {margin-top: 0.3rem;line-height: 1.3;}

#signUpForm .choice-group {display: flex;flex-flow: wrap;gap: 0.5rem;}
#signUpForm .choice-pill {display: inline-flex;align-items: center;gap: 0.4rem;min-width: 110px;justify-content: center;padding: 0.5rem 1.25rem;border: 1px solid #ced4da;border-radius: 2rem;cursor: pointer;color: #4a4270;transition: all 0.15s ease-in-out;user-select: none;}
#signUpForm .choice-pill:hover {border-color: var(--bs-primary);color: var(--bs-primary);}
#signUpForm .btn-check:checked + .choice-pill {background: var(--bs-primary);border-color: var(--bs-primary);color: #fff;}
#signUpForm .btn-check:focus-visible + .choice-pill {box-shadow: 0 0 0 0.2rem rgba(var(--bs-primary-rgb), 0.25);}

#signUpForm #registrationNotes .alert {margin-bottom: 0;}

#signUpForm .registration-actions {display: flex;flex-flow: wrap;gap: 0.75rem;padding-top: 1.25rem;border-top: 1px solid var(--brand-100);}
#signUpForm .registration-actions .btn {justify-content: center;padding: 0.65rem 1.5rem;font-weight: 500;letter-spacing: 0.03em;border-radius: 999px;}
#signUpForm .registration-actions .btn-primary {background: var(--brand-gradient-cta);border: 0;box-shadow: var(--brand-shadow);}
#signUpForm .registration-actions .btn-primary:disabled {opacity: 0.75;}

/* FORMULAIRE : progression */
.form-stepper {position: sticky;top: 72px;z-index: 5;margin: 0 -2.25rem;padding: .9rem 2.25rem .75rem;background: rgb(255 255 255 / 92%);-webkit-backdrop-filter: blur(10px);backdrop-filter: blur(10px);border-bottom: 1px solid var(--brand-100);}
.form-stepper ol {display: flex;justify-content: space-between;gap: .5rem;list-style: none;padding: 0;margin: 0 0 .7rem;}
.form-stepper li {flex: 1;}
.form-stepper a {display: flex;align-items: center;justify-content: center;gap: .55rem;color: #8a83a8;font-size: .8rem;font-weight: 600;letter-spacing: .04em;text-transform: uppercase;}
.form-stepper a:hover {color: var(--brand-700);}
.step-dot {position: relative;display: inline-flex;align-items: center;justify-content: center;flex: none;width: 1.9rem;height: 1.9rem;border-radius: 50%;border: 1.5px solid var(--brand-200);background: #FFF;color: var(--brand-500);font-size: .8rem;transition: background-color .3s ease, border-color .3s ease, color .3s ease;}
.step-dot .bi {display: none;font-size: 1rem;}
.form-stepper li.is-current a {color: var(--brand-900);}
.form-stepper li.is-current .step-dot {border-color: var(--brand-500);box-shadow: 0 0 0 4px rgb(109 60 240 / 12%);}
.form-stepper li.is-complete .step-dot {background: var(--brand-gradient);border-color: transparent;color: #FFF;}
.form-stepper li.is-complete .step-num {display: none;}
.form-stepper li.is-complete .step-dot .bi {display: block;}
.form-progress {height: 4px;border-radius: 4px;background: var(--brand-100);overflow: hidden;}
.form-progress-bar {display: block;height: 100%;background: linear-gradient(90deg, var(--brand-700), var(--brand-500), var(--brand-gold));transform: scaleX(0);transform-origin: left;}

/* FORMULAIRE : champs */
#signUpForm .form-control.valid {border-color: #2FB380;padding-inline-end: 2.4rem;background: #FFF url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%232FB380'%3e%3cpath d='M13.485 1.431a1.473 1.473 0 0 1 2.104 2.062l-7.84 9.801a1.473 1.473 0 0 1-2.12.04L.431 8.138a1.473 1.473 0 0 1 2.084-2.083l4.111 4.112 6.82-8.69a.486.486 0 0 1 .04-.045z'/%3e%3c/svg%3e") no-repeat right .85rem center / .8rem;}
#signUpForm .input-group .form-control.valid {background-position: right .6rem center;}
#signUpForm .field-hint {font-size: .78rem;color: #7a7396;margin-top: .3rem;line-height: 1.35;}
#signUpForm .field-hint:has(+ .field-error:not(:empty)) {display: none;}
#signUpForm .choice-group.has-error .choice-pill {border-color: var(--bs-danger);color: var(--bs-danger);background: #fff8f9;}
#signUpForm .choice-pill {min-height: 44px;}

.password-strength {display: flex;align-items: center;gap: .6rem;margin-top: .4rem;font-size: .78rem;color: #7a7396;}
.password-strength-bar {display: none;gap: 3px;flex: none;}
.password-strength-bar span {width: 22px;height: 4px;border-radius: 4px;background: var(--brand-100);transition: background-color .3s ease;}
.password-strength:not([data-level="0"]) .password-strength-bar {display: inline-flex;}
.password-strength[data-level="1"] .password-strength-bar span:nth-child(-n+1) {background: #E5484D;}
.password-strength[data-level="2"] .password-strength-bar span:nth-child(-n+2) {background: var(--brand-gold);}
.password-strength[data-level="3"] .password-strength-bar span {background: #2FB380;}

/* FORMULAIRE : menus Choices.js */
#signUpForm .choices {margin: 0;}
#signUpForm .choices__inner {display: flex;align-items: center;min-height: 46px;padding: .35rem 2.5rem .35rem .85rem !important;border-radius: .6rem !important;border: 1px solid #ced4da;background: #FFF;font-size: .95rem;transition: border-color .2s ease, box-shadow .2s ease;}
#signUpForm .choices__inner:hover {border-color: var(--brand-300);}
#signUpForm .choices__list--single {padding: 0;}
#signUpForm .choices__list--single .choices__item {width: 100% !important;height: auto;line-height: 1.4;white-space: nowrap;text-overflow: ellipsis;color: var(--brand-ink);}
#signUpForm .choices__list--single .choices__placeholder {opacity: 1;color: #a0aec0;}
#signUpForm .choices[data-type*="select-one"]::after {content: "";width: .55rem;height: .55rem;margin-top: -.4rem;right: 1rem;border: solid var(--brand-500);border-width: 0 2px 2px 0;transform: rotate(45deg);transition: transform .25s ease, margin .25s ease;}
#signUpForm .choices[data-type*="select-one"].is-open::after {margin-top: -.1rem;border-color: var(--brand-500);transform: rotate(-135deg);}
#signUpForm .choices.is-focused .choices__inner, #signUpForm .choices.is-open .choices__inner {border-color: var(--brand-500) !important;box-shadow: 0 0 0 .2rem rgb(109 60 240 / 15%);border-radius: .6rem !important;}
#signUpForm .choices__inner.invalid {border-color: var(--bs-danger) !important;background-color: #fff8f9;}
#signUpForm .choices__list--dropdown, #signUpForm .choices__list[aria-expanded] {z-index: 20 !important;margin-top: .4rem;padding: .4rem !important;border: 1px solid var(--brand-200) !important;border-radius: .8rem !important;background: #FFF;box-shadow: 0 24px 48px -20px rgb(42 15 134 / 45%);overflow: hidden;word-break: normal;}
#signUpForm .choices__list--dropdown .choices__list {max-height: 280px;overscroll-behavior: contain;}
#signUpForm .choices__list--dropdown .choices__placeholder {display: none;}
#signUpForm .choices__list--dropdown .choices__item {padding: .6rem .75rem !important;border-radius: .5rem;font-size: .93rem !important;color: var(--brand-ink);}
#signUpForm .choices__list--dropdown .choices__item--selectable.is-highlighted {background: var(--brand-100) !important;color: var(--brand-900) !important;}
#signUpForm .choices__list--dropdown .choices__item.is-selected {font-weight: 600;color: var(--brand-700);}
#signUpForm .choices__list--dropdown .choices__item.is-selected::after {content: "\F26E";font-family: "bootstrap-icons";float: right;color: var(--brand-500);}
#signUpForm .choices__list--dropdown .has-no-results, #signUpForm .choices__list--dropdown .has-no-choices {color: #7a7396;font-style: italic;}
#signUpForm .choices__list--dropdown .choices__input {width: 100%;margin: 0 0 .4rem;padding: .6rem .75rem .6rem 2.2rem !important;border: 1px solid var(--brand-100) !important;border-radius: .5rem;background: var(--brand-50) url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236D3CF0'%3e%3cpath d='M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398h-.001l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85zm-5.242.656a5 5 0 1 1 0-10 5 5 0 0 1 0 10z'/%3e%3c/svg%3e") no-repeat .75rem center / .85rem;font-size: .9rem;}
#signUpForm .choices__list--dropdown .choices__input:focus {border-color: var(--brand-300) !important;outline: 0;}

/* FORMULAIRE : frais et états */
.fees-card {margin-top: 1.5rem;padding: 1.25rem 1.4rem;border-radius: 16px;background: var(--brand-50);border: 1px solid var(--brand-100);border-inline-start: 4px solid var(--brand-gold);}
.fees-title {display: flex;align-items: center;gap: .5rem;font-size: .8rem;font-weight: 600;letter-spacing: .08em;text-transform: uppercase;color: var(--brand-700);margin: 0 0 .5rem;}
.fees-hint {margin: 0;font-size: .9rem;color: #7a7396;}
#registrationNotes .alert {margin: .5rem 0 0 !important;padding: 0 !important;background: none;border: 0;color: var(--brand-ink);font-size: .92rem;}
#registrationNotes .alert:first-child {margin-top: 0 !important;}
#registrationNotes .alert + .alert {padding-top: .75rem !important;border-top: 1px dashed var(--brand-200);}
#registrationNotes .alert p.fw-bold:first-child {display: none;}
#registrationNotes .alert p {padding-inline-start: 0 !important;}
#registrationNotes .alert hr {border-color: var(--brand-200);opacity: 1;margin-block: .6rem;}
#signUpForm .registration-actions {margin-top: 1.5rem;}
#signUpForm .registration-actions .btn-primary {display: inline-flex;align-items: center;gap: .6rem;}
#signUpForm .registration-actions .btn-arrow {transition: transform .25s ease;}
#signUpForm .registration-actions .btn-primary:hover .btn-arrow {transform: translateX(4px);}
#alertMessage .alert {border-radius: .75rem;margin-top: 1rem;}
.registration-closed {max-width: 760px;margin-inline: auto;padding: 3rem 2rem;text-align: center;}
.registration-closed > .bi {display: inline-flex;font-size: 2.5rem;color: var(--brand-500);margin-bottom: 1rem;}
.registration-closed h3 {font-size: 1.25rem;font-weight: 600;color: var(--brand-900);margin: 0;}

/* CONNEXION & ESPACE PARTICIPANT */
.auth-box {max-width: 560px;margin-inline: auto;padding: 2.25rem;border-top: 5px solid var(--brand-500);}
.account-box {max-width: 760px;}
.auth-header {text-align: center;padding-bottom: 1.25rem;margin-bottom: 1.25rem;border-bottom: 1px solid var(--brand-100);}
.auth-title {font-size: 1.5rem;font-weight: 700;color: var(--brand-900);margin: 0 0 .5rem;}
.auth-subtitle {font-size: .9rem;color: #4a4270;margin: 0;}
.auth-subtitle .bi {color: var(--bs-success);padding-inline-end: .4rem;}
#loginForm .form-label {font-size: .9rem;font-weight: 500;color: #2d2a40;margin-bottom: .35rem;}
#loginForm .form-control {min-height: 44px;}
#loginForm .form-control:focus {border-color: var(--bs-primary);box-shadow: 0 0 0 .2rem rgba(var(--bs-primary-rgb), .15);}
#loginForm .password-toggle {border: 1px solid #ced4da;border-inline-start: 0;color: #6c757d;background: #fff;}
#loginForm .password-toggle:hover {color: var(--bs-primary);}
.auth-actions {display: flex;flex-flow: wrap;gap: .75rem;margin-top: .5rem;}
.auth-actions .btn {display: inline-flex;align-items: center;justify-content: center;gap: .6rem;padding: .65rem 1.5rem;font-weight: 500;letter-spacing: .03em;border-radius: 999px;}
.auth-actions .btn-primary {background: var(--brand-gradient-cta);border: 0;box-shadow: var(--brand-shadow);}
#loginForm .auth-actions .btn-primary {width: 100%;}
.auth-footnote {text-align: center;font-size: .9rem;color: #4a4270;margin: 1.5rem 0 0;}
.auth-footnote a {color: var(--brand-500);font-weight: 600;text-decoration: underline;text-underline-offset: 3px;}
.account-section-title {display: flex;align-items: center;gap: .6rem;font-size: .8rem;font-weight: 600;letter-spacing: .08em;text-transform: uppercase;color: var(--bs-primary);margin: 0 0 1rem;}
.account-details {display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));gap: 1rem 1.5rem;margin: 0 0 1.75rem;}
.account-details dt {font-size: .78rem;font-weight: 500;color: #6c757d;}
.account-details dd {margin: 0;font-weight: 600;color: var(--brand-ink);overflow-wrap: anywhere;}

/* RESPONSIVE */
@media screen and (max-width: 1399px) {
  .hero-copy {padding-inline-end: min(3vw, 40px);}
}

@media screen and (max-width: 1199px) {
  .brand-text {display: none;}
  .brand-divider {display: none;}
  .hero-landscape {width: 30vw;opacity: .55;}
  .hero-copy {padding-inline-end: 0;}
  .hero-tagline {letter-spacing: .25em;font-size: 1rem;}
}

@media screen and (max-width: 991px) {
  nav.navbar, .site-header.is-scrolled nav.navbar {height: 72px;}
  .brand img {height: 42px;}
  .offcanvas {background: var(--brand-gradient);color: #FFF;}
  .offcanvas-header .btn-close {filter: invert(1) grayscale(1) brightness(2);}
  .offcanvas .navbar-nav {gap: .25rem !important;}
  .offcanvas .nav-link {font-size: 1rem !important;}
  .offcanvas .btn-cta {margin-top: 1rem;}

  .hero {min-height: auto;padding-block: 1.5rem 5.5rem;}
  .hero-inner {grid-template-columns: 1fr;gap: 0;}
  .hero-art {grid-row: 2;max-width: 520px;justify-self: center;margin-top: 2.5rem;}
  .hero-landscape {width: 60vw;height: 60%;opacity: .35;}
  .scroll-hint {display: none;}
  .countdown {margin-top: -1.5rem;}
  .themes-grid {grid-template-columns: repeat(2, minmax(0, 1fr));}
  .theme-card, .theme-card:nth-child(4) {grid-column: span 1;}
  .theme-card:nth-child(5) {grid-column: span 2;}
  .section {padding-block: 4.5rem;}

  .container {max-width: 100%;padding-inline: 1rem;}

  .agenda {zoom: 0.95;}
  .agenda-nav-tabs {flex-flow: column;}
  .agenda-tab {padding: 0.75rem 1rem !important;line-height: 1.2 !important;}
  .agenda-header {display: none;}

  .agenda-block-heading {font-size: 1rem;flex-flow: column;gap: 0.5rem;padding: 0.5rem;}

  .agenda-event {grid-template-columns: 120px calc(100% - 120px);border-width: 2px;}
  .agenda-event-time {width: 120px;min-width: unset;font-size: 0.95rem;}
  .agenda-event-details {grid-auto-flow: row;grid-template-columns: 100% !important;padding: 0.5rem;gap:0.5rem;}
  .agenda-event-details .agenda-event-item {padding: 0;}
  .agenda-event-speakers {flex-flow: wrap;}
  .agenda-event-speakers::before {content:"🎙️" !important;margin-inline-start: -0.25rem;}
  .agenda-event-speaker-details {position:relative;display: flex;}
  .agenda-event-speaker-details::after {position:relative;content:"-";padding-inline: 0.25rem;}
  .agenda-event-speaker-details:last-child::after {display: none;}
  .agenda-event-speaker-name {font-weight: bold;margin: 0;}
  .agenda-event-speaker-title {display: none;}

  .sponsors-block {gap: 1rem;}
  .sponsors-item {border: 0;padding: 0;gap: 1rem;}
  .sponsor-image {width: 100%;height: fit-content;padding:0.5rem 1rem;border-radius: 0.5rem;border: 1px solid #ddd;}
  .sponsor-image img {max-height: 6.5rem !important;}
  .sponsors-lvl-2 .sponsor-image {width: 100%; height: 6rem;}
  .sponsors-lvl-3 .sponsor-image {width: calc(50% - 0.5rem); height: 5.5rem; }
  .sponsors-lvl-4 .sponsor-image {width: calc(33.33334% - 0.66667rem); height: 5rem; }
  .sponsors-lvl-2 .sponsor-image img {max-height: 5rem !important;}
  .sponsors-lvl-3 .sponsor-image img {max-height: 4.5rem !important;}
  .sponsors-lvl-4 .sponsor-image img {max-height: 4rem !important;}
}

@media screen and (max-width: 767px) {
  .event-meta {flex-flow: column;align-items: center;gap: .5rem;font-size: 1rem;}
  .hero-tagline {letter-spacing: .18em;font-size: .9rem;}
  .hero-tagline .sep {margin-inline: .5rem;}
  .btn-cta-lg {padding: 1rem 2.6rem;font-size: 1.05rem;}
  .organ-icons {gap: 1rem;}
  .organ-icons li + li::before {left: -.5rem;}
  .organ-icons img {width: 46px;height: 46px;}
  .countdown-inner {padding: 1.25rem 1rem;border-radius: 22px;}
  .countdown-units {gap: .75rem;}
  .countdown-units li {min-width: 54px;}
  .countdown-value {font-size: 1.7rem;}
  .themes-grid {grid-template-columns: 1fr;}
  .theme-card, .theme-card:nth-child(4), .theme-card:nth-child(5) {grid-column: span 1;}
  .theme-card {padding: 1.75rem 1.5rem;}
  .footer-inner {flex-flow: column;text-align: center;}
  .footer-brand {flex-flow: column;}
  .footer-links {justify-content: center;}
  .content-box {padding: 1.5rem 1.1rem;border-radius: 18px;}
  .form-stepper {margin-inline: -1.1rem;padding-inline: 1.1rem;}

  .sponsors-block {gap: 0.5rem;}
  .sponsors-item {border: 0;padding: 0;gap: 0.5rem;}
  .sponsor-image {padding:0.5rem 1rem;border-radius: 0.5rem;border: 1px solid #ddd;}
  .sponsor-image img {max-height: 5rem !important;}
  .sponsors-lvl-2 .sponsor-image {width: 100%; height: 5.5rem;}
  .sponsors-lvl-3 .sponsor-image {width: calc(50% - 0.25rem); height: 4.5rem;}
  .sponsors-lvl-4 .sponsor-image {width: calc(50% - 0.25rem); height: 4.5rem;}
  .sponsors-lvl-2 .sponsor-image img {max-height: 4.5rem !important;}
  .sponsors-lvl-3 .sponsor-image img {max-height: 3.5rem !important;}
  .sponsors-lvl-4 .sponsor-image img {max-height: 3.5rem !important;}

  .agenda-btn {flex-flow: column;align-items:center;text-align:center;justify-content:center;}
  .agenda-btn img {max-width:90%}.agenda-btn * {width:fit-content}

  .session-details {flex-flow: column;align-items: start;}

  .agenda-event {grid-template-columns: 100%;grid-auto-flow: row;}
  .agenda-event-item {padding-block: 0.25rem;text-align: start !important;}
  .agenda-event-time {width: 100%;text-align: start;padding-top: 0.5rem;}
  .agenda-event-time::before {content:"🕒" !important;margin-inline-start: -0.25rem;}
}

@media screen and (max-width: 575px) {
  .registration-box {padding: 1.25rem 1rem;}
  .auth-box {padding: 1.5rem 1rem;}
  .account-details {grid-template-columns: 1fr;}
  .form-stepper {margin-inline: -1rem;padding-inline: 1rem;}
  .form-stepper .step-label {display: none;}
  .form-stepper li.is-current .step-label {display: inline;}
  .registration-form-title {font-size: 1.15rem;}
  #signUpForm .registration-actions .btn {flex: 1 1 100%;}
  #signUpForm .choice-pill {flex: 1;}
}

@media screen and (max-width: 400px) {
  .content {padding-inline: 1rem;}
  .organ-icons {gap: .7rem;}
  .organ-icons li + li::before {display: none;}
  .organ-icons img {width: 40px;height: 40px;}

  .agenda-event {display: flex;flex-flow: column;width: 100%;font-size: 0.9rem;padding-block: 0.25rem;}
  .agenda-event-item {text-align: start !important;padding-top: 0.25rem;}
  .agenda-event-time {width: 100%;text-align: start;padding: 0.25rem;}
  .agenda-event-time::before {content:"🕒" !important;}
  .agenda-event-details {display: flex;flex-flow: column;padding: 0.25rem;}
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {transition-duration: .01ms !important;}
}
