:root{
  --navy:#062b55; --blue:#0c4a7f; --aqua:#14b8c8; --cyan:#d8f7fb; --green:#078042;
  --ink:#10243f; --muted:#65748b; --line:#d8e5ee; --bg:#f4f8fb; --white:#fff;
  --shadow:0 24px 70px rgba(6,43,85,.14); --radius:24px; --radius-sm:14px;
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;font-family:Inter,Segoe UI,Roboto,Arial,sans-serif;color:var(--ink);background:var(--white);line-height:1.65} a{color:inherit;text-decoration:none} img{max-width:100%;display:block}.container{width:min(1180px,92vw);margin-inline:auto}.topbar{background:var(--navy);color:#d8f7fb;font-size:.9rem}.topbar-inner{display:flex;justify-content:space-between;gap:1rem;padding:.45rem 0}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(18px);box-shadow:0 1px 0 rgba(6,43,85,.08)}.navbar{height:86px;display:flex;align-items:center;gap:1.1rem}.brand img{height:66px;width:auto}.nav-menu{display:flex;align-items:center;gap:1rem;margin-left:auto}.nav-menu a{font-weight:700;font-size:.92rem;color:#173f66}.nav-menu a:hover{color:var(--aqua)}.language-switch{border:1px solid var(--line);padding:.35rem .6rem;border-radius:999px}.nav-toggle{display:none;background:none;border:0;font-size:1.7rem}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:.88rem 1.25rem;font-weight:800;border:1px solid transparent;transition:.2s ease;cursor:pointer}.btn-primary{background:linear-gradient(135deg,var(--aqua),#0b6e9d);color:white;box-shadow:0 14px 30px rgba(20,184,200,.25)}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 18px 38px rgba(20,184,200,.32)}.btn-secondary{background:var(--navy);color:white}.btn-light{background:white;color:var(--navy)}.btn-outline-light{border-color:rgba(255,255,255,.6);color:white}.nav-cta{padding:.65rem 1rem}.hero{min-height:780px;position:relative;display:grid;align-items:center;overflow:hidden;background:var(--navy)}.hero-media,.hero-slide,.hero-overlay{position:absolute;inset:0}.hero-slide{width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.04);transition:opacity 1s ease,transform 5.5s ease}.hero-slide.active{opacity:1;transform:scale(1)}.hero-overlay{background:linear-gradient(90deg,rgba(2,22,45,.86),rgba(6,43,85,.72),rgba(6,43,85,.36)),radial-gradient(circle at 20% 20%,rgba(20,184,200,.35),transparent 40%)}.hero-content{position:relative;color:white;padding:5rem 0}.eyebrow,.section-kicker{display:inline-flex;align-items:center;gap:.5rem;color:var(--aqua);font-weight:900;letter-spacing:.12em;text-transform:uppercase;font-size:.78rem}.hero h1{font-size:clamp(2.7rem,7vw,6.8rem);line-height:.95;margin:1rem 0;max-width:950px;letter-spacing:-.06em}.hero-theme{font-size:clamp(1.05rem,2vw,1.5rem);max-width:880px;color:#e6fbff}.event-meta{display:flex;flex-wrap:wrap;gap:.8rem;margin:1.5rem 0}.event-meta span{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);padding:.62rem .9rem;border-radius:999px;font-weight:700}.hero-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin:2rem 0}.countdown{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:2rem}.countdown div{background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.18);border-radius:18px;min-width:92px;text-align:center;padding:.85rem}.countdown strong{font-size:2rem;display:block;line-height:1}.countdown span{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.section{padding:6rem 0}.light-section{background:var(--bg)}.stats-band{padding:2.5rem 0;background:linear-gradient(90deg,var(--navy),#0a6b93)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;color:white}.stats-grid div{padding:1rem;border-left:1px solid rgba(255,255,255,.22)}.stats-grid strong{font-size:clamp(2rem,5vw,3.6rem);display:block;line-height:1}.stats-grid span{color:#d8f7fb;font-weight:700}.split-grid,.content-grid,.registration-preview,.venue-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:3rem;align-items:start}.split-section h2,.section-heading h2,.rich-text h2{font-size:clamp(2rem,4vw,3.3rem);line-height:1.05;margin:.6rem 0 1rem;letter-spacing:-.035em}.lead,.split-section p,.rich-text p,.section-heading p{color:var(--muted);font-size:1.08rem}.feature-card,.info-card,.theme-card,.day-card,.committee-card,.news-card,.topic-card,.speaker-card,.fees-card,.action-card{background:white;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.6rem}.blue-card{background:linear-gradient(135deg,var(--navy),#0a6b93);color:white;border:0}.green-card{background:linear-gradient(135deg,#066034,#0c8c73);color:white;border:0}.sticky-card{position:sticky;top:120px}.check-list{padding:0;margin:1.25rem 0;list-style:none}.check-list li{position:relative;padding-left:1.75rem;margin:.65rem 0}.check-list li:before{content:'✓';position:absolute;left:0;top:0;color:var(--aqua);font-weight:900}.blue-card .check-list li:before,.green-card .check-list li:before{color:#9ffaff}.compact li{margin:.4rem 0}.mini-actions{display:flex;gap:1rem;flex-wrap:wrap;margin-top:1.5rem}.mini-actions a{font-weight:900;color:var(--blue)}.section-heading{max-width:820px;margin-bottom:2.5rem}.inline-heading{display:flex;justify-content:space-between;gap:1rem;align-items:end;max-width:100%}.cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.theme-grid{grid-template-columns:repeat(4,1fr)}.theme-card{position:relative;overflow:hidden;min-height:310px}.theme-card:after{content:'';position:absolute;right:-60px;bottom:-60px;width:160px;height:160px;border-radius:50%;background:rgba(20,184,200,.12)}.theme-icon{font-size:2rem}.theme-number{display:inline-block;margin:.8rem 0;color:var(--aqua);font-weight:900}.theme-card h3{font-size:1.2rem;line-height:1.25}.theme-card p{color:var(--muted)}.timeline-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.day-head{display:flex;justify-content:space-between;color:var(--aqua);font-weight:900;text-transform:uppercase;font-size:.8rem}.day-card ul{list-style:none;margin:1rem 0 0;padding:0}.day-card li{padding:.7rem 0;border-top:1px solid var(--line)}.fees-card{padding:0;overflow:hidden}.fees-head{background:linear-gradient(90deg,#066034,var(--green));color:white;padding:1.1rem 1.4rem;font-size:1.05rem}.fees-card table{width:100%;border-collapse:collapse}.fees-card th,.fees-card td{padding:1rem;border-bottom:1px solid var(--line);text-align:left}.fees-card th{color:#0b4a40;font-size:.9rem}.fees-card td:nth-child(2),.fees-card td:nth-child(3){font-weight:900;color:var(--navy)}.small-note{padding:0 1.4rem 1.2rem;color:var(--muted);font-size:.92rem}.venue-strip{background:linear-gradient(135deg,var(--navy),#0a6b93);color:white;overflow:hidden}.venue-strip p{color:#dffbff}.venue-carousel{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;transform:rotate(-2deg)}.venue-carousel img{height:260px;width:100%;object-fit:cover;border-radius:22px;box-shadow:0 16px 40px rgba(0,0,0,.28)}.venue-carousel img:first-child{grid-row:span 2;height:535px}.logo-cloud{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:1rem}.partner-logo{background:white;border:1px solid var(--line);border-radius:18px;min-height:92px;min-width:150px;display:flex;align-items:center;justify-content:center;padding:1rem;box-shadow:0 10px 30px rgba(6,43,85,.08)}.partner-logo img{max-height:64px;max-width:160px;object-fit:contain}.large-cloud .partner-logo{flex-direction:column;gap:.8rem;min-width:220px;min-height:150px}.page-hero{padding:6rem 0;background:linear-gradient(135deg,var(--navy),#0a6b93);color:white}.page-hero h1{font-size:clamp(2.4rem,6vw,4.8rem);line-height:1;margin:.8rem 0;letter-spacing:-.04em}.page-hero p{max-width:760px;color:#def8fb;font-size:1.15rem}.venue-hero{background:linear-gradient(90deg,rgba(6,43,85,.92),rgba(6,43,85,.55)),url('../images/venue/amazon.jpg') center/cover}.rich-text{font-size:1.03rem}.content-grid{grid-template-columns:minmax(0,1fr) 360px}.deadline-box{display:flex;flex-direction:column;background:var(--bg);border-left:6px solid var(--aqua);padding:1.2rem;border-radius:16px;margin:1.5rem 0}.deadline-box span{font-size:2rem;font-weight:900;color:var(--navy)}.themes-list{display:grid;gap:2.3rem}.theme-detail{display:grid;grid-template-columns:140px 1fr;gap:2rem;padding:2rem;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.theme-detail-number{font-size:2.2rem;color:var(--aqua);font-weight:900}.topic-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.5rem}.topic-card{box-shadow:none;background:var(--bg)}.programme-list{display:grid;gap:2.5rem}.programme-title span{color:var(--aqua);font-weight:900;text-transform:uppercase}.programme-title h2{margin:.2rem 0 1.2rem}.programme-table{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.programme-row{display:grid;grid-template-columns:170px 1fr;background:white;border-bottom:1px solid var(--line)}.programme-row:last-child{border-bottom:0}.programme-row time{background:var(--bg);padding:1.1rem;font-weight:900;color:var(--blue)}.programme-row div{padding:1rem 1.2rem}.programme-row h3{margin:0}.programme-row p{margin:.3rem 0 0;color:var(--muted)}.speaker-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem}.speaker-card{text-align:center}.speaker-card img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:22px;background:var(--bg)}.speaker-card h3{margin:1rem 0 .2rem}.speaker-card span{color:var(--aqua);font-weight:900}.timeline-steps{display:grid;gap:.7rem;margin-top:1rem}.timeline-steps span{background:var(--bg);border-left:5px solid var(--aqua);padding:.85rem;border-radius:12px}.action-panel{display:grid;gap:1rem}.action-card strong{display:block;font-size:1.35rem}.action-card span{display:block;color:var(--muted);margin-top:.3rem}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.gallery-grid figure{margin:0;background:white;border-radius:22px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow)}.gallery-grid img{width:100%;height:280px;object-fit:cover}.gallery-grid figcaption{padding:1rem;font-weight:900}.gallery-grid figcaption span{display:block;color:var(--muted);font-weight:500}.committee-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}.member{padding:1rem 0;border-top:1px solid var(--line)}.member strong{display:block}.member span{color:var(--muted)}.news-card{overflow:hidden;padding:0}.news-card img{height:220px;width:100%;object-fit:cover}.news-card div{padding:1.3rem}.news-card time{color:var(--aqua);font-weight:900}.article-body{max-width:860px}.article-cover{border-radius:var(--radius);margin-bottom:2rem}.registration-layout{display:grid;grid-template-columns:390px 1fr;gap:2rem;align-items:start}.form-container{max-width:860px}.site-form{background:white;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:2rem}.form-group{display:grid;gap:.4rem;margin-bottom:1rem}.form-group label{font-weight:800;color:var(--navy)}.form-control,.form-select,input[type=text],input[type=email],input[type=file],textarea,select{width:100%;padding:.85rem 1rem;border:1px solid var(--line);border-radius:14px;font:inherit;background:#fff}.checkbox-group{display:flex;align-items:center;gap:.7rem}.form-check-input{width:auto}.field-error{color:#b42318;font-weight:700;font-size:.9rem}.messages{margin-top:1rem}.alert{padding:1rem;border-radius:16px;background:#e4fbf0;color:#075c35;border:1px solid #b4edcd}.footer{background:#061f3d;color:#d7e6f0;padding:4rem 0 1.5rem}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.4fr;gap:2rem}.footer-logo{max-width:220px;margin-bottom:1rem}.footer a{display:block;color:#d7e6f0;margin:.35rem 0}.footer h3{color:white}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:2rem;padding-top:1rem;display:flex;justify-content:space-between;gap:1rem;color:#9fb7c9}.article-body p{white-space:pre-line}.info-card h3{color:var(--navy)}
@media (max-width:980px){.topbar-contact{display:none}.nav-toggle{display:block;margin-left:auto}.nav-menu{position:absolute;top:86px;left:4vw;right:4vw;background:white;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:20px;padding:1rem;display:none;flex-direction:column;align-items:flex-start}.nav-menu.open{display:flex}.nav-cta{display:none}.hero{min-height:700px}.stats-grid,.theme-grid,.timeline-preview,.cards-grid,.topic-grid,.speaker-grid,.gallery-grid,.committee-grid,.footer-grid,.split-grid,.content-grid,.registration-preview,.venue-grid,.registration-layout{grid-template-columns:1fr}.venue-carousel{transform:none}.venue-carousel img:first-child{height:260px;grid-row:auto}.sticky-card{position:static}.programme-row{grid-template-columns:1fr}.programme-row time{border-bottom:1px solid var(--line)}.theme-detail{grid-template-columns:1fr}.inline-heading{display:block}.footer-bottom{display:block}.brand img{height:58px}}
@media (max-width:640px){.section{padding:4rem 0}.hero h1{font-size:3rem}.hero-actions .btn{width:100%}.stats-grid{grid-template-columns:1fr 1fr}.countdown div{min-width:72px}.topbar{font-size:.75rem}.brand img{height:46px}.navbar{height:72px}.page-hero{padding:4rem 0}.site-form{padding:1.2rem}.fees-card th,.fees-card td{padding:.75rem;font-size:.9rem}}

/* Sponsor section */
.sponsor-intro-grid,.sponsor-home-grid,.sponsor-callout-inner{display:grid;grid-template-columns:1.15fr .85fr;gap:3rem;align-items:center}.sponsor-actions .btn-secondary{background:#072947}.sponsor-logo span{font-weight:900;color:var(--navy);text-align:center}.empty-sponsor-card{background:white;border:1px dashed #8fb8c9;border-radius:var(--radius);padding:2rem;text-align:center;max-width:720px;margin:auto;box-shadow:var(--shadow)}.empty-sponsor-card strong{font-size:1.35rem;color:var(--navy)}.empty-sponsor-card p{color:var(--muted);margin-bottom:0}.sponsor-package-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem}.sponsor-package{position:relative;background:white;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.6rem;overflow:hidden}.sponsor-package.highlighted{border:2px solid var(--aqua);transform:translateY(-6px)}.package-ribbon{position:absolute;top:1rem;right:-2.4rem;background:var(--green);color:white;font-weight:900;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;padding:.35rem 2.5rem;transform:rotate(35deg)}.package-level{display:inline-flex;background:var(--cyan);color:var(--blue);font-weight:900;text-transform:uppercase;letter-spacing:.1em;border-radius:999px;padding:.35rem .7rem;font-size:.72rem}.sponsor-package h3{font-size:1.35rem;line-height:1.2;margin:1rem 0 .4rem}.package-price{font-size:1.7rem;font-weight:950;color:var(--navy);margin:.5rem 0}.sponsor-package p{color:var(--muted)}.sponsor-package .btn{width:100%;margin-top:1rem}.sponsor-callout{background:linear-gradient(135deg,var(--navy),#0a6b93);color:white}.sponsor-callout p{color:#dffbff}.sponsor-callout h2{font-size:clamp(2rem,4vw,3.2rem);line-height:1.06;margin:.6rem 0 1rem}.sponsor-mini-panel{background:white;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.5rem}.sponsor-mini-panel h3{margin-top:0;color:var(--navy)}.sponsor-mini-logos{display:grid;grid-template-columns:repeat(2,1fr);gap:.8rem}.sponsor-mini-logos .partner-logo{min-width:0;min-height:100px}.sponsor-mini-logos p{color:var(--muted);grid-column:1/-1;margin:0}
@media (max-width:980px){.sponsor-intro-grid,.sponsor-home-grid,.sponsor-callout-inner,.sponsor-package-grid{grid-template-columns:1fr}.sponsor-package.highlighted{transform:none}.sponsor-mini-logos{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.sponsor-mini-logos{grid-template-columns:1fr}.sponsor-package{padding:1.25rem}.sponsor-callout-inner .btn{width:100%}}

/* Final event structure updates */
.brand img{height:76px;width:auto}.nav-dropdown{position:relative}.nav-dropdown>button{border:0;background:transparent;font:inherit;font-weight:700;font-size:.92rem;color:#173f66;cursor:pointer;padding:0}.nav-dropdown:hover>button{color:var(--aqua)}.dropdown-menu{display:none;position:absolute;top:100%;left:0;min-width:190px;background:white;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:.55rem;z-index:80}.dropdown-menu a{display:block;padding:.65rem .8rem;border-radius:12px;white-space:nowrap}.dropdown-menu a:hover{background:var(--bg)}.nav-dropdown:hover .dropdown-menu{display:block}.expanded-theme-grid{grid-template-columns:repeat(3,1fr)}.special-session-card{background:linear-gradient(145deg,#ffffff,#edfaff);border-color:#a9edf5}.special-session-card .theme-number{font-size:.72rem;letter-spacing:.08em}.logo-marquee{overflow:hidden;padding:1rem 0;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}.logo-track{display:flex;align-items:center;gap:1rem;width:max-content;animation:logoScroll 34s linear infinite}.logo-marquee:hover .logo-track{animation-play-state:paused}@keyframes logoScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}.sponsor-home-grid,.sponsor-intro-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:2rem;align-items:start}.sponsor-mini-panel{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem}.sponsor-mini-logos{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.sponsor-logo span,.partner-logo span{font-weight:800;text-align:center;color:var(--navy);font-size:.9rem}.sponsor-package-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.1rem}.sponsor-package{position:relative;background:white;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.6rem;overflow:hidden}.sponsor-package.highlighted{border:2px solid var(--aqua);transform:translateY(-6px)}.package-ribbon{position:absolute;right:-36px;top:20px;background:var(--aqua);color:white;font-weight:900;transform:rotate(35deg);padding:.25rem 2.4rem;font-size:.75rem}.package-level{display:inline-block;color:var(--aqua);font-weight:900;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem}.package-price{font-size:1.35rem;font-weight:900;color:var(--navy);margin:.75rem 0}.sponsor-callout{background:linear-gradient(135deg,var(--navy),#0a6b93);color:white}.sponsor-callout p{color:#dffbff}.sponsor-callout-inner{display:flex;align-items:center;justify-content:space-between;gap:2rem}.empty-sponsor-card{background:white;border:1px dashed var(--line);border-radius:var(--radius);padding:2rem;text-align:center}.committee-sections{display:grid;gap:1.5rem}.full-committee-card{box-shadow:var(--shadow)}.member-grid,.committee-preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.member-card{display:flex;align-items:center;gap:1rem;background:white;border:1px solid var(--line);border-radius:18px;padding:1rem;box-shadow:0 12px 32px rgba(6,43,85,.08)}.member-card img,.member-avatar{width:64px;height:64px;border-radius:50%;object-fit:cover;flex:none}.member-avatar{display:grid;place-items:center;background:linear-gradient(135deg,var(--aqua),var(--blue));color:white;font-weight:900;font-size:1.4rem}.member-card strong{display:block;color:var(--navy)}.member-card span{display:block;color:var(--muted);font-size:.9rem}.committee-count-card{background:linear-gradient(135deg,var(--navy),#0a6b93);color:white}.committee-count-card strong,.committee-count-card span{color:white}.album-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.album-card{display:block;background:white;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.album-card img,.album-placeholder{height:280px;width:100%;object-fit:cover}.album-placeholder{display:grid;place-items:center;background:linear-gradient(135deg,var(--navy),#0a6b93);color:white;font-size:4rem;font-weight:900}.album-card div{padding:1.2rem}.album-card span{color:var(--aqua);font-weight:900}.album-card h3{margin:.2rem 0}.album-card p{color:var(--muted);margin:0}.album-viewer{position:relative;background:#061f3d;border-radius:var(--radius);overflow:hidden;min-height:620px;display:grid;place-items:center}.album-photo{display:none;margin:0;width:100%}.album-photo.active{display:block}.album-photo img{width:100%;max-height:680px;object-fit:contain;background:#061f3d}.album-photo figcaption{position:absolute;left:0;right:0;bottom:0;padding:1.2rem 1.5rem;background:linear-gradient(0deg,rgba(0,0,0,.75),transparent);color:white}.album-photo figcaption span{display:block;color:#d8f7fb}.album-nav{position:absolute;top:50%;transform:translateY(-50%);border:0;width:56px;height:56px;border-radius:50%;background:rgba(255,255,255,.88);color:var(--navy);font-size:2.2rem;cursor:pointer;z-index:3}.album-nav.prev{left:1rem}.album-nav.next{right:1rem}.album-thumbs{display:flex;gap:.7rem;overflow:auto;margin-top:1rem;padding-bottom:.5rem}.album-thumbs button{border:3px solid transparent;background:none;padding:0;border-radius:12px;overflow:hidden;cursor:pointer;flex:0 0 110px}.album-thumbs button.active{border-color:var(--aqua)}.album-thumbs img{height:76px;width:110px;object-fit:cover}.footer-grid{grid-template-columns:1.8fr 1fr 1fr 1.6fr}.footer p{color:#b7cad8}.venue-quick-links{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.2rem}.venue-quick-links a{font-weight:900;color:var(--aqua)}
@media (max-width:1180px){.nav-menu{gap:.65rem}.nav-menu a,.nav-dropdown>button{font-size:.84rem}.brand img{height:68px}.sponsor-package-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:980px){.brand img{height:60px}.nav-dropdown{width:100%}.dropdown-menu{position:static;box-shadow:none;margin-top:.5rem}.nav-dropdown:hover .dropdown-menu{display:block}.expanded-theme-grid,.member-grid,.committee-preview-grid,.album-grid,.sponsor-home-grid,.sponsor-intro-grid{grid-template-columns:1fr}.sponsor-mini-logos{grid-template-columns:1fr}.album-viewer{min-height:420px}.sponsor-callout-inner{display:block}.sponsor-callout-inner .btn{margin-top:1rem}}
@media (max-width:640px){.brand img{height:52px}.sponsor-package-grid{grid-template-columns:1fr}.album-photo img{max-height:440px}.album-nav{width:44px;height:44px}.member-card{align-items:flex-start}.logo-marquee{mask-image:none}}

/* =========================================================
   POLISH PATCH — navigation, committee, sponsors, sessions,
   partner marquee. This block intentionally overrides older
   rules and should stay at the end of the file.
   ========================================================= */
.site-header{z-index:100}.navbar{height:92px;display:flex;align-items:center;gap:1rem}.brand{display:flex;align-items:center;flex:0 0 auto}.brand img{height:82px!important;width:auto;max-width:132px;object-fit:contain}.nav-menu{display:flex!important;align-items:center;gap:.72rem;margin-left:auto;white-space:nowrap;min-width:0}.nav-menu>a,.nav-menu .dropdown-toggle{font-weight:850;font-size:.9rem;line-height:1.1;color:#173f66;text-decoration:none}.nav-menu>a{display:inline-flex;align-items:center}.nav-menu>a:hover,.nav-menu .dropdown-toggle:hover{color:var(--aqua)}.nav-cta{flex:0 0 auto;padding:.74rem 1.15rem;white-space:nowrap}.language-switch{border:1px solid var(--line);padding:.42rem .68rem;border-radius:999px;background:#fff}.clean-dropdown{position:relative;display:inline-flex;align-items:center}.clean-dropdown .dropdown-toggle{appearance:none;-webkit-appearance:none;border:0!important;background:transparent!important;box-shadow:none!important;padding:.35rem .1rem!important;cursor:pointer;display:inline-flex;align-items:center;gap:.25rem}.clean-dropdown-menu{display:none;position:absolute;right:0;top:calc(100% + 14px);min-width:245px;background:white;border:1px solid var(--line);border-radius:18px;box-shadow:0 24px 60px rgba(6,43,85,.18);padding:.65rem;z-index:200}.clean-dropdown:hover .clean-dropdown-menu,.clean-dropdown:focus-within .clean-dropdown-menu{display:block}.clean-dropdown-menu a,.dropdown-section-title{display:block!important;padding:.72rem .85rem!important;border-radius:12px;font-weight:800!important;font-size:.9rem!important;line-height:1.2!important}.clean-dropdown-menu a:hover{background:var(--bg);color:var(--blue)}.dropdown-section-title{margin-top:.25rem;color:var(--aqua);text-transform:uppercase;font-size:.72rem!important;letter-spacing:.1em}.nav-toggle{margin-left:auto}.tracks-home-section .section-heading h2,.special-sessions-home .section-heading h2{max-width:900px}.home-theme-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}.special-sessions-home{background:linear-gradient(180deg,#f6fbfe,#ffffff)}.special-session-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:850px}.special-session-card{min-height:280px;background:linear-gradient(145deg,#ffffff,#edfaff)!important;border:1px solid #bceaf2!important}.special-session-card .theme-number{font-size:.72rem;letter-spacing:.08em;color:var(--aqua)}.special-session-info-card{background:linear-gradient(145deg,#ffffff,#f2fcff);border:1px solid #c5edf4}.sponsor-home-section{background:#fff}.sponsor-home-card{display:grid;grid-template-columns:1.05fr .95fr;gap:2rem;align-items:stretch;background:linear-gradient(135deg,#f6fbfe,#ffffff);border:1px solid var(--line);border-radius:32px;box-shadow:var(--shadow);padding:2rem}.sponsor-home-copy h2,.sponsor-intro-card h2{font-size:clamp(2rem,4vw,3.2rem);line-height:1.05;margin:.6rem 0 1rem}.sponsor-home-copy p,.sponsor-intro-card p{color:var(--muted);font-size:1.04rem}.sponsor-home-actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.4rem}.sponsor-showcase{background:white;border:1px solid var(--line);border-radius:26px;box-shadow:0 14px 36px rgba(6,43,85,.08);padding:1.4rem}.sponsor-showcase h3{margin:0 0 1rem;color:var(--navy);font-size:1.25rem}.sponsor-logo-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.sponsor-logo-card{min-height:132px;border:1px solid var(--line);border-radius:22px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.8rem;text-align:center;padding:1rem;transition:.2s ease}.sponsor-logo-card:hover{transform:translateY(-2px);box-shadow:0 18px 34px rgba(6,43,85,.1)}.sponsor-logo-card img{max-height:66px;max-width:170px;object-fit:contain}.sponsor-logo-card span{font-weight:850;color:var(--navy);font-size:.9rem;line-height:1.25}.sponsor-page-intro{background:white}.sponsor-intro-card{display:grid;grid-template-columns:1fr .95fr;gap:2rem;align-items:stretch}.sponsor-page-showcase{background:var(--bg)}.polished-package-grid .sponsor-package{border-radius:26px}.polished-package-grid .sponsor-package .btn{margin-top:1rem}.logo-marquee{overflow:hidden!important;padding:1rem 0;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}.logo-track{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;gap:1rem;width:max-content;animation:logoScroll 36s linear infinite}.logo-marquee:hover .logo-track{animation-play-state:paused}.logo-marquee .partner-logo,.marquee-logo{flex:0 0 178px!important;width:178px!important;min-width:178px!important;min-height:94px!important;height:94px!important;padding:.8rem!important;margin:0!important;display:flex!important;align-items:center!important;justify-content:center!important}.logo-marquee .partner-logo img{max-height:58px;max-width:150px;object-fit:contain}@keyframes logoScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}.committee-intro-card,.committee-hero-card{display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:center;background:white;border:1px solid var(--line);border-radius:30px;box-shadow:var(--shadow);padding:2rem;margin-bottom:2rem}.committee-intro-card h2,.committee-hero-card h2{font-size:clamp(2rem,4vw,3rem);line-height:1.05;margin:.5rem 0 1rem}.committee-intro-card p,.committee-hero-card p{color:var(--muted);max-width:850px}.polished-committee-grid,.polished-member-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.member-card{display:flex!important;align-items:center!important;gap:1rem;background:white;border:1px solid var(--line);border-radius:22px;padding:1rem;box-shadow:0 12px 32px rgba(6,43,85,.08)}.member-card img,.member-avatar{width:66px;height:66px;border-radius:50%;object-fit:cover;flex:0 0 66px}.member-avatar{display:grid!important;place-items:center;background:linear-gradient(135deg,var(--aqua),var(--blue));color:white;font-weight:950;font-size:1.35rem;text-transform:uppercase}.member-card strong{display:block;color:var(--navy);line-height:1.2}.member-card span{display:block;color:var(--muted);font-size:.92rem;line-height:1.35}.member-card small{display:block;color:#6a7f91;margin-top:.2rem}.committee-count-card{background:linear-gradient(135deg,var(--navy),#0a6b93)!important;color:white}.committee-count-card strong,.committee-count-card span{color:white}.committee-stat-stack{display:grid;grid-template-columns:1fr;gap:.8rem;min-width:220px}.committee-stat-stack div{background:linear-gradient(135deg,var(--navy),#0a6b93);color:white;border-radius:22px;padding:1.1rem;text-align:center}.committee-stat-stack strong{display:block;font-size:2.4rem;line-height:1}.committee-stat-stack span{font-weight:800;font-size:.9rem;color:#dffbff}.polished-committee-sections{display:grid;gap:2rem}.committee-block{background:white;border:1px solid var(--line);border-radius:30px;box-shadow:var(--shadow);padding:1.5rem}.committee-block-head{display:flex;align-items:center;gap:1rem;margin-bottom:1.2rem}.committee-block-head span{height:44px;width:44px;border-radius:50%;display:grid;place-items:center;background:var(--cyan);color:var(--blue);font-weight:950}.committee-block-head h2{margin:0;font-size:1.7rem}.large-member-card{min-height:108px}.footer-grid{grid-template-columns:1.8fr 1fr 1fr 1.6fr}.venue-quick-links{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.2rem}.venue-quick-links a{font-weight:900;color:var(--aqua)}
@media (max-width:1240px){.navbar.container{width:min(1240px,96vw)}.nav-menu{gap:.55rem}.nav-menu>a,.nav-menu .dropdown-toggle{font-size:.84rem}.brand img{height:74px!important}.nav-cta{padding:.65rem .9rem;font-size:.88rem}}
@media (max-width:1080px){.nav-toggle{display:block}.nav-menu{position:absolute;top:92px;left:4vw;right:4vw;background:white;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:20px;padding:1rem;display:none!important;flex-direction:column;align-items:flex-start;white-space:normal}.nav-menu.open{display:flex!important}.nav-cta{display:none}.clean-dropdown{width:100%;display:block}.clean-dropdown-menu{position:static;box-shadow:none;margin-top:.4rem;border-radius:14px;min-width:100%;display:block;background:var(--bg)}.home-theme-grid,.special-session-grid,.sponsor-home-card,.sponsor-intro-card,.polished-committee-grid,.polished-member-grid,.committee-intro-card,.committee-hero-card{grid-template-columns:1fr!important}.committee-stat-stack{grid-template-columns:repeat(2,1fr);min-width:0}.sponsor-logo-row{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.brand img{height:58px!important}.navbar{height:78px}.nav-menu{top:78px}.sponsor-home-card,.sponsor-intro-card,.committee-intro-card,.committee-hero-card,.committee-block{padding:1.2rem}.sponsor-logo-row,.committee-stat-stack{grid-template-columns:1fr}.logo-marquee{mask-image:none}.logo-marquee .partner-logo,.marquee-logo{flex-basis:148px!important;width:148px!important;min-width:148px!important}.home-theme-grid,.special-session-grid{grid-template-columns:1fr!important}}

/* Navigation + icons refinement patch */
.topbar-inner{align-items:center;line-height:1.25}.topbar-group{display:flex;align-items:center;gap:1.1rem;flex-wrap:wrap}.topbar-contact{justify-content:flex-end}.topbar-item{display:inline-flex;align-items:center;gap:.42rem;white-space:nowrap}.topbar-icon{width:16px;height:16px;flex:0 0 16px;color:#7ee7f1}.meta-icon{width:18px;height:18px;flex:0 0 18px;margin-right:.42rem;color:#9ffaff}.event-meta span{display:inline-flex;align-items:center;gap:.15rem}.footer p svg,.footer a svg{vertical-align:middle}

@media (min-width:1081px){
  .navbar.container{width:min(1320px,96vw)}
  .navbar{height:88px!important;display:grid!important;grid-template-columns:minmax(125px,175px) minmax(0,1fr) auto;align-items:center;gap:1rem}
  .brand{justify-self:start}.brand img{height:72px!important;width:auto}.nav-toggle{display:none!important}
  .nav-menu{margin:0!important;display:flex!important;align-items:center;justify-content:center;gap:.68rem;white-space:nowrap;min-width:0;overflow:visible}
  .nav-menu>a,.nav-menu .dropdown-toggle{font-size:.88rem!important;font-weight:850;line-height:1.1;color:#173f66}.nav-menu>a{display:inline-flex;align-items:center}
  .proceedings-dropdown .dropdown-toggle{white-space:nowrap}.nav-cta{justify-self:end;white-space:nowrap;padding:.68rem 1.12rem!important}
  .clean-dropdown-menu{left:50%!important;right:auto!important;transform:translateX(-50%);top:calc(100% + 14px)}
}

@media (max-width:1180px) and (min-width:1081px){
  .navbar.container{width:min(1380px,98vw)}.navbar{grid-template-columns:minmax(110px,150px) minmax(0,1fr) auto;gap:.65rem}.brand img{height:66px!important}.nav-menu{gap:.48rem}.nav-menu>a,.nav-menu .dropdown-toggle{font-size:.8rem!important}.nav-cta{font-size:.84rem;padding:.62rem .9rem!important}
}

@media (max-width:1080px){
  .topbar-inner{align-items:flex-start}.topbar-contact{display:flex!important;justify-content:flex-start}.topbar-group{gap:.65rem 1rem}.navbar{display:flex!important}.brand img{height:62px!important}.nav-menu{justify-content:flex-start!important;gap:.4rem!important}.clean-dropdown-menu{left:auto!important;transform:none!important}.nav-menu .clean-dropdown{width:100%}.nav-menu .dropdown-toggle{padding:.55rem 0!important}
}
@media (max-width:640px){.topbar-inner{display:grid;gap:.35rem}.topbar-item{white-space:normal}.topbar-icon{width:15px;height:15px}.brand img{height:56px!important}}


/* Footer 5-column reorganisation */
.footer-grid-five{display:grid!important;grid-template-columns:minmax(230px,1.65fr) minmax(135px,.9fr) minmax(150px,1fr) minmax(155px,1fr) minmax(245px,1.35fr)!important;gap:2.2rem;align-items:start}.footer-col h3{margin:0 0 1rem;color:#fff;font-size:1.05rem}.footer-col a,.footer-address-col a{display:block;margin:.42rem 0;color:#d7e6f0;line-height:1.35}.footer-col a:hover,.footer-address-col a:hover{color:#7ee7f1}.footer-brand-col p{max-width:360px}.footer-address-col .footer-address-line{margin:.1rem 0 .9rem;color:#d7e6f0;line-height:1.5}.footer-contact-link{display:flex!important;align-items:center;gap:.48rem}.footer-icon{width:16px;height:16px;flex:0 0 16px;color:#7ee7f1}.footer-bottom{margin-top:2.4rem}@media (max-width:1180px){.footer-grid-five{grid-template-columns:1.5fr 1fr 1fr!important}.footer-address-col{grid-column:auto / span 2}}@media (max-width:760px){.footer-grid-five{grid-template-columns:1fr!important}.footer-address-col{grid-column:auto}.footer-bottom{display:block}.footer-bottom span{display:block;margin:.35rem 0}}


/* Home/menu/footer refinement patch */
.programme-brief-home{background:var(--white)!important;}
.special-sessions-home{background:var(--bg)!important;}
@media (min-width:1081px){
  .nav-menu{gap:.55rem!important;}
  .nav-menu>a,.nav-menu .dropdown-toggle{font-size:.84rem!important;}
  .language-switch{padding:.32rem .55rem!important;}
}
@media (min-width:1280px){
  .nav-menu{gap:.68rem!important;}
  .nav-menu>a,.nav-menu .dropdown-toggle{font-size:.88rem!important;}
}
.footer-grid-five{grid-template-columns:minmax(230px,1.55fr) minmax(170px,1.05fr) minmax(150px,.95fr) minmax(145px,.85fr) minmax(245px,1.35fr)!important;}

/* === Patch: proceedings pages, hero stand CTA, sponsor button polish === */
.hero-actions{display:flex;flex-wrap:wrap;gap:.85rem;align-items:center}.hero-actions .btn{white-space:nowrap}.hero-actions .btn-outline-light{background:rgba(255,255,255,.08)}
.sponsor-home-actions .btn,.sponsor-callout .btn,.sponsor-package .btn{border-radius:14px!important;padding:.88rem 1.1rem!important;line-height:1.1!important;min-height:auto!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;box-shadow:none!important}.sponsor-callout-inner .btn{white-space:nowrap}.sponsor-home-actions{align-items:center}.sponsor-page-showcase .sponsor-logo-card{min-height:150px}.sponsor-page-showcase .sponsor-logo-card img{max-height:76px;max-width:190px}
.proceedings-section{background:linear-gradient(180deg,#f6fbfe 0%,#fff 100%)}.proceedings-volume-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem}.proceedings-volume-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:28px;padding:2rem;box-shadow:var(--shadow);overflow:hidden}.proceedings-volume-card:after{content:"";position:absolute;right:-50px;bottom:-55px;width:155px;height:155px;background:rgba(0,188,212,.13);border-radius:50%}.volume-badge{position:absolute;right:1.2rem;top:1.2rem;background:linear-gradient(135deg,var(--navy),var(--blue));color:#fff;border-radius:18px;padding:.55rem .75rem;font-weight:950}.proceedings-volume-card h3{margin:.5rem 0 1rem;color:var(--navy);font-size:1.35rem;line-height:1.15;padding-right:4.5rem}.volume-edition{font-weight:850;color:var(--blue)!important}.volume-meta{margin:1rem 0;color:var(--muted)}.volume-meta strong{color:var(--aqua);font-size:1.35rem}.proceedings-detail-layout{display:grid;grid-template-columns:minmax(260px,360px) 1fr;gap:2rem;align-items:start}.proceedings-volume-summary{position:sticky;top:110px;background:linear-gradient(145deg,#062b55,#0b6d92);color:#fff;border-radius:30px;padding:2rem;box-shadow:var(--shadow)}.proceedings-volume-summary h2{color:#fff;font-size:1.55rem;line-height:1.15}.proceedings-volume-summary p{color:#d9edf7}.proceedings-volume-summary .section-kicker{color:#7ee7f1}.proceedings-volume-summary .btn{margin:.7rem 0 1rem}.back-link{display:block;color:#dffbff;font-weight:900;margin-top:.8rem}.proceedings-article-list{display:grid;gap:1.2rem}.compact-heading{margin-bottom:.5rem}.proceedings-article-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:1.4rem 1.5rem;box-shadow:0 14px 34px rgba(6,43,85,.08)}.article-meta-row{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:.7rem}.article-meta-row span{background:#eef8fb;color:var(--blue);border-radius:999px;padding:.28rem .62rem;font-size:.78rem;font-weight:900}.proceedings-article-card h3{margin:.2rem 0 .5rem;color:var(--navy);line-height:1.2}.article-authors{color:var(--muted);font-size:.95rem}.short-summary-box{margin:1rem 0;background:#fffdf1;border-left:4px solid var(--aqua);border-radius:14px;padding:1rem}.short-summary-box strong{color:var(--navy)}.short-summary-box p{margin:.4rem 0 0;color:#40566b}.read-more-external{display:inline-flex;align-items:center;font-weight:950;color:var(--aqua)}.theme-detail{scroll-margin-top:110px}.theme-detail .lead{font-weight:750;color:var(--blue)}.topic-card{border-left:4px solid var(--aqua)}.topic-card p{line-height:1.7}.special-session-info-card p{line-height:1.7}@media (max-width:920px){.proceedings-volume-grid,.proceedings-detail-layout{grid-template-columns:1fr}.proceedings-volume-summary{position:static}.hero-actions .btn{font-size:.92rem;padding:.82rem 1rem}}@media (max-width:560px){.hero-actions{gap:.6rem}.hero-actions .btn{width:100%;justify-content:center}.proceedings-volume-card,.proceedings-volume-summary,.proceedings-article-card{padding:1.2rem}.proceedings-volume-card h3{padding-right:0}.volume-badge{position:static;display:inline-flex;margin-bottom:.7rem}}

/* Workflow, proceedings and final polish overrides */
.venue-hero{background:linear-gradient(90deg,rgba(6,43,85,.92),rgba(6,43,85,.55)),url('../images/venue/palais_des_congres.jpg') center/cover!important;}
.proceedings-volume-card .volume-edition{display:inline-block;color:#062b55!important;background:#e8f8fb;border:1px solid #bceaf2;border-radius:999px;padding:.42rem .7rem;font-weight:900;line-height:1.35;}
.proceedings-volume-summary .volume-edition{display:inline-block;color:#062b55!important;background:#e8f8fb;border:1px solid rgba(255,255,255,.35);border-radius:999px;padding:.45rem .75rem;font-weight:900;line-height:1.35;}
.albums-preview-section .inline-heading .btn,.albums-preview-section .btn{border-radius:14px!important;padding:.78rem 1.05rem!important;min-height:auto!important;line-height:1.1!important;box-shadow:none!important;}
.site-form input[type=file]{padding:.75rem;background:#f8fbfd;}
.dashboard-link-hint{margin-top:1rem;}

.documents-section{background:#f5fbfd}.document-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.document-card{background:white;border:1px solid var(--line);border-radius:22px;padding:1.3rem;box-shadow:var(--shadow)}.document-badge{color:var(--aqua);font-weight:900}.footer-documents-list{margin-top:1rem;padding-top:.8rem;border-top:1px solid rgba(255,255,255,.12)}.side-event-home-section{background:linear-gradient(180deg,#f0f8fb,#fff)}.side-event-hero{background:linear-gradient(90deg,rgba(6,43,85,.92),rgba(6,43,85,.62))}.programme-row-side-event{background:#f2fbfc}.side-event-programme-link a{font-weight:900;color:var(--aqua)}@media(max-width:900px){.document-grid{grid-template-columns:1fr}}

/* Side event + official documents polish */
.documents-section {
  background: linear-gradient(180deg, #f4fbfd 0%, #ffffff 100%);
  overflow: hidden;
}
.document-grid-polished {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.25rem;
}
.document-card-polished {
  position: relative;
  min-height: 260px;
  display: flex;
  flex-direction: column;
  gap: .7rem;
  padding: 1.55rem;
  border-radius: 26px;
  border: 1px solid rgba(20, 184, 200, .22);
  background: #fff;
  box-shadow: 0 20px 55px rgba(6, 43, 85, .08);
  overflow: hidden;
}
.document-card-polished:after {
  content: '';
  position: absolute;
  right: -54px;
  bottom: -54px;
  width: 150px;
  height: 150px;
  border-radius: 999px;
  background: rgba(20, 184, 200, .11);
}
.doc-icon {
  width: 58px;
  height: 58px;
  border-radius: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, var(--navy), var(--aqua));
  color: #fff;
  font-weight: 900;
  letter-spacing: .04em;
  box-shadow: 0 14px 30px rgba(6,43,85,.16);
}
.document-card-polished h3 { margin: .2rem 0 0; line-height: 1.2; }
.document-card-polished p { color: var(--muted); margin: 0; }
.document-card-polished strong { margin-top: auto; color: var(--blue); }
.document-badge {
  color: var(--aqua);
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.footer-documents-list {
  margin-top: 1rem;
  padding-top: .9rem;
  border-top: 1px solid rgba(255,255,255,.12);
}
.footer-documents-list strong {
  display: block;
  color: #fff;
  margin-bottom: .35rem;
  font-size: .94rem;
}
.footer-documents-list a { font-size: .95rem; line-height: 1.35; }
.btn-flat {
  border-radius: 18px;
  padding: .78rem 1.15rem;
}
.side-event-home-section { background: linear-gradient(180deg, #f2f8fb 0%, #ffffff 100%); }
.side-event-heading-home .btn { white-space: nowrap; }
.side-event-panel-card a { position: relative; z-index: 2; font-weight: 900; color: var(--blue); }
.side-event-hero { background: linear-gradient(90deg, rgba(6,43,85,.92), rgba(6,43,85,.58)), radial-gradient(circle at 20% 10%, rgba(20,184,200,.26), transparent 42%); }
.side-event-intro-grid, .side-event-results-grid { align-items: start; }
.linebreak-list { color: var(--muted); }
.side-panel-detail-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.25rem;
}
.side-panel-detail-card {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 26px;
  padding: 1.5rem;
  box-shadow: var(--shadow);
}
.side-panel-detail-card h3 { margin: .5rem 0 .8rem; }
.committee-mini-list {
  max-height: 640px;
  overflow: auto;
  padding-right: .35rem;
}
.committee-mini-list p { border-bottom: 1px solid var(--line); padding-bottom: .75rem; }
.committee-mini-list p:last-child { border-bottom: 0; }
.side-partner-logo-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
}
.side-partner-card {
  min-height: 132px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: .7rem;
  text-align: center;
  padding: 1rem;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 22px;
  box-shadow: 0 14px 35px rgba(6,43,85,.06);
  font-weight: 900;
}
.side-partner-card img { max-height: 58px; max-width: 150px; object-fit: contain; }
@media(max-width: 980px) {
  .document-grid-polished, .side-panel-detail-grid, .side-partner-logo-grid { grid-template-columns: 1fr; }
  .side-event-heading-home { align-items: flex-start; }
}

/* DESIGN_REPAIR_PATCH_START */
/* Professional documents, side event and footer repair */
.official-docs-section {
  background: linear-gradient(180deg, #f4fbfd 0%, #ffffff 100%);
  overflow: hidden;
}
.official-docs-heading {
  max-width: 900px;
}
.official-docs-heading h2 {
  font-size: clamp(2rem, 4vw, 3.6rem);
  line-height: 1.05;
}
.official-docs-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.25rem;
}
.official-doc-card {
  position: relative;
  display: grid;
  grid-template-columns: 74px 1fr;
  gap: 1.15rem;
  min-height: 230px;
  padding: 1.45rem;
  border-radius: 28px;
  border: 1px solid rgba(20, 184, 200, .22);
  background: #fff;
  box-shadow: 0 22px 60px rgba(6, 43, 85, .08);
  overflow: hidden;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.official-doc-card:after {
  content: '';
  position: absolute;
  right: -58px;
  bottom: -58px;
  width: 155px;
  height: 155px;
  border-radius: 999px;
  background: rgba(20, 184, 200, .10);
}
.official-doc-card:hover {
  transform: translateY(-3px);
  border-color: rgba(20, 184, 200, .45);
  box-shadow: 0 28px 70px rgba(6, 43, 85, .12);
}
.official-doc-icon {
  width: 64px;
  height: 76px;
  border-radius: 18px 18px 22px 22px;
  background: linear-gradient(135deg, var(--navy), var(--aqua));
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 900;
  letter-spacing: .05em;
  box-shadow: 0 16px 34px rgba(6,43,85,.16);
}
.official-doc-body { position: relative; z-index: 1; display: flex; flex-direction: column; }
.official-doc-meta {
  color: var(--aqua);
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  font-size: .76rem;
}
.official-doc-card h3 {
  margin: .4rem 0 .45rem;
  line-height: 1.2;
  color: var(--navy);
}
.official-doc-card p {
  margin: 0 0 1rem;
  color: var(--muted);
}
.official-doc-card strong {
  margin-top: auto;
  color: var(--blue);
  font-weight: 900;
}
.footer-documents-compact {
  margin-top: .85rem;
  padding-top: .85rem;
  border-top: 1px solid rgba(255,255,255,.12);
}
.footer-documents-compact .footer-document-link {
  position: relative;
  padding-left: 1.15rem;
  line-height: 1.35;
  font-size: .95rem;
}
.footer-documents-compact .footer-document-link:before {
  content: '↧';
  position: absolute;
  left: 0;
  color: var(--aqua);
  font-weight: 900;
}
.side-event-home-section {
  background: linear-gradient(180deg, #eef7fb 0%, #ffffff 100%);
}
.side-event-heading-home .side-event-theme {
  color: var(--navy);
}
.side-event-cta-btn,
.side-event-home-section .btn,
.side-event-hero .btn {
  border-radius: 999px;
  padding: .78rem 1.25rem;
  min-height: 44px;
  white-space: nowrap;
}
.side-event-panel-card {
  min-height: 285px;
}
.side-event-hero {
  background:
    linear-gradient(90deg, rgba(6,43,85,.92), rgba(6,43,85,.62)),
    radial-gradient(circle at 15% 20%, rgba(20,184,200,.28), transparent 35%);
}
.side-event-overview-grid,
.side-event-goals-grid {
  align-items: start;
}
.side-event-copy-card {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  padding: 2rem;
}
.side-event-key-card .section-kicker {
  color: #9ffaff;
}
.side-event-goals-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.25rem;
}
.side-event-goal-wide {
  grid-column: 1 / -1;
}
.side-event-goal-card {
  position: relative;
  overflow: hidden;
}
.side-event-goal-card:after,
.side-event-panel-detail-card:after {
  content: '';
  position: absolute;
  right: -60px;
  bottom: -60px;
  width: 150px;
  height: 150px;
  border-radius: 999px;
  background: rgba(20,184,200,.10);
}
.side-event-card-number {
  display: inline-flex;
  width: 44px;
  height: 44px;
  align-items: center;
  justify-content: center;
  border-radius: 14px;
  background: rgba(20,184,200,.14);
  color: var(--aqua);
  font-weight: 900;
  margin-bottom: .8rem;
}
.linebreak-list {
  color: var(--muted);
}
.linebreak-list br {
  content: '';
  display: block;
  margin: .45rem 0;
}
.side-event-panel-detail-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.25rem;
}
.side-event-panel-detail-card {
  position: relative;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  padding: 1.65rem;
  overflow: hidden;
}
.side-event-panel-detail-card h3,
.side-event-panel-detail-card .linebreak-list,
.side-event-goal-card h3,
.side-event-goal-card p,
.side-event-goal-card .linebreak-list {
  position: relative;
  z-index: 1;
}
.side-event-committee-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}
.side-event-member-card {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 20px;
  padding: 1.05rem;
  box-shadow: 0 14px 35px rgba(6,43,85,.06);
}
.side-event-member-card strong { display: block; color: var(--navy); }
.side-event-member-card span { display: block; color: var(--muted); margin-top: .25rem; }
.side-event-member-card small { display: inline-flex; margin-top: .5rem; color: var(--aqua); font-weight: 900; }
.side-event-partners-section .section-heading { max-width: 980px; }
.side-event-partner-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
}
.side-event-partner-card {
  min-height: 132px;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 16px 45px rgba(6,43,85,.07);
  padding: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: .8rem;
  text-align: center;
  font-weight: 800;
  color: var(--navy);
}
.side-event-partner-card img {
  max-height: 58px;
  max-width: 150px;
  object-fit: contain;
}
.programme-row-side-event {
  background: #f2fbfd;
}
.side-event-programme-link a {
  display: inline-flex;
  margin-top: .4rem;
  color: var(--blue);
  font-weight: 900;
}
@media (max-width: 1050px) {
  .official-docs-grid,
  .side-event-committee-grid,
  .side-event-partner-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .official-docs-grid,
  .side-event-goals-grid,
  .side-event-panel-detail-grid,
  .side-event-committee-grid,
  .side-event-partner-grid { grid-template-columns: 1fr; }
  .official-doc-card { grid-template-columns: 1fr; }
  .side-event-goal-wide { grid-column: auto; }
}
/* DESIGN_REPAIR_PATCH_END */

/* VISUAL_FINAL_FIX_START */
.docs-polished-section {
  background: linear-gradient(180deg, #f4fbfd 0%, #ffffff 100%) !important;
  overflow: hidden;
}
.docs-polished-heading {
  max-width: 820px !important;
}
.docs-polished-heading h2 {
  max-width: 760px;
  font-size: clamp(2.1rem, 4vw, 3.6rem) !important;
  line-height: 1.05 !important;
}
.docs-polished-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 1.25rem !important;
  align-items: stretch !important;
}
.docs-polished-card {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 76px minmax(0, 1fr) !important;
  gap: 1.1rem !important;
  padding: 1.45rem !important;
  min-height: 245px !important;
  background: #fff !important;
  border: 1px solid rgba(20,184,200,.24) !important;
  border-radius: 28px !important;
  box-shadow: 0 22px 60px rgba(6,43,85,.08) !important;
  overflow: hidden !important;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease !important;
  color: var(--navy) !important;
}
.docs-polished-card:after {
  content: '';
  position: absolute;
  right: -58px;
  bottom: -58px;
  width: 160px;
  height: 160px;
  border-radius: 999px;
  background: rgba(20,184,200,.10);
}
.docs-polished-card:hover {
  transform: translateY(-3px);
  border-color: rgba(20,184,200,.50) !important;
  box-shadow: 0 30px 80px rgba(6,43,85,.12) !important;
}
.docs-polished-icon {
  position: relative;
  z-index: 1;
  width: 66px;
  height: 82px;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 18px 18px 22px 22px;
  background: linear-gradient(135deg, var(--navy), var(--aqua));
  box-shadow: 0 16px 34px rgba(6,43,85,.18);
  color: #fff;
  font-weight: 900;
  letter-spacing: .06em;
}
.docs-polished-content {
  position: relative;
  z-index: 1;
  display: flex !important;
  flex-direction: column !important;
  min-width: 0;
}
.docs-polished-meta-row {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  align-items: center;
  margin-bottom: .65rem;
}
.docs-polished-badge,
.docs-polished-type {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: .22rem .55rem;
  font-size: .72rem;
  line-height: 1;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .07em;
}
.docs-polished-badge {
  color: #fff;
  background: var(--navy);
}
.docs-polished-type {
  color: var(--aqua);
  background: rgba(20,184,200,.10);
}
.docs-polished-card h3 {
  margin: 0 0 .55rem !important;
  line-height: 1.18 !important;
  font-size: 1.2rem !important;
  color: var(--navy) !important;
}
.docs-polished-card p {
  margin: 0 0 1rem !important;
  color: var(--muted) !important;
  font-size: .98rem !important;
  line-height: 1.55 !important;
}
.docs-polished-card strong {
  margin-top: auto !important;
  color: var(--blue) !important;
  font-weight: 900 !important;
}
.footer-documents-compact {
  margin-top: .85rem !important;
  padding-top: .85rem !important;
  border-top: 1px solid rgba(255,255,255,.12) !important;
}
.footer-document-link {
  position: relative !important;
  padding-left: 1.15rem !important;
  line-height: 1.35 !important;
  font-size: .95rem !important;
}
.footer-document-link:before {
  content: '↧';
  position: absolute;
  left: 0;
  top: 0;
  color: var(--aqua);
  font-weight: 900;
}
.side-event-polished-teaser {
  background: linear-gradient(180deg, #edf8fb 0%, #ffffff 100%) !important;
}
.side-event-teaser-panel {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 2rem;
  align-items: center;
  padding: 2.2rem;
  border: 1px solid rgba(20,184,200,.18);
  border-radius: 32px;
  background: #fff;
  box-shadow: 0 22px 70px rgba(6,43,85,.08);
  margin-bottom: 1.4rem;
}
.side-event-teaser-copy h2 {
  font-size: clamp(1.8rem, 3.5vw, 3rem);
  line-height: 1.05;
  margin: .55rem 0 .7rem;
  color: var(--navy);
}
.side-event-flat-btn,
.side-event-cta-btn {
  border-radius: 999px !important;
  padding: .78rem 1.25rem !important;
  min-height: auto !important;
  line-height: 1.1 !important;
  white-space: nowrap !important;
}
.side-event-polished-hero {
  background: linear-gradient(90deg, rgba(6,43,85,.94), rgba(6,43,85,.62)), radial-gradient(circle at 80% 20%, rgba(20,184,200,.28), transparent 38%) !important;
}
.side-event-intro-card {
  background: #fff;
  border: 1px solid rgba(20,184,200,.18);
  border-radius: 30px;
  padding: 2rem;
  box-shadow: 0 20px 60px rgba(6,43,85,.07);
}
.side-event-key-card .btn { margin-top: .5rem; }
.side-event-goals-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.25rem;
}
.side-event-goal-wide {
  grid-column: 1 / -1;
}
.side-event-goal-card {
  min-height: 260px;
}
.compact-list-text {
  color: var(--muted);
  line-height: 1.65;
}
.side-event-panel-detail-grid {
  display: grid;
  gap: 1.25rem;
}
.side-event-panel-detail-card {
  display: grid;
  grid-template-columns: 96px minmax(0, 1fr);
  gap: 1.35rem;
  padding: 1.6rem;
  border: 1px solid rgba(20,184,200,.18);
  border-radius: 30px;
  background: #fff;
  box-shadow: 0 18px 55px rgba(6,43,85,.07);
}
.side-event-panel-number {
  width: 78px;
  height: 78px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 24px;
  color: #fff;
  background: linear-gradient(135deg, var(--navy), var(--aqua));
  font-size: 1.6rem;
  font-weight: 900;
}
.side-event-panel-copy h3 {
  margin: .2rem 0 .75rem;
  color: var(--navy);
  font-size: 1.35rem;
  line-height: 1.22;
}
.side-event-committee-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}
.side-event-member-card {
  display: grid;
  grid-template-columns: 44px 1fr;
  gap: .9rem;
  align-items: start;
  padding: 1rem;
  background: #fff;
  border: 1px solid rgba(20,184,200,.16);
  border-radius: 22px;
  box-shadow: 0 12px 35px rgba(6,43,85,.05);
}
.side-event-member-card strong { color: var(--navy); display: block; line-height: 1.25; }
.side-event-member-card span { color: var(--muted); display: block; margin-top: .25rem; }
.side-event-member-card small { color: var(--aqua); font-weight: 900; display: block; margin-top: .2rem; }
.member-avatar {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(20,184,200,.12);
  color: var(--blue);
  font-weight: 900;
}
.side-event-partner-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 1rem;
}
.side-event-partner-card {
  display: flex !important;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  min-height: 150px;
  padding: 1.2rem;
  border-radius: 24px;
  background: #fff;
  border: 1px solid rgba(20,184,200,.18);
  box-shadow: 0 16px 45px rgba(6,43,85,.06);
}
.side-event-partner-logo-wrap {
  height: 72px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: .8rem;
}
.side-event-partner-logo-wrap img {
  max-height: 70px;
  max-width: 150px;
  object-fit: contain;
}
.side-event-partner-logo-wrap span {
  width: 58px;
  height: 58px;
  border-radius: 18px;
  background: rgba(20,184,200,.12);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--blue);
  font-weight: 900;
}
.side-event-partner-card strong { color: var(--navy); line-height: 1.25; }
@media (max-width: 980px) {
  .docs-polished-grid,
  .side-event-goals-grid,
  .side-event-committee-grid,
  .side-event-partner-grid { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
  .side-event-teaser-panel { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .docs-polished-grid,
  .side-event-goals-grid,
  .side-event-committee-grid,
  .side-event-partner-grid { grid-template-columns: 1fr !important; }
  .docs-polished-card,
  .side-event-panel-detail-card { grid-template-columns: 1fr !important; }
}
/* VISUAL_FINAL_FIX_END */

/* LAYOUT_BALANCE_FIX_START */
/* Side event objectives/results: balanced bento layout, readable text, aligned with the global card design */
.side-event-goals-section .section-heading {
  max-width: 760px;
  margin-bottom: 2.1rem;
}
.side-event-goals-grid {
  display: grid !important;
  grid-template-columns: minmax(320px, .85fr) minmax(0, 1.15fr) !important;
  grid-template-areas:
    "general specific"
    "general results" !important;
  gap: 1.35rem !important;
  align-items: stretch !important;
}
.side-event-goals-grid .side-event-goal-card:nth-child(1) { grid-area: general !important; }
.side-event-goals-grid .side-event-goal-card:nth-child(2) { grid-area: specific !important; }
.side-event-goals-grid .side-event-goal-card:nth-child(3),
.side-event-goals-grid .side-event-goal-wide { grid-area: results !important; grid-column: auto !important; }
.side-event-goal-card {
  min-height: auto !important;
  padding: 1.75rem !important;
  border-radius: 26px !important;
  border-color: rgba(20,184,200,.22) !important;
  box-shadow: 0 18px 55px rgba(6,43,85,.075) !important;
  overflow: hidden !important;
}
.side-event-goal-card .theme-number {
  margin: 0 0 .95rem !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  height: 30px;
  padding: 0 .65rem;
  border-radius: 999px;
  background: rgba(20,184,200,.12);
  color: var(--blue) !important;
  font-size: .78rem !important;
}
.side-event-goal-card h3 {
  font-size: 1.2rem !important;
  line-height: 1.25 !important;
  margin: 0 0 .75rem !important;
  color: var(--navy) !important;
}
.side-event-goal-card p,
.side-event-goal-card .linebreak-list,
.side-event-goal-card .compact-list-text {
  font-size: .98rem !important;
  line-height: 1.72 !important;
  color: var(--muted) !important;
}
.side-event-goal-card .linebreak-list br {
  display: block;
  content: "";
  margin: .42rem 0;
}
.side-event-goals-grid .side-event-goal-card:nth-child(1) {
  background: linear-gradient(180deg, #ffffff 0%, #f7fdff 100%) !important;
}
.side-event-goals-grid .side-event-goal-card:nth-child(1) h3 {
  font-size: 1.35rem !important;
}
.side-event-goals-grid .side-event-goal-card:nth-child(1) p {
  font-size: 1.03rem !important;
}

/* Organisation committee preview: remove bad P/D/M title initials and turn the technical members card into a clean CTA bar */
.about-committee-section .polished-committee-grid,
.about-committee-section .committee-preview-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 1.15rem !important;
  align-items: stretch !important;
}
.about-committee-section .member-card {
  min-height: 104px !important;
  border-radius: 26px !important;
  padding: 1.05rem 1.2rem !important;
  box-shadow: 0 14px 38px rgba(6,43,85,.065) !important;
}
.about-committee-section .member-avatar,
.committee-page-section .member-avatar {
  width: 58px !important;
  height: 58px !important;
  flex: 0 0 58px !important;
  border-radius: 999px !important;
  background: rgba(20,184,200,.13) !important;
  color: var(--blue) !important;
  font-size: 1.05rem !important;
  font-weight: 950 !important;
}
.about-committee-section .member-card strong {
  font-size: 1.08rem !important;
  line-height: 1.18 !important;
}
.about-committee-section .member-card span {
  font-size: .95rem !important;
  line-height: 1.35 !important;
}
.about-committee-section .committee-count-card {
  grid-column: 1 / -1 !important;
  display: grid !important;
  grid-template-columns: 76px minmax(0, 1fr) auto !important;
  align-items: center !important;
  min-height: 96px !important;
  padding: 1.25rem 1.45rem !important;
  border-radius: 28px !important;
  background: linear-gradient(135deg, var(--navy), #0b7ea3) !important;
  box-shadow: 0 20px 55px rgba(6,43,85,.14) !important;
}
.about-committee-section .committee-count-card:after {
  content: "→";
  width: 48px;
  height: 48px;
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255,255,255,.14);
  color: #fff;
  font-weight: 950;
}
.about-committee-section .committee-count-card .committee-plus-avatar {
  background: rgba(255,255,255,.14) !important;
  color: #fff !important;
  font-size: 1.6rem !important;
}
.about-committee-section .committee-count-card strong {
  color: #fff !important;
  font-size: 1.2rem !important;
}
.about-committee-section .committee-count-card span {
  color: #dffbff !important;
  font-size: 1rem !important;
}
.committee-page-section .member-card,
.committee-page-section .large-member-card {
  min-height: 112px !important;
}
.committee-page-section .member-card strong {
  font-size: 1.05rem !important;
}
.committee-page-section .member-card span,
.committee-page-section .member-card small {
  font-size: .94rem !important;
}
@media (max-width: 980px) {
  .side-event-goals-grid {
    grid-template-columns: 1fr !important;
    grid-template-areas:
      "general"
      "specific"
      "results" !important;
  }
  .about-committee-section .polished-committee-grid,
  .about-committee-section .committee-preview-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 640px) {
  .about-committee-section .polished-committee-grid,
  .about-committee-section .committee-preview-grid {
    grid-template-columns: 1fr !important;
  }
  .about-committee-section .committee-count-card {
    grid-template-columns: 58px minmax(0, 1fr) !important;
  }
  .about-committee-section .committee-count-card:after { display: none; }
}
/* LAYOUT_BALANCE_FIX_END */

/* OMAC_OBSERVATORY_BUTTON_START */
.omac-observatory-link {
  border-radius: 18px !important;
  padding: .78rem 1.15rem !important;
  font-weight: 900 !important;
  letter-spacing: .01em;
}
.omac-observatory-link:hover {
  transform: translateY(-1px);
  background: rgba(255,255,255,.12);
}
.side-event-hero-actions {
  align-items: center;
}
/* OMAC_OBSERVATORY_BUTTON_END */


/* OMAC_OBSERVATORY_BUTTON_FIX_START */
.omac-observatory-link {
  border-radius: 18px !important;
  padding: .78rem 1.15rem !important;
  font-weight: 900 !important;
  letter-spacing: .01em;
}
.omac-observatory-link:hover {
  transform: translateY(-1px);
  background: rgba(255,255,255,.12);
}
/* OMAC_OBSERVATORY_BUTTON_FIX_END */


/* OMAC_OBSERVATORY_BUTTON_FINAL_FIX */
.omac-observatory-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  padding: .85rem 1.25rem;
  font-weight: 800;
  text-decoration: none;
}

.event-meta-top{
  margin:1.5rem 0 .8rem;
}

.event-meta .meta-pill{
  display:inline-flex;
  align-items:center;
  gap:.75rem;
}

.organizer-meta-row{
  margin:.2rem 0 1.7rem;
}

.organizer-meta-pill{
  align-items:flex-start !important;
  max-width:880px;
  border-radius:28px !important;
  padding:.8rem 1.05rem !important;
}

.organizer-meta-icon{
  margin-top:.18rem;
  flex:0 0 auto;
}

.organizer-meta-text{
  display:block;
  line-height:1.45;
}

@media (max-width:640px){
  .organizer-meta-pill{
    max-width:100%;
  }
}

/* =========================================================
   HERO META FIX — date / venue / organisers
   Fix nested span pill issue
========================================================= */

.event-meta span{
  background:transparent !important;
  border:0 !important;
  padding:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}

.event-meta{
  display:flex;
  flex-wrap:wrap;
  gap:.9rem;
}

.event-meta-top{
  margin:1.5rem 0 .85rem;
}

.event-meta > .meta-pill{
  display:inline-flex;
  align-items:center;
  gap:.75rem;
  background:rgba(255,255,255,.12) !important;
  border:1px solid rgba(255,255,255,.22) !important;
  padding:.85rem 1.15rem !important;
  border-radius:999px !important;
  font-weight:800 !important;
  color:#fff;
}

.meta-icon{
  width:20px;
  height:20px;
  flex:0 0 auto;
  color:#9ffaff;
}

.meta-text{
  display:block;
}

.organizer-meta-row{
  margin:.15rem 0 1.8rem;
}

.event-meta > .organizer-meta-pill{
  align-items:flex-start;
  max-width:820px;
  border-radius:30px !important;
  padding:.95rem 1.2rem !important;
}

.organizer-meta-icon{
  margin-top:.2rem;
}

.organizer-meta-text{
  line-height:1.45;
}

@media (max-width:640px){
  .event-meta{
    flex-direction:column;
    align-items:flex-start;
  }

  .event-meta > .meta-pill,
  .event-meta > .organizer-meta-pill{
    max-width:100%;
  }
}

/* =========================================================
   WATER WEEK REPRISE CLEAN PATCH — 2026-08-03
   Scope: active nav color only, compact footer docs, organizers, travel, side event.
========================================================= */
.nav-menu a.active,
.nav-menu .dropdown-toggle.active {
  color: var(--aqua) !important;
  background: transparent !important;
  box-shadow: none !important;
  border-color: transparent !important;
}
.nav-menu a.active::before,
.nav-menu a.active::after,
.nav-menu .dropdown-toggle.active::before,
.nav-menu .dropdown-toggle.active::after,
.brand::before,
.brand::after,
.brand img::before,
.brand img::after {
  display: none !important;
  content: none !important;
  background: transparent !important;
  box-shadow: none !important;
}
.brand,
.brand:hover,
.brand:focus {
  background: transparent !important;
  box-shadow: none !important;
  outline: none !important;
}
.footer-documents-strip {
  margin-top: 2rem;
  padding: 1rem 0 0;
  border-top: 1px solid rgba(255,255,255,.12);
  display: grid;
  grid-template-columns: 220px minmax(0,1fr);
  gap: 1rem;
  align-items: start;
}
.footer-documents-head strong {
  display: block;
  color: #fff;
  font-size: 1rem;
}
.footer-documents-head span {
  display: block;
  color: rgba(255,255,255,.72);
  font-size: .88rem;
}
.footer-documents-pills {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
}
.footer-document-pill {
  display: inline-flex;
  align-items: center;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 999px;
  padding: .45rem .75rem;
  color: rgba(255,255,255,.88) !important;
  font-size: .86rem;
  line-height: 1.2;
  background: rgba(255,255,255,.06);
}
.footer-document-pill:hover { color: #fff !important; background: rgba(255,255,255,.11); }
.organizer-logo-grid,
.side-event-organizer-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1.1rem;
}
.organizer-logo-card,
.side-event-organizer-card {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 28px;
  box-shadow: var(--shadow);
  padding: 1.35rem;
  min-height: 190px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  text-align: center;
  transition: transform .2s ease, box-shadow .2s ease;
}
.organizer-logo-card:hover,
.side-event-organizer-card:hover { transform: translateY(-2px); box-shadow: 0 22px 44px rgba(6,43,85,.12); }
.organizer-logo-wrap,
.side-event-partner-logo-wrap.organizer-logo-wrap {
  height: 92px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.organizer-logo-wrap img,
.side-event-partner-logo-wrap.organizer-logo-wrap img {
  max-height: 86px;
  max-width: 220px;
  object-fit: contain;
}
.organizer-logo-card strong,
.side-event-organizer-card strong { color: var(--navy); line-height: 1.25; }
.committee-hero-card-clean { grid-template-columns: 1fr !important; }
.committee-organizer-grid { margin: 0 0 2rem; }
.about-committee-section .committee-count-card { text-decoration: none; }
.page-hero.side-event-original-hero,
.side-event-original-hero {
  background: linear-gradient(135deg, var(--navy) 0%, #0a6b93 100%) !important;
  color: #fff;
}
.side-event-hero-centered {
  max-width: 980px;
  text-align: left;
}
.side-event-two-line-title {
  display: flex;
  flex-direction: column;
  gap: .1em;
  max-width: 980px;
  font-size: clamp(2.8rem, 6.2vw, 5.8rem);
  line-height: .96;
  letter-spacing: -.055em;
  margin: 1rem 0;
}
.side-event-two-line-title span { display: block; }
.side-event-hero-actions { justify-content: flex-start; align-items: center; }
.side-event-panel-detail-card { align-items: start; }
.panel-objective { color: var(--navy); margin: .4rem 0 .8rem; }
.panel-speakers { margin-top: 1rem; color: var(--muted); }
.side-event-partner-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.side-event-partner-card { min-height: 160px; }
.primi-axis-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  margin: 1.25rem 0 2rem;
}
.primi-axis-card,
.template-download-card,
.travel-download-card,
.visa-card {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 24px;
  box-shadow: 0 12px 30px rgba(6,43,85,.08);
  padding: 1.25rem;
}
.primi-axis-card span { font-size: 1.8rem; }
.primi-axis-card h4 { margin: .45rem 0; color: var(--navy); }
.primi-axis-card p { color: var(--muted); margin: 0; }
.template-download-card {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 1rem;
  align-items: center;
  margin: 1.3rem 0 2rem;
  background: linear-gradient(135deg, #fff, #f2fcff);
}
.template-download-card code { display: inline-block; background: #eef7fb; padding: .35rem .55rem; border-radius: 8px; color: var(--navy); }
.deadline-box-readable,
.deadline-box-readable strong,
.deadline-box-readable span,
.deadline-box-readable small {
  color: var(--navy) !important;
}
.deadline-box-readable { background: #f2fbfc !important; border: 1px solid #bceaf2 !important; }
.travel-download-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin: 1.5rem 0 2.5rem; }
.travel-download-card { text-decoration: none; }
.travel-download-card span { color: var(--aqua); font-weight: 900; letter-spacing: .08em; }
.travel-download-card strong { display: block; color: var(--navy); margin: .35rem 0; }
.travel-download-card em { color: var(--blue); font-style: normal; font-weight: 800; }
.visa-card { margin-top: 1.2rem; }
.visa-country-list { display: flex; flex-wrap: wrap; gap: .45rem; margin-top: 1rem; max-height: 280px; overflow: auto; padding-right: .3rem; }
.visa-country-list span { background: #eef7fb; color: var(--navy); border-radius: 999px; padding: .35rem .65rem; font-size: .88rem; font-weight: 700; }
.required-star { color: #c0392b; font-weight: 900; }
.form-errors { margin-bottom: 1rem; }
@media (max-width: 980px) {
  .organizer-logo-grid,
  .side-event-organizer-grid,
  .side-event-partner-grid,
  .primi-axis-grid,
  .travel-download-grid,
  .footer-documents-strip { grid-template-columns: 1fr 1fr; }
  .template-download-card { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .organizer-logo-grid,
  .side-event-organizer-grid,
  .side-event-partner-grid,
  .primi-axis-grid,
  .travel-download-grid,
  .footer-documents-strip { grid-template-columns: 1fr; }
  .side-event-two-line-title { font-size: clamp(2.25rem, 10vw, 3.7rem); }
}

/* Follow-up corrections: guided forms, compact useful links, venue travel CTA */
.form-guided-section { padding-top: 54px; }
.form-guided-layout { display: grid; grid-template-columns: minmax(280px, 0.88fr) minmax(0, 1.22fr); gap: 28px; align-items: start; }
.form-guided-layout-single { display: block; max-width: 840px; margin: 0 auto; }
.submission-guidelines-card { position: sticky; top: 116px; border-radius: 28px; padding: 28px; background: linear-gradient(145deg, rgba(255,255,255,.96), rgba(239,250,255,.96)); border: 1px solid rgba(1,84,112,.14); box-shadow: 0 22px 55px rgba(7,46,68,.12); overflow: hidden; }
.submission-guidelines-card::before { content: ""; position: absolute; inset: 0 0 auto 0; height: 6px; background: linear-gradient(90deg, var(--primary), var(--secondary), var(--accent)); }
.submission-guidelines-card h2 { margin: 8px 0 12px; font-size: clamp(1.45rem, 2.2vw, 2rem); line-height: 1.15; color: var(--ink); }
.submission-guidelines-card p { color: var(--muted); }
.guidelines-list { list-style: none; margin: 20px 0; padding: 0; display: grid; gap: 12px; }
.guidelines-list li { position: relative; padding: 13px 14px 13px 40px; border-radius: 16px; background: rgba(255,255,255,.78); border: 1px solid rgba(1,84,112,.1); color: var(--ink); line-height: 1.45; }
.guidelines-list li::before { content: "✓"; position: absolute; left: 14px; top: 13px; width: 18px; height: 18px; display: grid; place-items: center; border-radius: 999px; background: rgba(13,148,136,.12); color: var(--secondary); font-weight: 900; font-size: .78rem; }
.guidelines-download { width: 100%; justify-content: center; margin-top: 4px; }
.guidelines-note { margin: 14px 0 0; font-size: .92rem; }
.guided-site-form { box-shadow: 0 22px 60px rgba(5,36,58,.10); border: 1px solid rgba(1,84,112,.10); }
.checkbox-group { display: flex; align-items: flex-start; gap: 10px; flex-wrap: wrap; padding: 12px 14px; border-radius: 16px; background: rgba(1,84,112,.04); }
.checkbox-group label { order: 2; margin: 0; flex: 1; }
.checkbox-group input[type="checkbox"] { order: 1; margin-top: 3px; width: 18px; height: 18px; }
.checkbox-group small { order: 3; flex-basis: 100%; margin-left: 28px; }
.footer-useful-strip { margin-top: 18px; padding: 18px 0 0; border-top: 1px solid rgba(255,255,255,.14); }
.footer-useful-strip .footer-document-pill { background: rgba(255,255,255,.09); }
.venue-travel-cta-section { padding-top: 0; }
.venue-travel-cta-card { display: flex; justify-content: space-between; gap: 24px; align-items: center; padding: 30px; border-radius: 28px; background: linear-gradient(135deg, rgba(0,91,130,.96), rgba(13,148,136,.92)); color: #fff; box-shadow: 0 24px 58px rgba(2,48,71,.16); }
.venue-travel-cta-card h2 { margin: 6px 0 10px; color: #fff; }
.venue-travel-cta-card p { margin: 0; color: rgba(255,255,255,.86); max-width: 760px; }
.venue-travel-cta-card .section-kicker { color: rgba(255,255,255,.72); }
.venue-travel-cta-card .btn-primary { background: #fff; color: #062b55; border-color: #fff; white-space: nowrap; }
@media (max-width: 900px) {
  .form-guided-layout { grid-template-columns: 1fr; }
  .submission-guidelines-card { position: relative; top: auto; }
  .venue-travel-cta-card { align-items: flex-start; flex-direction: column; }
}


/* Follow-up 2: Venue CTA, Destination Benin and footer cleanup */
.venue-travel-cta-card .venue-travel-btn,
.venue-travel-cta-card .btn-light {
  background: #fff !important;
  color: #062b55 !important;
  border-color: #fff !important;
  box-shadow: 0 14px 32px rgba(2, 48, 71, .18);
  white-space: nowrap;
  gap: .55rem;
}
.venue-travel-cta-card .venue-travel-btn:hover,
.venue-travel-cta-card .btn-light:hover {
  color: #062b55 !important;
  transform: translateY(-1px);
}
.footer-contact-link {
  display: flex !important;
  align-items: flex-start;
  gap: .55rem;
}
.footer-address-line.footer-contact-link {
  margin: .1rem 0 .9rem;
}
.footer-icon {
  width: 17px;
  height: 17px;
  flex: 0 0 17px;
  margin-top: .2rem;
  color: #7ee7f1;
}
.destination-section {
  background: linear-gradient(180deg, #f5fbfd, #fff);
}
.destination-heading {
  max-width: 900px;
}
.destination-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.25rem;
}
.destination-card {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 26px;
  overflow: hidden;
  box-shadow: var(--shadow);
  display: flex;
  flex-direction: column;
  min-height: 100%;
}
.destination-card-media {
  position: relative;
  overflow: hidden;
  background: #eaf6fa;
}
.destination-card-media img {
  width: 100%;
  height: 270px;
  object-fit: cover;
  transition: transform .35s ease;
}
.destination-card:hover .destination-card-media img {
  transform: scale(1.035);
}
.destination-card-body {
  padding: 1.25rem;
}
.destination-card-body h3 {
  margin: 0 0 .45rem;
  color: var(--navy);
  line-height: 1.15;
}
.destination-location {
  display: inline-flex;
  margin-bottom: .75rem;
  color: var(--aqua);
  font-weight: 900;
  font-size: .88rem;
  text-transform: uppercase;
  letter-spacing: .06em;
}
.destination-card-body p {
  color: var(--muted);
  margin: 0;
}
@media (max-width: 900px) {
  .destination-grid { grid-template-columns: 1fr; }
  .venue-travel-cta-card .venue-travel-btn,
  .venue-travel-cta-card .btn-light { white-space: normal; }
}


/* OMAC programme + patronage patch */
.programme-pro-intro-section { padding-bottom: 0; }
.programme-pro-intro { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 28px; align-items: end; }
.programme-pro-intro h2 { margin-bottom: 10px; }
.programme-pro-intro p { max-width: 820px; color: var(--muted); }
.programme-track-legend { display: flex; flex-wrap: wrap; gap: 10px; justify-content: flex-end; }
.legend-pill, .track-badge { display: inline-flex; align-items: center; border-radius: 999px; padding: 7px 12px; font-weight: 800; font-size: .78rem; letter-spacing: .01em; }
.legend-pill.main-track, .track-badge.main-track { background: rgba(12, 96, 160, .10); color: #075985; }
.legend-pill.side-track, .track-badge.side-track { background: rgba(8, 145, 178, .14); color: #0e7490; }
.legend-pill.neutral-track, .track-badge.neutral-track { background: rgba(100, 116, 139, .14); color: #475569; }
.programme-track-row { align-items: stretch; }
.programme-track-row time { font-weight: 900; }
.programme-row-main { width: 100%; }
.programme-row-topline { margin-bottom: 8px; }
.programme-row-side-event { border-left: 5px solid #0891b2; background: linear-gradient(135deg, rgba(236, 254, 255, .95), rgba(255, 255, 255, .98)); }
.programme-row-break { background: rgba(248, 250, 252, .8); }
.programme-side-cta { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; margin-top: 12px; }
.btn-small { padding: 9px 14px; font-size: .9rem; }
.programme-download-link { font-weight: 800; color: var(--primary); text-decoration: none; }
.programme-download-link:hover { text-decoration: underline; }

.side-event-programme-section { position: relative; }
.omac-programme-board { display: grid; gap: 18px; }
.omac-programme-day-label { margin: 18px 0 2px; font-size: 1.1rem; color: var(--primary); text-transform: uppercase; letter-spacing: .08em; }
.omac-programme-session { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 18px; border: 1px solid rgba(15, 23, 42, .08); background: #fff; border-radius: 24px; padding: 18px; box-shadow: 0 14px 38px rgba(15, 23, 42, .07); }
.omac-session-time { font-weight: 950; color: var(--primary); font-size: 1.05rem; padding-top: 4px; }
.omac-session-topline { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 8px; }
.omac-session-type, .omac-session-room { border-radius: 999px; padding: 5px 10px; font-size: .75rem; font-weight: 900; background: rgba(8, 145, 178, .12); color: #0e7490; }
.omac-session-room { background: rgba(12, 96, 160, .10); color: #075985; }
.omac-session-body h3 { margin: 0 0 8px; font-size: 1.2rem; }
.omac-session-objective, .omac-session-moderators { margin: 7px 0; color: var(--text); }
.omac-session-description { color: var(--muted); margin: 8px 0 0; }
.omac-talk-list { margin-top: 14px; display: grid; border-top: 1px solid rgba(15, 23, 42, .08); }
.omac-talk-row { display: grid; grid-template-columns: 115px 210px minmax(0, 1fr); gap: 12px; padding: 10px 0; border-bottom: 1px solid rgba(15, 23, 42, .07); align-items: start; }
.omac-talk-time { font-weight: 900; color: #075985; }
.omac-talk-speaker { color: var(--text); }
.omac-talk-title { color: var(--muted); }
.session-break, .session-lunch, .session-gala { background: linear-gradient(135deg, rgba(248, 250, 252, .96), rgba(255, 255, 255, .98)); }
.session-field_visit { border-left: 5px solid #16a34a; }
.session-panel { border-left: 5px solid #0891b2; }

.patronage-section { padding-bottom: 0; }
.patronage-card { display: grid; grid-template-columns: minmax(0, .9fr) minmax(320px, 1.1fr); gap: 28px; align-items: center; border-radius: 28px; padding: 30px; background: linear-gradient(135deg, rgba(240, 249, 255, .96), rgba(255, 255, 255, .98)); border: 1px solid rgba(14, 116, 144, .14); box-shadow: 0 18px 48px rgba(15, 23, 42, .08); }
.patronage-copy h2 { margin-bottom: 10px; }
.patronage-copy p { color: var(--muted); }
.patronage-logo-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.patronage-logo-card { display: grid; place-items: center; gap: 12px; min-height: 170px; padding: 22px; border-radius: 22px; background: #fff; border: 1px solid rgba(15, 23, 42, .08); text-align: center; color: var(--text); text-decoration: none; box-shadow: 0 10px 28px rgba(15, 23, 42, .06); }
.patronage-logo-card img { max-width: 180px; max-height: 92px; object-fit: contain; }
.patronage-logo-card strong { font-size: .95rem; }

@media (max-width: 800px) {
  .programme-pro-intro, .patronage-card { grid-template-columns: 1fr; }
  .programme-track-legend { justify-content: flex-start; }
  .omac-programme-session { grid-template-columns: 1fr; }
  .omac-talk-row { grid-template-columns: 1fr; gap: 4px; }
  .patronage-logo-grid { grid-template-columns: 1fr; }
}

/* Challenge, BloChallenge and patronage refinements — 2026-08-13 */
.nav-dropdown .dropdown-toggle[href] {
  display: inline-flex;
  align-items: center;
  gap: .25rem;
  text-decoration: none;
}
.nav-dropdown:hover .clean-dropdown-menu,
.nav-dropdown:focus-within .clean-dropdown-menu {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}
.challenge-dropdown .clean-dropdown-menu a {
  white-space: nowrap;
}

.patronage-card {
  align-items: center;
}
.patronage-heading {
  font-size: clamp(2rem, 4vw, 3.3rem);
  line-height: 1.05;
  margin-bottom: 0;
}
.patronage-copy p {
  max-width: 760px;
  margin-top: 1rem;
}
.patronage-logo-only-grid {
  align-items: stretch;
}
.patronage-logo-card.logo-only-card {
  min-height: 190px;
  padding: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.patronage-logo-card.logo-only-card img {
  max-width: 100%;
  max-height: 140px;
  object-fit: contain;
}
.sponsor-logo-card {
  min-height: 130px;
  justify-content: center;
}
.sponsor-logo-card img {
  max-height: 92px;
  max-width: 100%;
  object-fit: contain;
}

.programme-row-topline:empty { display: none; }
.track-badge.challenge-track,
.legend-pill.challenge-track {
  background: rgba(124, 58, 237, .10);
  color: #5b21b6;
  border-color: rgba(124, 58, 237, .24);
}
.programme-row-challenge {
  border-left: 4px solid #7c3aed;
  background: linear-gradient(90deg, rgba(124,58,237,.07), rgba(255,255,255,0));
}
.programme-row-side-event {
  border-left: 4px solid #0891b2;
}

.challenge-hero,
.blochallenge-hero {
  background: radial-gradient(circle at top left, rgba(34, 211, 238, .24), transparent 35%), linear-gradient(135deg, #062136 0%, #0e7490 55%, #0891b2 100%);
  color: #fff;
}
.challenge-hero-inner {
  max-width: 980px;
  padding: 5rem 0;
}
.challenge-hero h1,
.blochallenge-hero h1 {
  font-size: clamp(2.5rem, 6vw, 5rem);
  line-height: .98;
  max-width: 980px;
}
.challenge-overview-section .section-heading,
.blochallenge-programme-section .section-heading {
  max-width: 920px;
}
.challenge-card-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.5rem;
}
.challenge-card {
  border: 1px solid rgba(15, 118, 110, .14);
  border-radius: 28px;
  padding: 2rem;
  background: #fff;
  box-shadow: 0 18px 45px rgba(15, 23, 42, .08);
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.challenge-chip {
  display: inline-flex;
  width: fit-content;
  border-radius: 999px;
  padding: .35rem .75rem;
  background: rgba(14, 116, 144, .10);
  color: #0e7490;
  font-weight: 800;
  font-size: .78rem;
  text-transform: uppercase;
  letter-spacing: .06em;
}
.challenge-card h3 {
  font-size: clamp(1.7rem, 3vw, 2.4rem);
  margin: 0;
}
.challenge-card-actions {
  margin-top: auto;
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
}
.challenge-programme-board {
  display: grid;
  gap: 1.25rem;
}
.challenge-programme-day {
  background: #fff;
  border: 1px solid rgba(15, 23, 42, .08);
  border-radius: 24px;
  box-shadow: 0 18px 45px rgba(15, 23, 42, .07);
  overflow: hidden;
}
.challenge-day-head {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: center;
  padding: 1.1rem 1.35rem;
  background: linear-gradient(90deg, rgba(14, 116, 144, .12), rgba(124, 58, 237, .10));
}
.challenge-day-head h3 { margin: 0; }
.challenge-day-head span { font-weight: 700; color: #0f766e; }
.challenge-programme-table { display: grid; }
.challenge-programme-row {
  display: grid;
  grid-template-columns: 150px minmax(0, 1.3fr) minmax(160px, .7fr);
  gap: 1rem;
  align-items: start;
  padding: 1rem 1.35rem;
  border-top: 1px solid rgba(15, 23, 42, .08);
}
.challenge-programme-row time {
  font-weight: 800;
  color: #0e7490;
}
.challenge-programme-row span {
  color: #475569;
}
.challenge-key-card .btn + .btn { margin-top: .75rem; }
.challenge-objectives-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

@media (max-width: 900px) {
  .challenge-card-grid,
  .challenge-objectives-grid { grid-template-columns: 1fr; }
  .challenge-programme-row { grid-template-columns: 1fr; gap: .35rem; }
  .challenge-day-head { align-items: flex-start; flex-direction: column; }
  .patronage-logo-card.logo-only-card { min-height: 150px; }
}

/* === Challenge / programme final refinements 2026-08-14 === */
.legend-pill.main-track {
  background: #fff;
  color: #111827;
  border: 1px solid rgba(15, 23, 42, .18);
  box-shadow: 0 8px 18px rgba(15, 23, 42, .06);
}
.programme-day-separator {
  position: relative;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 1rem;
  align-items: center;
  margin: 2.75rem 0 1rem;
  padding: 1.1rem 1.25rem;
  border-radius: 24px;
  background: linear-gradient(135deg, rgba(6, 33, 54, .98), rgba(8, 145, 178, .92));
  color: #fff;
  box-shadow: 0 18px 45px rgba(15, 23, 42, .16);
  overflow: hidden;
}
.programme-day-separator::after {
  content: "";
  position: absolute;
  right: -40px;
  top: -60px;
  width: 180px;
  height: 180px;
  border-radius: 999px;
  background: rgba(255, 255, 255, .12);
}
.programme-day-index {
  position: relative;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 94px;
  min-height: 54px;
  padding: .55rem .9rem;
  border-radius: 18px;
  background: rgba(255,255,255,.16);
  border: 1px solid rgba(255,255,255,.24);
  color: #fff;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .06em;
}
.programme-day-separator h2 {
  position: relative;
  z-index: 1;
  margin: 0;
  color: #fff;
  font-size: clamp(1.35rem, 2.5vw, 2.15rem);
}
.programme-day-separator p {
  position: relative;
  z-index: 1;
  margin: .2rem 0 0;
  color: rgba(255,255,255,.86);
  font-weight: 700;
}
.challenge-partner-strip-section {
  padding: 1.6rem 0 0;
  background: #fff;
}
.challenge-logo-strip {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: .85rem;
  align-items: center;
  padding: 1rem;
  border: 1px solid rgba(15, 118, 110, .12);
  border-radius: 26px;
  background: rgba(255,255,255,.86);
  box-shadow: 0 16px 42px rgba(15, 23, 42, .08);
}
.challenge-logo-strip img {
  width: 100%;
  max-height: 72px;
  object-fit: contain;
  filter: saturate(1.04);
}
.challenge-details-grid,
.institution-feature-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.4rem;
}
.challenge-detail-card,
.institution-feature-grid article,
.primi-incubation-note {
  border: 1px solid rgba(15, 118, 110, .12);
  border-radius: 28px;
  background: #fff;
  padding: 1.65rem;
  box-shadow: 0 18px 45px rgba(15, 23, 42, .07);
}
.accent-card-soft {
  background: linear-gradient(135deg, rgba(236,253,245,.96), rgba(240,249,255,.96));
}
.compact-list li { margin-bottom: .55rem; }
.challenge-metrics-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .7rem;
  margin-top: 1.25rem;
}
.challenge-metrics-row span {
  display: grid;
  gap: .15rem;
  padding: .85rem;
  border-radius: 18px;
  background: rgba(255,255,255,.78);
  border: 1px solid rgba(15, 118, 110, .10);
  font-size: .82rem;
  color: #475569;
}
.challenge-metrics-row strong {
  color: #0e7490;
  font-size: 1.6rem;
  line-height: 1;
}
.institution-feature-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.primi-incubation-note {
  margin: 1.5rem 0;
  background: linear-gradient(135deg, rgba(236,253,245,.98), rgba(255,255,255,.98));
}
.patronage-logo-grid {
  grid-template-columns: repeat(2, minmax(280px, 1fr));
}
.patronage-logo-card.logo-only-card {
  min-height: 260px;
  padding: 2.4rem;
}
.patronage-logo-card.logo-only-card img {
  max-height: 210px;
}
.patronage-logo-card.logo-only-card:first-child {
  min-height: 300px;
}
.patronage-logo-card.logo-only-card:first-child img {
  max-height: 250px;
}

@media (max-width: 1000px) {
  .challenge-logo-strip { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .institution-feature-grid { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
  .programme-day-separator { grid-template-columns: 1fr; }
  .challenge-details-grid { grid-template-columns: 1fr; }
  .challenge-metrics-row { grid-template-columns: 1fr; }
  .challenge-logo-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .patronage-logo-grid { grid-template-columns: 1fr; }
}


/* CHALLENGE_SPONSOR_VISUAL_FIX_20260814
   Targeted visual corrections: sponsor logo sizing, Challenge hero consistency,
   and admin-editable Challenge partner logo carousel. */
.challenge-hero,
.blochallenge-hero {
  background: linear-gradient(135deg, var(--navy), #0a6b93) !important;
  color: #fff;
}
.challenge-hero-inner {
  padding: 3.2rem 0 3.4rem !important;
  max-width: 960px;
}
.challenge-hero h1,
.blochallenge-hero h1 {
  font-size: clamp(2.3rem, 5.2vw, 4.55rem);
  line-height: 1;
}
.challenge-hero p,
.blochallenge-hero p {
  max-width: 860px;
}
.challenge-partner-strip-section {
  padding: 2.2rem 0 0 !important;
  background: #fff;
}
.challenge-partner-strip-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: .85rem;
}
.challenge-partner-strip-head h2 {
  margin: 0;
  max-width: 760px;
  font-size: clamp(1.45rem, 2.5vw, 2.35rem);
  line-height: 1.08;
  color: var(--navy);
}
.challenge-partners-marquee {
  border: 1px solid rgba(15, 118, 110, .12);
  border-radius: 26px;
  background: rgba(255,255,255,.92);
  box-shadow: 0 16px 42px rgba(15, 23, 42, .08);
  padding: 1rem 0;
}
.challenge-partner-track {
  animation-duration: 42s;
}
.challenge-partner-logo-card {
  flex: 0 0 185px !important;
  width: 185px !important;
  min-width: 185px !important;
  height: 104px !important;
  min-height: 104px !important;
  padding: .8rem !important;
  border-radius: 20px !important;
}
.challenge-partner-logo-card img {
  max-width: 158px !important;
  max-height: 74px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
}
.challenge-partner-placeholder-logo {
  width: 100%;
  height: 68px;
  border-radius: 16px;
  border: 1.5px dashed rgba(14, 116, 144, .28);
  background:
    linear-gradient(135deg, rgba(14,116,144,.08), rgba(20,184,200,.10)),
    radial-gradient(circle at 24% 35%, rgba(14,116,144,.20), transparent 20%);
  display: block;
  position: relative;
}
.challenge-partner-placeholder-logo::after {
  content: "";
  position: absolute;
  inset: 18px 28px;
  border-radius: 999px;
  background: rgba(14, 116, 144, .10);
}
.patronage-logo-grid.patronage-logo-only-grid {
  grid-template-columns: minmax(320px, 1.28fr) minmax(290px, 1fr) !important;
  gap: clamp(1rem, 2vw, 2rem) !important;
}
.patronage-logo-card.logo-only-card {
  min-height: 300px !important;
  padding: 1.2rem !important;
  overflow: visible !important;
}
.patronage-logo-card.logo-only-card img {
  width: 100% !important;
  height: 250px !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: contain !important;
}
.patronage-logo-card.logo-only-card:first-child {
  min-height: 340px !important;
}
.patronage-logo-card.logo-only-card:first-child img {
  height: 305px !important;
  transform: scale(1.08);
  transform-origin: center;
}
@media (max-width: 900px) {
  .challenge-hero-inner { padding: 2.6rem 0 2.8rem !important; }
  .challenge-partner-strip-head { align-items: flex-start; flex-direction: column; }
  .patronage-logo-grid.patronage-logo-only-grid { grid-template-columns: 1fr !important; }
  .patronage-logo-card.logo-only-card,
  .patronage-logo-card.logo-only-card:first-child { min-height: 230px !important; }
  .patronage-logo-card.logo-only-card img,
  .patronage-logo-card.logo-only-card:first-child img { height: 190px !important; transform: none; }
}
@media (max-width: 560px) {
  .challenge-partner-logo-card { flex-basis: 150px !important; width: 150px !important; min-width: 150px !important; }
}


/* DEADLINE_CHALLENGE_VISUAL_FIX_20260814
   Targeted refinements after Challenge page review:
   - reduce Challenge hero vertical height more aggressively;
   - restore normal internal-page hero density;
   - create clearer spacing before the Challenge partners carousel;
   - enlarge actual patronage logos, not only their cards. */
.page-hero.challenge-hero,
section.page-hero.challenge-hero,
.challenge-hero.page-hero {
  min-height: 0 !important;
  height: auto !important;
  max-height: none !important;
  padding-top: clamp(2.15rem, 3.4vw, 3.25rem) !important;
  padding-bottom: clamp(2.05rem, 3.2vw, 3rem) !important;
  background: linear-gradient(135deg, var(--navy), #0a6b93) !important;
}
.page-hero.challenge-hero .container,
.page-hero.challenge-hero .challenge-hero-inner,
.challenge-hero-inner {
  min-height: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
.page-hero.challenge-hero h1 {
  margin-top: .55rem !important;
  margin-bottom: .75rem !important;
}
.page-hero.challenge-hero p {
  margin-top: 0 !important;
  margin-bottom: 1.1rem !important;
}
.page-hero.challenge-hero .hero-actions {
  margin-top: 1.15rem !important;
  margin-bottom: 0 !important;
}
.challenge-partner-strip-section {
  padding-top: clamp(3rem, 5vw, 4.6rem) !important;
  padding-bottom: clamp(2.4rem, 4vw, 3.5rem) !important;
}
.challenge-partner-strip-head {
  display: block !important;
  margin-bottom: clamp(1.6rem, 3vw, 2.4rem) !important;
}
.challenge-partner-strip-head .section-kicker,
.challenge-partner-strip-section .section-kicker {
  display: inline-flex !important;
  margin-bottom: .75rem !important;
}
.challenge-partner-strip-head h2,
.challenge-partner-strip-section h2 {
  margin-top: .35rem !important;
  margin-bottom: 0 !important;
}
.challenge-partners-marquee,
.challenge-logo-strip {
  margin-top: clamp(1.25rem, 2.4vw, 2rem) !important;
}
/* Patronage logos: increase the image box itself, including broad ministry logos. */
.patronage-logo-grid.patronage-logo-only-grid,
.patronage-logo-grid,
.patronage-grid {
  align-items: stretch !important;
}
.patronage-logo-card.logo-only-card,
.patronage-logo-grid .partner-logo,
.patronage-section .partner-logo,
.sponsors-patronage .partner-logo,
.patronage-card {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: visible !important;
}
.patronage-logo-card.logo-only-card img,
.patronage-logo-grid .partner-logo img,
.patronage-section .partner-logo img,
.sponsors-patronage .partner-logo img,
.patronage-card img {
  width: 100% !important;
  height: clamp(245px, 18vw, 360px) !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: contain !important;
}
.patronage-logo-card.logo-only-card:first-child img,
.patronage-logo-grid > *:first-child img,
.patronage-section .partner-logo:first-child img,
.sponsors-patronage .partner-logo:first-child img,
.patronage-card:first-child img {
  height: clamp(305px, 24vw, 455px) !important;
  width: 108% !important;
  max-width: 108% !important;
}
@media (max-width: 900px) {
  .page-hero.challenge-hero,
  section.page-hero.challenge-hero,
  .challenge-hero.page-hero {
    padding-top: 2rem !important;
    padding-bottom: 2.1rem !important;
  }
  .patronage-logo-card.logo-only-card img,
  .patronage-logo-grid .partner-logo img,
  .patronage-section .partner-logo img,
  .sponsors-patronage .partner-logo img,
  .patronage-card img,
  .patronage-logo-card.logo-only-card:first-child img,
  .patronage-logo-grid > *:first-child img,
  .patronage-section .partner-logo:first-child img,
  .sponsors-patronage .partner-logo:first-child img,
  .patronage-card:first-child img {
    height: 210px !important;
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* Retirer les cadrants blancs derrière les logos des parrains */
.patronage-logo-card,
.patronage-logo-card.logo-only-card,
.patronage-card,
.patronage-logo-grid .partner-logo,
.patronage-section .partner-logo,
.sponsors-patronage .partner-logo {
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  padding: 0 !important;
}

/* Garder les logos bien visibles et grands */
.patronage-logo-card img,
.patronage-logo-card.logo-only-card img,
.patronage-card img,
.patronage-logo-grid .partner-logo img,
.patronage-section .partner-logo img,
.sponsors-patronage .partner-logo img {
  object-fit: contain !important;
  background: transparent !important;
}

/* Ajustement taille des logos des parrains / haut parrainage */
.sponsors-patronage img,
.patronage-section img,
.patronage-logo-grid img,
.patronage-logo-card img,
.patronage-card img {
  max-height: 120px !important;
  max-width: 435px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
}

/* Le premier ministère peut rester légèrement plus grand */
.sponsors-patronage .patronage-logo-card:first-child img,
.patronage-section .patronage-logo-card:first-child img,
.patronage-logo-grid .patronage-logo-card:first-child img {
  max-height: 130px !important;
  max-width: 475px !important;
}

/* Plus d’équilibre entre le titre et les logos */
.sponsors-patronage,
.patronage-section {
  align-items: center !important;
}

.patronage-logo-grid {
  gap: 2.5rem !important;
  align-items: center !important;
}

/* =========================================================
   Page Sponsor : équilibre des deux logos de parrainage
   ========================================================= */

/* Annuler tout agrandissement précédent du premier logo */
html body .sponsor-page-patronage
.patronage-logo-grid.patronage-logo-only-grid >
.patronage-logo-card.logo-only-card:first-child img {
  transform: none !important;
}

/* Donner davantage d’espace à la zone des logos */
@media (min-width: 801px) {
  html body .sponsor-page-patronage .patronage-card {
    grid-template-columns:
      minmax(0, 0.82fr)
      minmax(0, 1.18fr) !important;
  }
}

/* Premier logo plus large + séparation verticale */
@media (min-width: 561px) {
  html body .sponsor-page-patronage
  .patronage-logo-grid.patronage-logo-only-grid {
    grid-template-columns:
      minmax(0, 1.20fr)
      minmax(0, 0.90fr) !important;

    gap: 2.5rem !important;
  }

  html body .sponsor-page-patronage
  .patronage-logo-grid.patronage-logo-only-grid >
  .patronage-logo-card.logo-only-card:nth-child(2) {
    position: relative !important;
  }

  html body .sponsor-page-patronage
  .patronage-logo-grid.patronage-logo-only-grid >
  .patronage-logo-card.logo-only-card:nth-child(2)::before {
    content: "";
    position: absolute;
    left: -1.25rem;
    top: 50%;
    width: 1px;
    height: 78px;
    transform: translateY(-50%);
    background: rgba(6, 43, 85, 0.18);
    pointer-events: none;
  }
}

/* Pas de barre verticale lorsque les logos sont empilés */
@media (max-width: 560px) {
  html body .sponsor-page-patronage
  .patronage-logo-grid.patronage-logo-only-grid >
  .patronage-logo-card.logo-only-card:nth-child(2)::before {
    display: none !important;
  }
}

/* Alternance des fonds sur la page Sponsor */
.sponsor-page-patronage {
  background: var(--white) !important;
}

.sponsor-page-intro {
  background: var(--bg) !important;
}

/* =========================================================
   PAGE SPONSOR — RÈGLES FINALES
   Conserver ce bloc à la toute fin du fichier.
   ========================================================= */

/* 1. Alternance : blanc, fond clair, blanc, appel à l'action */
.sponsors-page > .sponsor-section-white,
.sponsors-page > .sponsor-page-patronage,
.sponsors-page > .sponsor-packages-section,
section#packages.sponsor-packages-section {
  background: var(--white, #fff) !important;
}

.sponsors-page > .sponsor-section-alt,
.sponsors-page > .sponsor-page-intro {
  background: var(--bg, #f4f8fb) !important;
}

/* Compatibilité avec le modèle précédent de la page Sponsor. */
section.sponsor-page-patronage {
  background: var(--white, #fff) !important;
}

section.sponsor-page-intro {
  background: var(--bg, #f4f8fb) !important;
}

section#packages {
  background: var(--white, #fff) !important;
}

/* La carte située dans la deuxième section reste blanche. */
.sponsors-page .sponsor-page-intro .sponsor-page-showcase,
.sponsor-page-intro .sponsor-page-showcase {
  background: var(--white, #fff) !important;
}

/* 2. Disposition du parrainage institutionnel */
.sponsors-page .sponsor-page-patronage,
section.sponsor-page-patronage {
  padding-bottom: 6rem !important;
}

.sponsors-page .sponsor-page-patronage .patronage-card,
section.sponsor-page-patronage .patronage-card {
  display: grid !important;
  grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr) !important;
  gap: 28px !important;
  align-items: center !important;
  justify-content: initial !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

.sponsors-page .sponsor-page-patronage .patronage-copy,
section.sponsor-page-patronage .patronage-copy {
  min-width: 0 !important;
}

.sponsors-page .sponsor-page-patronage .patronage-logo-grid.patronage-logo-only-grid,
section.sponsor-page-patronage .patronage-logo-grid.patronage-logo-only-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr) !important;
  gap: 2.5rem !important;
  align-items: center !important;
  min-width: 0 !important;
}

/* 3. Conteneurs des logos : aucun cadre et aucun débordement */
.sponsors-page .sponsor-page-patronage .patronage-logo-card.logo-only-card,
section.sponsor-page-patronage .patronage-logo-card.logo-only-card {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
  transform: none !important;
}

/* 4. Logos originaux : proportions conservées, aucune mise à l'échelle */
.sponsors-page .sponsor-page-patronage .patronage-logo-card.logo-only-card img,
.sponsors-page .sponsor-page-patronage .patronage-logo-card.logo-only-card:first-child img,
section.sponsor-page-patronage .patronage-logo-card.logo-only-card img,
section.sponsor-page-patronage .patronage-logo-card.logo-only-card:first-child img {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 130px !important;
  object-fit: contain !important;
  transform: none !important;
  transform-origin: center center !important;
  background: transparent !important;
}

/* 5. Séparation verticale entre les deux logos */
.sponsors-page .sponsor-page-patronage
.patronage-logo-grid.patronage-logo-only-grid >
.patronage-logo-card.logo-only-card:nth-child(2)::before,
section.sponsor-page-patronage
.patronage-logo-grid.patronage-logo-only-grid >
.patronage-logo-card.logo-only-card:nth-child(2)::before {
  content: "";
  position: absolute !important;
  left: -1.25rem !important;
  top: 50% !important;
  width: 1px !important;
  height: 78px !important;
  background: rgba(6, 43, 85, .18) !important;
  transform: translateY(-50%) !important;
  pointer-events: none !important;
}

/* 6. Tablette */
@media (max-width: 800px) {
  .sponsors-page .sponsor-page-patronage .patronage-card,
  section.sponsor-page-patronage .patronage-card {
    grid-template-columns: 1fr !important;
  }

  .sponsors-page .sponsor-page-patronage
  .patronage-logo-grid.patronage-logo-only-grid,
  section.sponsor-page-patronage
  .patronage-logo-grid.patronage-logo-only-grid {
    grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr) !important;
  }
}

/* 7. Mobile */
@media (max-width: 640px) {
  .sponsors-page .sponsor-page-patronage,
  section.sponsor-page-patronage {
    padding-bottom: 4rem !important;
  }
}

@media (max-width: 560px) {
  .sponsors-page .sponsor-page-patronage
  .patronage-logo-grid.patronage-logo-only-grid,
  section.sponsor-page-patronage
  .patronage-logo-grid.patronage-logo-only-grid {
    grid-template-columns: 1fr !important;
    gap: 2rem !important;
  }

  .sponsors-page .sponsor-page-patronage
  .patronage-logo-grid.patronage-logo-only-grid >
  .patronage-logo-card.logo-only-card:nth-child(2)::before,
  section.sponsor-page-patronage
  .patronage-logo-grid.patronage-logo-only-grid >
  .patronage-logo-card.logo-only-card:nth-child(2)::before {
    display: none !important;
  }

  .sponsors-page .sponsor-page-patronage
  .patronage-logo-card.logo-only-card img,
  section.sponsor-page-patronage
  .patronage-logo-card.logo-only-card img {
    max-width: 100% !important;
    transform: none !important;
  }
}

/* WW_SUBMISSION_CLOSURE_CSS_V3 */
.submission-closed-link,
.submission-closed-link:hover,
.submission-closed-link:focus {
  cursor: not-allowed !important;
  opacity: 0.62 !important;
  filter: grayscale(.20);
}
.submission-status-pill {
  display: inline-flex;
  align-items: center;
  margin-left: .65rem;
  padding: .28rem .65rem;
  border-radius: 999px;
  background: rgba(180, 35, 24, .12);
  color: #b42318;
  font-size: .78rem;
  font-weight: 900;
  line-height: 1;
  letter-spacing: .02em;
  text-transform: uppercase;
  white-space: nowrap;
}
.submission-deadline-closed {
  color: #b42318 !important;
  font-weight: 900 !important;
  display: inline-flex;
  align-items: center;
  padding: .18rem .48rem;
  margin: 0 .12rem;
  border-radius: 999px;
  background: rgba(180, 35, 24, .10);
}

/* WW_OMAC_FINAL_CONTEXT_CSS */
.side-event-context-text {
  color: inherit;
  font-size: inherit;
  line-height: 1.75;
}
.side-event-context-text br + br {
  display: block;
  content: "";
  margin-top: .85rem;
}
.side-event-patronage-note {
  padding: 1rem 1.1rem;
  border-radius: 18px;
  background: rgba(255,255,255,.14);
  border: 1px solid rgba(255,255,255,.22);
}
.side-event-patronage-note strong {
  display: block;
  margin-bottom: .25rem;
  color: inherit;
  letter-spacing: .01em;
}

/* VENUE-UAC-URGENT-V1 */
.urgent-venue-banner{background:#fff7e8;border-top:1px solid #f4c76d;border-bottom:1px solid #f4c76d;color:#12263f}
.urgent-venue-banner__inner{display:flex;align-items:center;gap:14px;padding:11px 0}
.urgent-venue-banner__icon{display:flex;align-items:center;justify-content:center;flex:0 0 28px;width:28px;height:28px;border-radius:50%;background:#0b5f83;color:#fff;font-weight:800}
.urgent-venue-banner__content{display:flex;flex:1;flex-direction:column;gap:2px;line-height:1.4}
.urgent-venue-banner__content strong{font-size:.95rem}
.urgent-venue-banner__content span{font-size:.88rem}
.urgent-venue-banner__link{white-space:nowrap;font-weight:700;color:#075985;text-decoration:none}
.venue-uac-card{margin:24px 0;padding:24px;border:1px solid rgba(8,96,130,.18);border-radius:16px;background:#f8fcfe;box-shadow:0 10px 30px rgba(15,54,75,.06)}
.venue-uac-card h2{margin-top:0}
.venue-uac-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0}
.venue-uac-item{padding:16px;border-radius:12px;background:#fff;border:1px solid rgba(8,96,130,.14)}
.venue-uac-item small{display:block;margin-bottom:5px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:#0b6f91}
.venue-uac-item strong{display:block;line-height:1.35}
.venue-uac-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.venue-uac-actions a{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:9px;background:#0b5f83;color:#fff;text-decoration:none;font-weight:700}
.venue-uac-note{margin-top:14px;padding:12px 14px;border-left:4px solid #0b6f91;background:#eef9fc}
@media (max-width:800px){.urgent-venue-banner__inner{align-items:flex-start;flex-wrap:wrap}.urgent-venue-banner__link{margin-left:42px}.venue-uac-grid{grid-template-columns:1fr}}

/* VENUE-HERO-ADMIN-V1:css */
/* La classe plus spécifique et le !important garantissent que l'image choisie
   dans l'admin prend le dessus sur les anciennes images statiques du hero. */
.venue-hero.venue-hero-admin{
  background:linear-gradient(90deg,rgba(6,43,85,.92),rgba(6,43,85,.55)),var(--venue-hero-image) center/cover no-repeat!important;
}
/* /VENUE-HERO-ADMIN-V1:css */
