:root {
  --blue: #0060d1;
  --blue-bright: #0060d1;
  --blue-dark: #003f8f;
  --navy: #052b61;
  --yellow: #ffc91f;
  --yellow-deep: #e9ae00;
  --ink: #121a27;
  --cream: #f8f6ef;
  --white: #ffffff;
  --line: rgba(18, 26, 39, .18);
  --radius: 24px;
  --shadow: 0 8px 0 var(--ink);
  --display: "Montserrat", Arial Black, sans-serif;
  --body: "Montserrat", Arial, sans-serif;
}

/* Member, public data and administration platform */
.header-account { display: inline-flex; align-items: center; min-height: 38px; padding: 0 13px; border: 1px solid rgba(255,255,255,.42); border-radius: 999px; color: var(--white); font-size: 10px; font-weight: 800; letter-spacing: .7px; text-transform: uppercase; transition: .25s ease; }
.header-account:hover, .header-account:focus-visible { color: var(--ink); border-color: var(--yellow); background: var(--yellow); box-shadow: 0 0 25px rgba(255,201,31,.48); transform: translateY(-2px); }
.flash-stack { position: fixed; z-index: 120; top: 95px; right: 22px; display: grid; gap: 10px; width: min(410px, calc(100vw - 30px)); }
.flash-message { display: flex; justify-content: space-between; align-items: center; gap: 18px; padding: 16px 18px; border: 2px solid var(--ink); border-radius: 16px; color: var(--ink); background: var(--white); box-shadow: 0 7px 0 var(--ink), 0 20px 40px rgba(7,27,62,.2); font-size: 13px; font-weight: 700; }
.flash-success { border-color: var(--blue-dark); background: var(--yellow); }.flash-error { color: var(--white); background: #b62932; }.flash-warning { background: #fff1ba; }
.flash-message button { border: 0; color: inherit; background: none; cursor: pointer; font-size: 22px; }

.platform-auth { display: grid; grid-template-columns: minmax(300px,.8fr) minmax(480px,1.2fr); min-height: calc(100vh - 95px); background: var(--cream); }
.platform-auth-art { position: relative; display: grid; overflow: hidden; min-height: 650px; color: var(--white); background: radial-gradient(circle at 50% 48%, var(--blue-bright), var(--blue-dark) 72%); place-items: center; }
.platform-auth-art::before, .platform-auth-art::after { content: ""; position: absolute; width: 58%; aspect-ratio: 1; border: 3px solid rgba(255,255,255,.36); border-radius: 50%; box-shadow: 0 0 0 80px rgba(255,255,255,.05), 0 0 0 160px rgba(255,255,255,.025); animation: ring-pulse 6s ease-in-out infinite; }
.platform-auth-art span { position: absolute; width: 75%; height: 4px; background: var(--yellow); transform: rotate(-18deg); }.platform-auth-art b { position: relative; z-index: 1; font-family: var(--display); font-size: clamp(48px,7vw,105px); font-weight: 900; line-height: .83; letter-spacing: -5px; text-align: center; }
.platform-auth-card { align-self: center; width: min(650px, calc(100% - 60px)); margin: 60px auto; padding: clamp(30px,5vw,72px); border: 3px solid var(--ink); border-radius: 30px; background: var(--white); box-shadow: 10px 10px 0 var(--ink); }
.platform-auth-card h1, .platform-hero h1, .event-detail-hero h1, .vendor-public-hero h1, .admin-heading h1 { margin: 15px 0 22px; font-family: var(--display); font-weight: 900; line-height: .87; letter-spacing: -4px; }.platform-auth-card h1 { font-size: clamp(48px,6vw,82px); }.platform-auth-card h1 em, .platform-hero h1 em, .admin-heading h1 em { color: var(--blue); font-style: normal; }.platform-auth-card > p { color: rgba(18,26,39,.68); }
.auth-switch { margin: 25px 0 0; font-size: 13px; }.auth-switch a { color: var(--blue); font-weight: 800; text-decoration: underline; text-underline-offset: 4px; }
.auth-create-account { width: 100%; min-height: 62px; margin-top: 20px; font-size: 14px; }

.platform-form { display: grid; gap: 18px; margin-top: 28px; }.platform-form-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }.platform-form label, .media-upload-form label { display: grid; gap: 8px; color: var(--ink); font-size: 10px; font-weight: 800; letter-spacing: 1px; text-transform: uppercase; }.platform-form label small { color: rgba(18,26,39,.52); font-size: 9px; font-weight: 600; letter-spacing: 0; text-transform: none; }
.platform-form input:not([type=checkbox]), .platform-form textarea, .platform-form select, .admin-filters input, .admin-filters select, .media-upload-form input:not([type=file]) { width: 100%; min-height: 52px; padding: 13px 15px; border: 2px solid var(--ink); border-radius: 12px; color: var(--ink); background: var(--white); font: 600 14px var(--body); outline: none; text-transform: none; transition: box-shadow .2s, transform .2s, border-color .2s; }.platform-form textarea { resize: vertical; }.platform-form input:focus, .platform-form textarea:focus, .platform-form select:focus, .admin-filters input:focus, .admin-filters select:focus { border-color: var(--blue); box-shadow: 0 0 0 4px rgba(0,96,209,.14), 4px 4px 0 var(--blue); transform: translate(-2px,-2px); }.form-wide { grid-column: 1 / -1; }.check-label { display: flex !important; align-items: center; align-self: end; min-height: 52px; padding: 12px 15px; border: 2px solid var(--ink); border-radius: 12px; cursor: pointer; }.check-label input { width: 20px; height: 20px; accent-color: var(--blue); }.form-divider { display: flex; justify-content: space-between; gap: 20px; margin-top: 10px; padding: 18px 0 10px; border-top: 2px solid var(--ink); }.form-divider span { color: rgba(18,26,39,.58); font-size: 11px; }

.platform-hero { position: relative; display: flex; align-items: end; min-height: 500px; overflow: hidden; padding: 150px max(6vw,28px) 75px; color: var(--white); background: radial-gradient(circle at 78% 30%, var(--blue-bright), var(--blue-dark) 65%); }.platform-hero::before { content:""; position:absolute; top:-120px; right:8%; width:540px; aspect-ratio:1; border:2px solid rgba(255,255,255,.22); border-radius:50%; box-shadow:0 0 0 75px rgba(255,255,255,.04),0 0 0 150px rgba(255,255,255,.02); }.platform-hero > div { position: relative; z-index: 1; max-width: 900px; }.platform-hero h1 { font-size: clamp(62px,9vw,132px); }.platform-hero h1 em { color: var(--yellow); }.platform-hero p:last-child { max-width: 660px; color: rgba(255,255,255,.75); font-size: 17px; }.platform-hero.compact { justify-content: space-between; min-height: 400px; }.platform-hero.compact h1 { font-size: clamp(54px,7vw,100px); }
.platform-shell { width: min(1420px,calc(100% - 48px)); margin: 0 auto; padding: 65px 0 90px; }.platform-panel, .admin-card { border: 2px solid var(--ink); border-radius: 24px; background: var(--white); box-shadow: 0 7px 0 var(--ink); }.platform-panel { padding: clamp(24px,4vw,48px); }.single-panel { width: min(1050px,calc(100% - 48px)); }.panel-heading { display: flex; justify-content: space-between; align-items: start; gap: 20px; margin-bottom: 24px; }.panel-heading small, .platform-panel > small, .admin-card small { color: var(--blue); font-size: 9px; font-weight: 900; letter-spacing: 1.4px; }.panel-heading h2, .platform-panel h2, .admin-card h2 { margin: 5px 0 0; font-family: var(--display); font-size: 27px; font-weight: 900; line-height: 1; }.status-pill, .featured-chip, .role-chip, .count-badge { display: inline-flex; align-items:center; width:max-content; padding:7px 10px; border-radius:999px; font-size:8px; font-weight:900; letter-spacing:1px; }.status-live { color:var(--white); background:var(--blue); }.status-draft { color:var(--ink); background:#e5e7eb; }.featured-chip { margin-left:6px; color:var(--ink); background:var(--yellow); }.count-badge { border:2px solid rgba(255,255,255,.45); color:var(--white); }
.member-layout { display:grid; grid-template-columns:300px 1fr; gap:28px; align-items:start; }.member-nav { position:sticky; top:110px; display:grid; gap:12px; }.member-nav > strong { font-family:var(--display); font-size:26px; }.member-nav > span { margin-bottom:15px; color:rgba(18,26,39,.58); font-size:12px; }.text-action { padding:10px 0; border:0; color:#a3232c; background:none; cursor:pointer; font-weight:800; }.member-badge { position:relative; z-index:1; display:grid; min-width:220px; padding:24px; border:2px solid rgba(255,255,255,.4); border-radius:20px; background:rgba(7,27,62,.35); backdrop-filter:blur(10px); }.member-badge small { color:var(--yellow); font-size:9px; font-weight:900; letter-spacing:1px; }.member-badge strong { margin:7px 0; font-family:var(--display); font-size:25px; }.member-badge span { color:rgba(255,255,255,.64); font-size:11px; }.member-callout { margin-top:30px; padding:22px; border:2px solid var(--blue); border-radius:16px; background:#eef5ff; }.member-callout p { margin:7px 0; color:rgba(18,26,39,.65); }.member-callout a { color:var(--blue); font-weight:900; }

.public-grid-shell { background:var(--cream); }.public-event-grid { display:grid; gap:28px; }.public-event-card { display:grid; grid-template-columns:minmax(260px,.7fr) 1fr; overflow:hidden; border:3px solid var(--ink); border-radius:28px; background:var(--white); box-shadow:0 8px 0 var(--ink); }.public-event-card > img, .event-placeholder { width:100%; height:100%; min-height:390px; object-fit:cover; }.event-placeholder { display:flex; align-items:center; justify-content:center; gap:14px; color:var(--white); background:radial-gradient(circle,var(--blue-bright),var(--blue-dark)); font-family:var(--display); font-size:90px; font-weight:900; }.event-placeholder i { color:var(--yellow); font-size:28px; }.public-event-card > div:last-child { display:grid; align-content:center; padding:clamp(30px,5vw,70px); }.public-event-card small { font-weight:900; letter-spacing:1.4px; }.public-event-card h2 { margin:12px 0; font-family:var(--display); font-size:clamp(40px,5vw,70px); line-height:.92; letter-spacing:-3px; }.public-event-card p { color:rgba(18,26,39,.65); }.public-event-card dl { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin:20px 0 28px; padding:18px 0; border-block:1px solid rgba(18,26,39,.2); }.public-event-card dt { font-size:8px; font-weight:900; letter-spacing:1px; }.public-event-card dd { margin:4px 0 0; font-size:12px; font-weight:800; }.public-event-card .button { width:max-content; }.public-event-card.featured > div:last-child { background:var(--yellow); }
.event-detail-hero, .vendor-public-hero { position:relative; display:flex; align-items:end; min-height:650px; padding:160px max(6vw,30px) 75px; color:var(--white); background:linear-gradient(90deg,rgba(7,27,62,.95),rgba(7,27,62,.4)),var(--event-cover,radial-gradient(circle,var(--blue-bright),var(--blue-dark))); background-position:center; background-size:cover; }.event-detail-hero > div { max-width:950px; }.event-detail-hero h1, .vendor-public-hero h1 { margin:15px 0; font-size:clamp(65px,10vw,145px); }.event-detail-hero p:last-child { max-width:700px; color:rgba(255,255,255,.76); font-size:17px; }.event-detail-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:25px; }.event-detail-action { grid-column:1/-1; display:flex; justify-content:space-between; align-items:center; color:var(--white); background:var(--blue-dark); }.event-detail-action .button { width:max-content; }
.social-gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:25px; }.social-post { overflow:hidden; border:2px solid var(--ink); border-radius:22px; background:var(--white); box-shadow:0 6px 0 var(--ink); transition:.25s ease; }.social-post:hover { box-shadow:0 11px 0 var(--ink),0 20px 35px rgba(0,96,209,.18); transform:translateY(-5px); }.social-post-head { display:flex; align-items:center; gap:10px; padding:14px; }.mini-orbit { width:38px; height:38px; border:5px solid var(--yellow); border-radius:50%; background:var(--blue); }.social-post-head div { display:grid; }.social-post-head strong { font-size:10px; }.social-post-head small { color:#777; font-size:8px; }.social-post-media { aspect-ratio:1; background:var(--blue-dark); }.social-post-media img, .social-post-media video { width:100%; height:100%; object-fit:cover; }.social-post-copy { padding:16px; }.social-post-copy > span { font-size:28px; }.social-post-copy strong { display:block; margin:5px 0; }.social-post-copy p { margin:0; color:#666; font-size:12px; white-space:pre-line; }.gallery-missing { display:grid; height:100%; color:var(--white); place-items:center; font-weight:900; }
.vendor-directory-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }.vendor-directory-card { display:grid; padding:30px; border:3px solid var(--ink); border-radius:24px; color:var(--ink); background:var(--white); box-shadow:0 7px 0 var(--ink); transition:.25s ease; }.vendor-directory-card:hover { color:var(--white); background:var(--blue); box-shadow:0 12px 0 var(--ink),0 25px 45px rgba(0,96,209,.25); transform:translateY(-5px); }.vendor-directory-card img, .vendor-letter { width:90px; height:90px; margin-bottom:25px; border:2px solid var(--ink); border-radius:50%; object-fit:cover; }.vendor-letter { display:grid; color:var(--ink); background:var(--yellow); font-family:var(--display); font-size:45px; place-items:center; }.vendor-directory-card small { font-size:8px; font-weight:900; letter-spacing:1px; }.vendor-directory-card h2 { margin:8px 0; font-family:var(--display); font-size:30px; }.vendor-directory-card p { min-height:40px; color:inherit; opacity:.7; }.vendor-directory-card b { margin-top:20px; color:var(--blue); }.vendor-directory-card:hover b { color:var(--yellow); }
.vendor-public-hero { gap:35px; min-height:580px; background:linear-gradient(90deg,rgba(7,27,62,.94),rgba(7,27,62,.46)),var(--vendor-hero,radial-gradient(circle,var(--blue-bright),var(--blue-dark))); }.vendor-public-logo { display:grid; flex:0 0 160px; width:160px; height:160px; overflow:hidden; border:4px solid var(--yellow); border-radius:50%; color:var(--ink); background:var(--yellow); font-family:var(--display); font-size:70px; place-items:center; }.vendor-public-logo img { width:100%; height:100%; object-fit:cover; }.vendor-public-grid { display:grid; grid-template-columns:1fr 350px; gap:25px; align-items:start; }.long-copy { white-space:pre-line; }.vendor-links { display:grid; gap:12px; }.vendor-links p { display:grid; }.vendor-links a { padding:14px 0; border-bottom:1px solid rgba(18,26,39,.2); color:var(--blue); font-weight:900; }.platform-empty { grid-column:1/-1; padding:70px; border:2px dashed var(--blue); border-radius:24px; text-align:center; }.platform-empty strong { font-family:var(--display); font-size:28px; }

.admin-wrap { display:grid; grid-template-columns:270px minmax(0,1fr); min-height:calc(100vh - 95px); background:#edf2f9; }.admin-sidebar { position:sticky; top:95px; align-self:start; display:grid; height:calc(100vh - 95px); padding:30px 22px; color:var(--white); background:var(--blue-dark); }.admin-sidebar > div { display:grid; }.admin-sidebar > div small { color:var(--yellow); font-size:8px; font-weight:900; letter-spacing:1.3px; }.admin-sidebar > div strong { margin:8px 0; font-family:var(--display); font-size:20px; }.admin-sidebar > div span { color:rgba(255,255,255,.5); font-size:10px; }.admin-sidebar nav { align-self:center; display:grid; gap:7px; }.admin-sidebar nav a { display:flex; justify-content:space-between; padding:13px 14px; border:1px solid transparent; border-radius:11px; color:rgba(255,255,255,.68); font-size:12px; font-weight:800; }.admin-sidebar nav a:hover, .admin-sidebar nav a.active { color:var(--ink); border-color:var(--yellow); background:var(--yellow); box-shadow:0 0 24px rgba(255,201,31,.24); transform:translateX(3px); }.admin-sidebar nav a span { font-size:8px; }.admin-back { align-self:end; color:rgba(255,255,255,.6); font-size:11px; font-weight:800; }.admin-main { min-width:0; padding:50px clamp(24px,4vw,65px) 90px; }.admin-heading { display:flex; justify-content:space-between; align-items:end; gap:25px; margin-bottom:36px; }.admin-heading > div > small { color:var(--blue); font-size:9px; font-weight:900; letter-spacing:1.5px; }.admin-heading h1 { margin-bottom:0; font-size:clamp(48px,6vw,85px); }.admin-heading .count-badge { color:var(--ink); border-color:var(--ink); background:var(--yellow); }.admin-stat-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:15px; margin-bottom:28px; }.admin-stat-grid article { position:relative; display:grid; min-height:155px; padding:20px; overflow:hidden; border:2px solid var(--ink); border-radius:18px; background:var(--white); box-shadow:0 5px 0 var(--ink); }.admin-stat-grid article:first-child { color:var(--white); background:var(--blue); }.admin-stat-grid article span { position:absolute; top:15px; right:15px; color:rgba(18,26,39,.25); font-size:9px; font-weight:900; }.admin-stat-grid article:first-child span { color:rgba(255,255,255,.35); }.admin-stat-grid article strong { align-self:end; font-family:var(--display); font-size:45px; }.admin-stat-grid article small { color:inherit; opacity:.62; }.admin-card { padding:28px; }.admin-two-column { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:25px; }.admin-list { display:grid; }.admin-list > a { display:flex; align-items:center; gap:12px; min-width:0; padding:14px 0; border-top:1px solid rgba(18,26,39,.12); color:var(--ink); }.admin-list > a div { display:grid; min-width:0; flex:1; }.admin-list > a small { overflow:hidden; color:#777; text-overflow:ellipsis; white-space:nowrap; }.avatar-letter { display:grid; flex:0 0 42px; width:42px; height:42px; border:2px solid var(--ink); border-radius:50%; color:var(--ink); background:var(--yellow); font-family:var(--display); font-size:18px; place-items:center; }.avatar-letter.event { color:var(--white); background:var(--blue); }.admin-filters { display:grid; grid-template-columns:1fr 230px auto; gap:12px; margin-bottom:22px; }.table-card { padding:0; overflow:hidden; }.admin-table-wrap { overflow-x:auto; }.admin-table { width:100%; border-collapse:collapse; }.admin-table th, .admin-table td { padding:17px 20px; border-bottom:1px solid rgba(18,26,39,.13); text-align:left; white-space:nowrap; }.admin-table th { color:#687386; background:#f5f7fa; font-size:8px; letter-spacing:1px; }.admin-table td { font-size:12px; }.member-cell { display:flex; align-items:center; gap:12px; }.member-cell > div { display:grid; }.member-cell small { color:#777; }.role-chip { color:var(--white); background:var(--blue-dark); }.role-vendor,.role-sponsor,.role-partner { color:var(--ink); background:var(--yellow); }.role-super_admin { background:#a3232c; }.table-action { color:var(--blue); font-weight:900; }.permanent-banner { margin-bottom:25px; padding:20px; border:2px solid var(--yellow); border-radius:14px; color:var(--white); background:var(--blue-dark); }.permanent-banner p { margin:5px 0 0; color:rgba(255,255,255,.64); }.danger-zone { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-top:35px; padding:22px; border:2px solid #c43b43; border-radius:16px; background:#fff1f2; }.danger-zone p { margin:4px 0 0; color:#7a3035; font-size:11px; }.danger-zone button, .record-actions button, .media-library-item form button { border:0; color:#a3232c; background:none; cursor:pointer; font-weight:900; }.admin-content-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }.admin-record-card { display:grid; align-content:start; min-height:300px; padding:25px; border:2px solid var(--ink); border-radius:20px; background:var(--white); box-shadow:0 6px 0 var(--ink); }.admin-record-card > small { margin-top:30px; color:var(--blue); }.admin-record-card h2 { margin:8px 0; font-family:var(--display); font-size:28px; }.admin-record-card p { color:#687386; }.record-actions { display:flex; justify-content:space-between; align-items:center; margin-top:auto; padding-top:20px; }.record-actions a { color:var(--blue); font-weight:900; }
.upload-card { margin-bottom:28px; }.media-upload-form { display:grid; grid-template-columns:1.2fr .8fr; gap:25px; }.media-upload-form > div { display:grid; gap:14px; }.upload-drop { align-content:center; justify-items:center; min-height:270px; padding:25px; border:3px dashed var(--blue) !important; border-radius:18px; color:var(--blue) !important; background:#eef5ff; cursor:pointer; text-align:center; }.upload-drop input { position:absolute; width:1px; height:1px; opacity:0; }.upload-drop > span { display:grid; width:60px; height:60px; border-radius:50%; color:var(--ink); background:var(--yellow); font-size:35px; place-items:center; }.upload-drop small { color:#687386; }.media-library-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }.media-library-item { overflow:hidden; border:2px solid var(--ink); border-radius:18px; background:var(--white); box-shadow:0 5px 0 var(--ink); }.media-library-item > div { position:relative; aspect-ratio:1; background:var(--blue-dark); }.media-library-item img,.media-library-item video { width:100%; height:100%; object-fit:cover; }.media-library-item > strong,.media-library-item > small,.media-library-item > form { display:block; margin:12px 14px 0; }.media-library-item > small { color:#777; }.media-library-item > form { margin-bottom:14px; }.media-type { position:absolute; top:10px; right:10px; padding:5px 8px; border-radius:999px; color:var(--ink); background:var(--yellow); font-size:7px; font-weight:900; }.admin-gallery-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }.admin-gallery-grid > article { overflow:hidden; border:2px solid var(--ink); border-radius:20px; background:var(--white); box-shadow:0 6px 0 var(--ink); }.admin-gallery-media { aspect-ratio:1; background:var(--blue-dark); }.admin-gallery-media img,.admin-gallery-media video { width:100%; height:100%; object-fit:cover; }.admin-gallery-grid > article > div:last-child { padding:22px; }.admin-gallery-grid h2 { margin:12px 0 7px; font-family:var(--display); font-size:25px; }.admin-gallery-grid p { color:#687386; font-size:12px; }.analytics-grid { margin-bottom:25px; }.analytics-bars { display:flex; align-items:end; gap:8px; min-height:250px; padding-top:25px; }.analytics-bars > div { display:grid; grid-template-rows:1fr auto auto; align-items:end; width:100%; height:220px; text-align:center; }.analytics-bars span { display:block; min-height:4px; height:var(--bar); border-radius:6px 6px 0 0; background:linear-gradient(var(--blue-bright),var(--blue)); }.analytics-bars small { margin-top:6px; color:#687386; font-size:7px; }.analytics-bars b { font-size:9px; }.role-breakdown { display:grid; gap:10px; }.role-breakdown div { display:flex; justify-content:space-between; padding:14px; border-radius:10px; background:#eef2f7; }.role-breakdown b { color:var(--blue); }

@media (max-width: 1120px) {
  .desktop-nav { display:none; }.header-account { display:none; }
  .social-gallery,.vendor-directory-grid,.admin-content-grid,.admin-gallery-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .admin-stat-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }.media-library-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width: 850px) {
  .platform-auth { grid-template-columns:1fr; }.platform-auth-art { display:none; }.platform-auth-card { margin-top:45px; }
  .member-layout,.vendor-public-grid,.event-detail-grid { grid-template-columns:1fr; }.member-nav { position:static; }.event-detail-action { grid-column:auto; display:grid; }.member-badge { display:none; }
  .public-event-card { grid-template-columns:1fr; }.public-event-card > img,.event-placeholder { min-height:300px; max-height:420px; }
  .admin-wrap { grid-template-columns:1fr; }.admin-sidebar { position:relative; top:auto; height:auto; padding:20px; }.admin-sidebar > div,.admin-back { display:none; }.admin-sidebar nav { grid-template-columns:repeat(3,1fr); }.admin-sidebar nav a { justify-content:center; text-align:center; }.admin-sidebar nav a span { display:none; }
  .admin-main { padding:35px 22px 75px; }.admin-two-column { grid-template-columns:1fr; }.media-upload-form { grid-template-columns:1fr; }
}
@media (max-width: 620px) {
  .flash-stack { top:82px; right:15px; }.platform-auth-card { width:calc(100% - 28px); padding:26px 20px; border-radius:22px; box-shadow:6px 6px 0 var(--ink); }.platform-form-grid { grid-template-columns:1fr; }.form-wide { grid-column:auto; }
  .platform-hero { min-height:400px; padding:130px 20px 55px; }.platform-hero h1 { font-size:50px; letter-spacing:-3px; }.platform-shell,.single-panel { width:calc(100% - 28px); padding:42px 0 65px; }.platform-panel { padding:23px 18px; }
  .social-gallery,.vendor-directory-grid,.admin-content-grid,.admin-gallery-grid { grid-template-columns:1fr; }.public-event-card h2 { font-size:40px; }.public-event-card dl { grid-template-columns:1fr; }.event-detail-hero,.vendor-public-hero { min-height:550px; padding:140px 20px 55px; }.event-detail-hero h1,.vendor-public-hero h1 { font-size:52px; }.vendor-public-hero { display:grid; align-content:end; }.vendor-public-logo { width:110px; height:110px; flex-basis:110px; }
  .admin-heading { align-items:start; flex-direction:column; }.admin-heading h1 { font-size:44px; }.admin-stat-grid { grid-template-columns:repeat(2,1fr); }.admin-stat-grid article { min-height:125px; }.admin-filters { grid-template-columns:1fr; }.admin-sidebar nav { grid-template-columns:repeat(2,1fr); }.media-library-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.analytics-bars { overflow-x:auto; }.analytics-bars > div { min-width:32px; }
  .danger-zone,.form-divider { align-items:flex-start; flex-direction:column; }.platform-empty { padding:40px 20px; }
}

*, *::before, *::after { box-sizing: border-box; }
html {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
  background: var(--navy);
  scroll-behavior: smooth;
}
section[id] { scroll-margin-top: 78px; }
body {
  position: relative;
  width: 100%;
  max-width: 100%;
  margin: 0;
  color: var(--ink);
  background: var(--cream);
  font-family: var(--body);
  font-size: 16px;
  line-height: 1.6;
  overflow-x: hidden;
}
@supports (overflow: clip) {
  html, body { overflow-x: clip; }
}
body.menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button, input { font: inherit; }
button, a, summary, input, select, textarea { -webkit-tap-highlight-color: transparent; }
img { display: block; max-width: 100%; }
h1, h2, h3, p { margin-top: 0; }
:focus-visible { outline: 3px solid var(--yellow); outline-offset: 4px; }

.skip-link {
  position: fixed;
  z-index: 999;
  top: 8px;
  left: 8px;
  padding: .8rem 1rem;
  color: var(--white);
  background: var(--ink);
  transform: translateY(-150%);
}
.skip-link:focus { transform: none; }

.site-header {
  position: fixed;
  z-index: 100;
  inset: 0 0 auto;
  display: grid;
  grid-template-columns: minmax(250px, 1fr) auto minmax(250px, 1fr);
  align-items: center;
  gap: 2rem;
  height: 96px;
  padding: 0 clamp(24px, 4vw, 70px);
  background: #0060d1;
  transition: .3s ease;
}
.site-header.is-scrolled {
  height: 78px;
  background: #0060d1;
  box-shadow: 0 1px 0 rgba(255,255,255,.16);
  backdrop-filter: blur(14px);
}
.brand {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  width: max-content;
  color: var(--white);
}
.brand-orbit {
  position: relative;
  width: 48px;
  height: 48px;
  border: 3px solid var(--yellow);
  border-radius: 50%;
  box-shadow: inset 0 0 0 8px var(--blue), inset 0 0 0 11px var(--white);
  transition: transform .35s cubic-bezier(.2, .8, .2, 1), box-shadow .35s ease;
}
.brand-orbit::before,
.brand-orbit::after {
  content: "";
  position: absolute;
  inset: 50% auto auto 50%;
  background: var(--yellow);
  transform: translate(-50%, -50%);
}
.brand-orbit::before {
  width: 60px;
  height: 3px;
  transform: translate(-50%, -50%) rotate(-24deg);
  transition: transform .4s cubic-bezier(.2, .8, .2, 1);
}
.brand-orbit::after { width: 8px; height: 8px; border-radius: 50%; }
.brand-copy { display: grid; line-height: 1; }
.brand-copy strong {
  font-family: var(--display);
  font-size: 16px;
  font-weight: 900;
  letter-spacing: -.5px;
  transition: color .25s ease, letter-spacing .35s ease;
}
.brand-copy small {
  margin-top: 5px;
  color: var(--yellow);
  font-size: 7.5px;
  font-weight: 800;
  letter-spacing: 1.65px;
  transition: color .25s ease;
}
.brand:hover .brand-orbit,
.brand:focus-visible .brand-orbit {
  box-shadow: inset 0 0 0 8px var(--blue), inset 0 0 0 11px var(--white), 0 0 0 5px rgba(255,201,31,.18);
  transform: scale(1.08);
}
.brand:hover .brand-orbit::before,
.brand:focus-visible .brand-orbit::before {
  transform: translate(-50%, -50%) rotate(0deg);
}
.brand:hover .brand-copy strong,
.brand:focus-visible .brand-copy strong {
  color: var(--yellow);
  letter-spacing: 0;
}
.brand:hover .brand-copy small,
.brand:focus-visible .brand-copy small { color: var(--white); }
.site-header > .brand { grid-column: 1; }
.desktop-nav { grid-column: 2; display: flex; align-items: center; gap: 32px; }
.desktop-nav a {
  position: relative;
  color: rgba(255,255,255,.85);
  font-size: 13px;
  font-weight: 700;
  transition: color .2s ease, transform .2s ease, text-shadow .2s ease;
}
.desktop-nav a::after {
  content: "";
  position: absolute;
  inset: auto 0 -8px;
  height: 2px;
  background: var(--yellow);
  transform: scaleX(0);
  transition: transform .2s ease;
}
.desktop-nav a:hover,
.desktop-nav a:focus-visible {
  color: var(--yellow);
  text-shadow: 0 0 16px rgba(255,201,31,.65);
  transform: translateY(-2px);
}
.desktop-nav a:hover::after, .desktop-nav a:focus-visible::after { transform: scaleX(1); }
.header-actions { grid-column: 3; display: flex; align-items: center; justify-self: end; gap: 12px; margin-left: auto; }
.header-install {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 48px;
  padding: 6px 15px 6px 7px;
  border: 1px solid rgba(255,255,255,.52);
  border-radius: 999px;
  color: var(--white);
  background: rgba(7,27,62,.48);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.06);
  backdrop-filter: blur(12px);
  cursor: pointer;
  font-family: var(--display);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .5px;
  text-transform: uppercase;
  transition: transform .25s cubic-bezier(.2,.8,.2,1), box-shadow .25s ease, background .2s ease;
}
.header-install[hidden] { display: none; }
.header-install > span { display: grid; width: 32px; height: 32px; border-radius: 50%; color: var(--ink); background: var(--yellow); place-items: center; font-size: 17px; transition: transform .25s ease; }
.header-install b { font: inherit; }
.header-install:hover, .header-install:focus-visible { color: var(--yellow); border-color: var(--yellow); background: rgba(7,27,62,.82); box-shadow: 0 0 25px rgba(255,201,31,.4), inset 0 0 0 1px rgba(255,201,31,.16); transform: translateY(-2px); }
.header-install:hover > span, .header-install:focus-visible > span { transform: translateY(3px); }

.install-guide {
  position: fixed;
  z-index: 140;
  inset: 0;
  display: grid;
  padding: 24px;
  background: rgba(3,14,34,.72);
  backdrop-filter: blur(12px);
  opacity: 0;
  place-items: center;
  transition: opacity .22s ease;
}
.install-guide[hidden] { display: none; }
.install-guide.is-open { opacity: 1; }
.install-guide-card { position: relative; width: min(520px,100%); padding: clamp(30px,5vw,52px); overflow: hidden; border: 3px solid var(--ink); border-radius: 28px; background: var(--yellow); box-shadow: 0 12px 0 var(--ink), 0 28px 70px rgba(0,0,0,.42); transform: translateY(20px) scale(.97); transition: transform .22s ease; }
.install-guide.is-open .install-guide-card { transform: none; }
.install-guide-card h2 { position: relative; margin-bottom: 20px; font-family: var(--display); font-size: clamp(35px,6vw,55px); font-weight: 900; line-height: .94; letter-spacing: -2px; }
.install-guide-card > p:not(.eyebrow) { position: relative; color: rgba(18,26,39,.72); }
.install-guide-card .button { position: relative; margin-top: 15px; }
.install-guide-close:first-child { position: absolute; z-index: 3; top: 18px; right: 18px; display: grid; width: 42px; height: 42px; padding: 0; border: 2px solid var(--ink); border-radius: 50%; color: var(--white); background: var(--ink); cursor: pointer; font-size: 25px; line-height: 1; place-items: center; }
.install-guide-orbit { position: absolute; right: -100px; bottom: -120px; width: 300px; height: 300px; border: 2px solid rgba(18,26,39,.14); border-radius: 50%; box-shadow: 0 0 0 50px rgba(18,26,39,.04), 0 0 0 100px rgba(18,26,39,.025); }
body.install-guide-open { overflow: hidden; }

.notification-prompt {
  position: fixed;
  z-index: 125;
  right: 22px;
  bottom: 22px;
  display: grid;
  grid-template-columns: auto minmax(220px,1fr) auto;
  align-items: center;
  gap: 18px;
  width: min(760px,calc(100vw - 44px));
  padding: 20px 22px;
  border: 2px solid rgba(255,255,255,.32);
  border-radius: 24px;
  color: var(--white);
  background: rgba(0,96,209,.97);
  box-shadow: 0 8px 0 var(--ink), 0 24px 60px rgba(0,0,0,.42), 0 0 36px rgba(0,96,209,.22);
  backdrop-filter: blur(18px);
  opacity: 0;
  transform: translateY(calc(100% + 50px));
  transition: opacity .32s ease, transform .38s cubic-bezier(.2,.8,.2,1);
}
.notification-prompt[hidden] { display: none; }
.notification-prompt.is-visible { opacity: 1; transform: none; }
.notification-bell { display: grid; width: 58px; height: 58px; border: 3px solid var(--ink); border-radius: 50%; color: var(--ink); background: var(--yellow); box-shadow: 0 0 0 7px rgba(255,201,31,.1); place-items: center; font-family: var(--display); font-size: 28px; font-weight: 900; animation: notification-bump 2.8s ease-in-out infinite; }
@keyframes notification-bump { 0%,82%,100% { transform: rotate(0); } 87% { transform: rotate(-10deg) scale(1.07); } 92% { transform: rotate(9deg) scale(1.07); } 97% { transform: rotate(-4deg); } }
.notification-copy { min-width: 0; }
.notification-copy small { display: block; margin-bottom: 2px; color: var(--yellow); font-size: 8px; font-weight: 800; letter-spacing: 1.5px; }
.notification-copy strong { display: block; font-family: var(--display); font-size: clamp(16px,1.5vw,22px); font-weight: 900; }
.notification-copy p { margin: 3px 0 0; color: rgba(255,255,255,.66); font-size: 12px; line-height: 1.45; }
.notification-copy .notification-status { min-height: 0; color: var(--yellow); font-weight: 700; }
.notification-actions { display: grid; justify-items: center; gap: 8px; }
.notification-actions .button { min-height: 48px; white-space: nowrap; }
.notification-later { padding: 3px 10px; border: 0; color: rgba(255,255,255,.58); background: transparent; cursor: pointer; font-size: 10px; font-weight: 800; text-transform: uppercase; }
.notification-later:hover, .notification-later:focus-visible { color: var(--yellow); }
.notification-dismiss { position: absolute; top: 8px; right: 10px; display: grid; width: 30px; height: 30px; padding: 0; border: 0; border-radius: 50%; color: rgba(255,255,255,.58); background: transparent; cursor: pointer; font-size: 22px; place-items: center; }
.notification-dismiss:hover, .notification-dismiss:focus-visible { color: var(--ink); background: var(--yellow); }

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 26px;
  min-height: 51px;
  padding: 13px 22px;
  border: 2px solid var(--ink);
  border-radius: 999px;
  font-family: var(--display);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .5px;
  text-transform: uppercase;
  transition: transform .24s cubic-bezier(.2,.8,.2,1), box-shadow .24s ease, background .2s ease, color .2s ease;
}
.button:hover,
.button:focus-visible { transform: translateY(-4px) scale(1.025); }
.button:focus-visible { outline: 3px solid var(--white); outline-offset: 4px; }
.button span { font-size: 17px; transition: transform .25s cubic-bezier(.2,.8,.2,1); }
.button:hover span,
.button:focus-visible span { transform: translate(3px, -2px); }
.button-light { color: var(--ink); background: var(--white); }
.button-light:hover,
.button-light:focus-visible { box-shadow: 0 5px 0 var(--ink), 0 0 28px rgba(255,255,255,.55); }
.button-yellow { color: var(--ink); background: var(--yellow); }
.button-yellow:hover,
.button-yellow:focus-visible { background: #ffe366; box-shadow: 0 5px 0 var(--ink), 0 0 30px rgba(255,201,31,.72); }
.button-blue { color: var(--white); background: var(--blue); }
.button-blue:hover,
.button-blue:focus-visible { background: var(--blue-bright); box-shadow: 0 5px 0 var(--ink), 0 0 30px rgba(0,96,209,.52); }
.button-dark { color: var(--white); background: var(--ink); border-color: var(--ink); }
.button-dark:hover,
.button-dark:focus-visible { color: var(--yellow); box-shadow: 0 5px 0 var(--blue), 0 0 28px rgba(0,96,209,.48); }

.menu-toggle {
  display: none;
  width: 48px;
  height: 48px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: var(--yellow);
  cursor: pointer;
}
.menu-toggle span {
  display: block;
  width: 20px;
  height: 2px;
  margin: 5px auto;
  background: var(--ink);
  transition: .25s ease;
}
.menu-open .menu-toggle span:first-child { transform: translateY(3.5px) rotate(45deg); }
.menu-open .menu-toggle span:last-child { transform: translateY(-3.5px) rotate(-45deg); }
.mobile-menu {
  position: fixed;
  z-index: 90;
  inset: 0;
  display: grid;
  align-content: center;
  padding: 120px 8vw 50px;
  color: var(--white);
  background: #0060d1;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-16px);
  transition: .25s ease;
}
.mobile-menu::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .42;
  background-image:
    radial-gradient(circle at 12% 72%, rgba(35,136,255,.32), transparent 28%),
    radial-gradient(ellipse at 110% 42%, transparent 0 27%, rgba(255,255,255,.16) 27.2% 27.5%, transparent 27.7%),
    radial-gradient(ellipse at -16% 82%, transparent 0 19%, rgba(255,201,31,.13) 19.2% 19.5%, transparent 19.7%);
  pointer-events: none;
}
.mobile-menu[aria-hidden="false"] { opacity: 1; visibility: visible; transform: none; }
.mobile-menu > * { position: relative; }
.menu-kicker { color: var(--yellow); font-size: 11px; font-weight: 800; letter-spacing: 2px; }
.mobile-menu nav { display: grid; margin: 20px 0 40px; }
.mobile-menu nav a {
  display: grid;
  grid-template-columns: 40px 1fr auto;
  align-items: center;
  padding: 11px 0;
  border-bottom: 1px solid rgba(255,255,255,.18);
  font-family: var(--display);
  font-size: clamp(25px, 8vw, 44px);
  font-weight: 900;
  line-height: 1.2;
  text-transform: uppercase;
}
.mobile-menu nav span { color: var(--yellow); font-family: var(--body); font-size: 11px; }
.mobile-menu nav b { font-size: 18px; }
.mobile-menu p { color: rgba(255,255,255,.62); font-size: 13px; }

.hero {
  position: relative;
  display: grid;
  min-height: 860px;
  padding: 180px max(6vw, 24px) 100px;
  overflow: hidden;
  color: var(--white);
  background-color: var(--blue);
  background-image: linear-gradient(90deg, rgba(5,25,70,.64) 0%, rgba(5,25,70,.24) 48%, rgba(5,25,70,.08) 100%), url("../img/collectaverse-hero.webp");
  background-position: center, center bottom;
  background-size: cover;
  isolation: isolate;
}
.hero::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: auto 0 0;
  height: 150px;
  background: linear-gradient(transparent, rgba(3,18,51,.45));
}
.star-map {
  position: absolute;
  z-index: -1;
  inset: 0;
  overflow: hidden;
  opacity: .7;
  mask-image: linear-gradient(to bottom, #000, transparent 75%);
  pointer-events: none;
}
.map-orbit {
  position: absolute;
  border: 1px solid rgba(255,255,255,.24);
  border-radius: 50%;
  transform: rotate(-18deg);
}
.map-orbit::after {
  content: "";
  position: absolute;
  top: 18%;
  left: 7%;
  width: 7px;
  height: 7px;
  border: 2px solid var(--yellow);
  border-radius: 50%;
  background: var(--blue-dark);
  box-shadow: 0 0 0 5px rgba(255,201,31,.12);
}
.map-orbit.orbit-a { top: -36%; right: -8%; width: 68vw; height: 52vw; }
.map-orbit.orbit-b { bottom: -54%; left: 13%; width: 54vw; height: 38vw; transform: rotate(15deg); }
.map-star {
  position: absolute;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--white);
  box-shadow: 0 0 12px rgba(255,255,255,.8);
  animation: star-twinkle 3.8s ease-in-out infinite;
}
.map-star::after {
  content: "";
  position: absolute;
  inset: -4px 2px;
  border-left: 1px solid currentColor;
  color: inherit;
}
.map-star.star-a { top: 17%; left: 16%; color: var(--yellow); background: var(--yellow); }
.map-star.star-b { top: 29%; left: 38%; width: 3px; height: 3px; animation-delay: -.8s; }
.map-star.star-c { top: 13%; right: 21%; color: var(--yellow); background: var(--yellow); animation-delay: -1.9s; }
.map-star.star-d { top: 48%; right: 12%; width: 4px; height: 4px; animation-delay: -2.7s; }
.map-star.star-e { top: 61%; left: 46%; color: var(--yellow); background: var(--yellow); animation-delay: -1.3s; }
.map-star.star-f { top: 42%; left: 8%; width: 3px; height: 3px; animation-delay: -3.2s; }
.map-line {
  position: absolute;
  height: 1px;
  background: linear-gradient(90deg, rgba(255,255,255,.06), rgba(255,255,255,.42), rgba(255,255,255,.06));
  transform-origin: left center;
}
.map-line.line-a { top: 17%; left: 16%; width: 25%; transform: rotate(29deg); }
.map-line.line-b { top: 29%; left: 38%; width: 44%; transform: rotate(-21deg); }
.map-line.line-c { top: 29%; left: 38%; width: 33%; transform: rotate(76deg); }
.map-line.line-d { top: 61%; left: 46%; width: 44%; transform: rotate(-17deg); }
.map-line.line-e { top: 42%; left: 8%; width: 26%; transform: rotate(-72deg); }
@keyframes star-twinkle {
  0%, 100% { opacity: .35; transform: scale(.75); }
  50% { opacity: 1; transform: scale(1.3); }
}
.hero-glow {
  position: absolute;
  z-index: -1;
  width: 480px;
  height: 480px;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 50%;
  animation: ring-pulse 5.8s ease-in-out infinite;
  transform-origin: center;
  will-change: transform, opacity;
}
.hero-glow::before, .hero-glow::after {
  content: "";
  position: absolute;
  inset: 12%;
  border: inherit;
  border-radius: inherit;
}
.hero-glow::after { inset: 28%; }
.hero-glow-one { top: 90px; left: -280px; }
.hero-glow-two { right: -280px; bottom: -180px; animation-delay: -2.9s; }
@keyframes ring-pulse {
  0%, 100% { opacity: .58; transform: scale(.94); }
  50% { opacity: 1; transform: scale(1.045); }
}
.hero-content { position: relative; z-index: 3; align-self: center; width: min(770px, 64vw); }
.eyebrow {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 24px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 2.2px;
  text-transform: uppercase;
}
.eyebrow > span { display: block; width: 34px; height: 3px; background: var(--yellow); }
.eyebrow.dark { color: var(--blue-dark); }
.eyebrow.light { color: var(--yellow); }
.hero h1, .section-heading h2, .experience h2, .event-intro h2, .vendor-banner h2, .faq h2, .contact h2 {
  margin-bottom: 28px;
  font-family: var(--display);
  font-weight: 900;
  line-height: .94;
  letter-spacing: -4.5px;
  text-transform: uppercase;
}
.hero h1 { max-width: 820px; font-size: clamp(58px, 6.2vw, 100px); text-shadow: 0 4px 0 rgba(6,25,66,.24); }
h1 em, h2 em { color: var(--yellow); font-style: normal; }
.hero-brand-line {
  display: block;
  width: max-content;
  max-width: 100%;
  margin-top: .08em;
  font-size: clamp(36px, 5.7vw, 91px);
  letter-spacing: -.055em;
  line-height: 1;
  white-space: nowrap;
}
.hero h1.hero-event-name {
  display:grid;
  max-width:none;
  font-size:clamp(46px,5vw,82px);
  line-height:.9;
  letter-spacing:-.065em;
}
.hero-event-name span,
.hero-event-name em { display:block; white-space:nowrap; }
.hero-event-name em { margin-top:.08em; }
@media (max-width:620px) {
  .hero h1.hero-event-name { max-width:none; font-size:clamp(30px,9.2vw,44px); letter-spacing:-.055em; }
}

/* Keep member login and sign-up cards clear of the fixed mobile header. */
@media (max-width:850px) {
  .platform-auth { min-height:calc(100vh - 78px); min-height:calc(100dvh - 78px); padding:98px 0 52px; }
  .platform-auth-card { margin:0 auto; }
  .has-event-bar .platform-auth { min-height:calc(100vh - 126px); min-height:calc(100dvh - 126px); padding-top:146px; }
}
.hero-lead { max-width: 630px; color: rgba(255,255,255,.9); font-size: clamp(16px, 1.4vw, 20px); line-height: 1.65; }
.hero-actions { display: flex; align-items: center; gap: 32px; margin-top: 36px; }
.hero:has(.hero-map-button) .hero-actions .text-link { display:none; }
.text-link {
  display: inline-flex;
  gap: 18px;
  align-items: center;
  padding: 12px 0;
  border-bottom: 1px solid rgba(255,255,255,.6);
  font-size: 13px;
  font-weight: 700;
  transition: color .2s ease, border-color .2s ease, text-shadow .2s ease, transform .2s ease;
}
.text-link span { transition: transform .25s ease; }
.text-link:hover,
.text-link:focus-visible {
  color: var(--yellow);
  border-color: var(--yellow);
  text-shadow: 0 0 16px rgba(255,201,31,.55);
  transform: translateY(-2px);
}
.text-link:hover span,
.text-link:focus-visible span { transform: translateY(4px); }
.hero-deck { position: absolute; z-index: 2; right: 4.5vw; bottom: 118px; width: 350px; height: 410px; }
.collect-card {
  position: absolute;
  display: grid;
  grid-template-rows: auto 1fr auto;
  width: 190px;
  height: 270px;
  padding: 15px;
  border: 5px solid var(--white);
  border-radius: 18px;
  outline: 3px solid var(--ink);
  box-shadow: 12px 15px 24px rgba(4,20,55,.35);
  font-family: var(--display);
}
.collect-card::before {
  content: "";
  position: absolute;
  inset: 34px 12px 50px;
  border: 2px solid rgba(255,255,255,.8);
  border-radius: 50%;
}
.collect-card span { font-size: 11px; letter-spacing: 2px; }
.collect-card b { z-index: 1; align-self: end; font-size: 25px; letter-spacing: -1px; }
.collect-card i { z-index: 1; align-self: center; justify-self: center; font-size: 60px; font-style: normal; }
.card-one { z-index: 1; top: 78px; left: 6px; color: var(--white); background: var(--blue-dark); transform: rotate(-15deg); }
.card-two { z-index: 3; top: 12px; left: 82px; color: var(--ink); background: var(--yellow); transform: rotate(-2deg); }
.card-three { z-index: 2; top: 74px; right: -2px; color: var(--white); background: var(--blue-bright); transform: rotate(14deg); }
.hero-status {
  position: absolute;
  left: max(6vw, 24px);
  bottom: 35px;
  display: flex;
  align-items: center;
  gap: 13px;
}
.hero-status p { display: grid; margin: 0; line-height: 1.25; }
.hero-status small { color: rgba(255,255,255,.65); font-size: 9px; letter-spacing: 1.6px; }
.hero-status strong { font-size: 11px; letter-spacing: .8px; }
.status-dot {
  width: 11px;
  height: 11px;
  border: 2px solid var(--white);
  border-radius: 50%;
  background: var(--yellow);
  box-shadow: 0 0 0 4px rgba(255,201,31,.2);
  animation: status-pulse 1.9s ease-out infinite;
}
@keyframes status-pulse {
  0%, 100% { box-shadow: 0 0 0 3px rgba(255,201,31,.28); transform: scale(1); }
  48% { box-shadow: 0 0 0 10px rgba(255,201,31,0); transform: scale(1.14); }
}
.hero-status .status-dot,
.coming-soon .status-dot {
  background:#35d66f;
  box-shadow:0 0 0 4px rgba(53,214,111,.22),0 0 12px rgba(53,214,111,.5);
  animation-name:hero-status-green-pulse;
}
@keyframes hero-status-green-pulse {
  0%,100% { box-shadow:0 0 0 3px rgba(53,214,111,.32),0 0 9px rgba(53,214,111,.45); transform:scale(1); }
  48% { box-shadow:0 0 0 10px rgba(53,214,111,0),0 0 16px rgba(53,214,111,.65); transform:scale(1.14); }
}
.scroll-note {
  position: absolute;
  right: max(6vw, 24px);
  bottom: 35px;
  display: flex;
  align-items: center;
  gap: 12px;
  color: rgba(255,255,255,.7);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 1.8px;
}
.scroll-note span { color: var(--yellow); font-size: 16px; }

.marquee {
  width: 100%;
  max-width: 100vw;
  overflow: hidden;
  contain: paint;
  color: var(--ink);
  background: var(--yellow);
  border-block: 3px solid var(--ink);
}
.marquee-track {
  display: flex;
  align-items: center;
  width: max-content;
  padding: 17px 0;
  animation: ticker 24s linear infinite;
  will-change: transform;
}
.marquee-group { display: flex; flex: none; align-items: center; }
.marquee span { font-family: var(--display); font-size: 14px; font-weight: 900; letter-spacing: 1.2px; }
.marquee i { margin: 0 36px; color: var(--blue); font-style: normal; }
@keyframes ticker { to { transform: translate3d(-50%, 0, 0); } }

.section-pad { padding: clamp(85px, 10vw, 150px) max(6vw, 24px); }
.about { position: relative; background: var(--cream); }
.about::before {
  content: "COLLECT-A";
  position: absolute;
  z-index: 0;
  top: 20px;
  right: -15px;
  color: rgba(0,96,209,.045);
  font-family: var(--display);
  font-size: 16vw;
  font-weight: 900;
  line-height: .8;
  pointer-events: none;
}
.section-heading { position: relative; z-index: 1; display: grid; grid-template-columns: 1.65fr .7fr; column-gap: 7vw; align-items: end; }
.section-heading .eyebrow { grid-column: 1 / -1; }
.section-heading h2, .experience h2, .event-intro h2, .vendor-banner h2, .faq h2, .contact h2 {
  font-size: clamp(44px, 5.4vw, 86px);
  letter-spacing: clamp(-4px, -.3vw, -1px);
}
.section-heading h2 em, .event-intro h2 em, .faq h2 em { color: var(--blue); }
.section-heading > p:last-child { margin-bottom: 35px; color: #4f5b6b; font-size: 17px; }
.feature-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-top: 70px;
}
.feature-card {
  display: grid;
  min-height: 390px;
  padding: 28px;
  border: 3px solid var(--ink);
  border-radius: var(--radius);
  background: var(--white);
  box-shadow: var(--shadow);
  transition: transform .3s cubic-bezier(.2,.8,.2,1), box-shadow .3s ease, border-color .3s ease;
}
.feature-card:hover {
  border-color: var(--blue);
  box-shadow: 0 12px 0 var(--ink), 0 18px 42px rgba(0,96,209,.22);
  transform: translateY(-10px) rotate(-.65deg) scale(1.012);
}
.feature-blue { color: var(--white); background: var(--blue); }
.feature-yellow { background: var(--yellow); }
.feature-blue:hover { border-color: var(--yellow); box-shadow: 0 12px 0 var(--ink), 0 18px 44px rgba(0,96,209,.4), 0 0 30px rgba(255,201,31,.24); transform: translateY(-10px) rotate(.65deg) scale(1.012); }
.feature-yellow:hover { border-color: var(--blue); box-shadow: 0 12px 0 var(--ink), 0 18px 44px rgba(255,201,31,.4); }
.feature-top { display: flex; justify-content: space-between; align-items: center; height: min-content; font-size: 11px; font-weight: 800; }
.feature-top i { display: grid; width: 33px; height: 33px; border: 2px solid currentColor; border-radius: 50%; place-items: center; font-style: normal; transition: transform .3s ease, background .3s ease, color .3s ease; }
.feature-icon { align-self: center; justify-self: center; font-size: 76px; font-weight: 800; line-height: 1; transition: transform .35s cubic-bezier(.2,.8,.2,1), text-shadow .3s ease; }
.feature-card:hover .feature-top i { color: var(--white); background: var(--blue); transform: rotate(45deg) scale(1.1); }
.feature-blue:hover .feature-top i { color: var(--ink); background: var(--yellow); }
.feature-card:hover .feature-icon { text-shadow: 0 0 28px rgba(0,96,209,.42); transform: scale(1.14) rotate(7deg); }
.feature-blue:hover .feature-icon { text-shadow: 0 0 30px rgba(255,201,31,.62); }
.feature-card h3 { align-self: end; margin-bottom: 8px; font-family: var(--display); font-size: clamp(23px, 2vw, 31px); font-weight: 900; line-height: 1.05; }
.feature-card p { margin: 0; color: #5b6472; font-size: 14px; line-height: 1.65; }
.feature-blue p { color: rgba(255,255,255,.78); }

.experience {
  position: relative;
  display: grid;
  grid-template-columns: .85fr 1.15fr;
  gap: 8vw;
  padding: clamp(90px, 10vw, 150px) max(6vw, 24px);
  color: var(--white);
  background-color: var(--blue-dark);
  background-image: radial-gradient(circle at 12% 50%, rgba(35,136,255,.45), transparent 27%);
  isolation: isolate;
}
.experience-star-map { z-index: 0; opacity: .34; mask-image: none; }
.experience-copy, .experience-list { position: relative; z-index: 1; }
.experience h2 { font-size: clamp(46px, 5vw, 80px); }
.experience-copy > p:not(.eyebrow) { max-width: 510px; color: rgba(255,255,255,.7); }
.experience-copy .button { margin-top: 25px; }
.experience-photo-stack {
  display: grid;
  grid-template-columns: 1.08fr .92fr;
  gap: 12px;
  max-width: 540px;
  margin-top: 42px;
}
.experience-photo-stack figure {
  position: relative;
  min-height: 205px;
  margin: 0;
  overflow: hidden;
  border: 3px solid var(--yellow);
  border-radius: 18px;
  background: var(--navy);
  box-shadow: 0 8px 0 rgba(3,18,51,.8), 0 0 26px rgba(255,201,31,.18);
  transform: rotate(-1.4deg);
}
.experience-photo-stack figure:nth-child(2) { margin-top: 28px; transform: rotate(1.8deg); }
.experience-photo-stack figure::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg,transparent 48%,rgba(3,18,51,.88)); pointer-events: none; }
.experience-photo-stack img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s cubic-bezier(.2,.8,.2,1), filter .35s ease; }
.experience-photo-stack figure:hover img { filter: saturate(1.08); transform: scale(1.055); }
.experience-photo-stack figcaption { position: absolute; z-index: 1; right: 13px; bottom: 12px; left: 13px; color: var(--white); font-size: 8px; font-weight: 900; letter-spacing: .9px; }
.experience-list { align-self: center; }
.experience-row {
  display: grid;
  grid-template-columns: 40px minmax(180px, 1fr) auto 40px;
  align-items: center;
  gap: 18px;
  min-height: 90px;
  border-bottom: 1px solid rgba(255,255,255,.22);
  transition: .2s ease;
}
.experience-row:first-child { border-top: 1px solid rgba(255,255,255,.22); }
.experience-row:hover { padding-inline: 12px; color: var(--yellow); background: rgba(255,255,255,.04); }
.experience-row:hover { box-shadow: inset 4px 0 0 var(--yellow), 0 0 34px rgba(35,136,255,.12); }
.experience-row i { transition: transform .25s ease, text-shadow .25s ease; }
.experience-row:hover i { text-shadow: 0 0 14px rgba(255,201,31,.8); transform: translate(4px, -3px); }
.experience-row span { color: var(--yellow); font-size: 10px; font-weight: 800; }
.experience-row h3 { margin: 0; font-family: var(--display); font-size: clamp(19px, 2vw, 29px); font-weight: 900; }
.experience-row b { color: rgba(255,255,255,.45); font-size: 9px; letter-spacing: 1.2px; }
.experience-row i { font-style: normal; }

.event-section { background: var(--white); }
.event-intro { display: flex; justify-content: space-between; align-items: end; }
.event-intro .eyebrow { align-self: start; margin-top: 12px; }
.event-intro h2 { text-align: right; }
.event-card {
  display: grid;
  grid-template-columns: 1.15fr .85fr;
  min-height: 570px;
  margin-top: 55px;
  overflow: hidden;
  border: 3px solid var(--ink);
  border-radius: 30px;
  box-shadow: var(--shadow);
}
.event-visual {
  position: relative;
  display: grid;
  overflow: hidden;
  color: var(--white);
  background: radial-gradient(circle at 50% 50%, var(--blue-bright), var(--blue-dark) 70%);
  place-items: center;
}
.event-visual::after {
  content: "";
  position: absolute;
  width: 440px;
  aspect-ratio: 1;
  border: 2px solid rgba(255,255,255,.28);
  border-radius: 50%;
  box-shadow: 0 0 0 70px rgba(255,255,255,.05), 0 0 0 140px rgba(255,255,255,.04);
  animation: ring-pulse 6.4s ease-in-out infinite;
  transform-origin: center;
}
.event-star-map { z-index: 0; opacity: .62; mask-image: none; }
.event-star-map .map-orbit.orbit-a { top: -17%; right: -32%; width: 560px; height: 440px; }
.event-star-map .map-orbit.orbit-b { bottom: -43%; left: -23%; width: 500px; height: 390px; }
.event-chip { position: absolute; z-index: 3; top: 25px; left: 25px; padding: 8px 13px; border: 1px solid rgba(255,255,255,.45); border-radius: 999px; font-size: 9px; font-weight: 800; letter-spacing: 1.2px; }
.event-mark { z-index: 2; display: flex; align-items: center; gap: 17px; font-family: var(--display); font-size: clamp(80px, 11vw, 160px); font-weight: 900; line-height: 1; }
.event-mark i { color: var(--yellow); font-size: .32em; font-style: normal; }
.event-details { display: grid; align-content: center; padding: clamp(35px, 5vw, 78px); background: var(--yellow); }
.event-label { font-size: 10px; font-weight: 800; letter-spacing: 1.5px; }
.event-details h3 { margin: 12px 0 25px; font-family: var(--display); font-size: clamp(40px, 4.3vw, 67px); font-weight: 900; line-height: .95; letter-spacing: -3px; }
.event-details > p:not(.event-label) { color: rgba(18,26,39,.72); font-size: 14px; }
.event-meta { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin: 22px 0 32px; padding-block: 18px; border-block: 1px solid rgba(18,26,39,.25); }
.event-meta div { display: grid; }
.event-meta span { font-size: 8px; font-weight: 800; letter-spacing: 1.5px; }
.event-meta strong { font-size: 12px; }
.event-details .button { width: max-content; }

.events-grid { display: grid; grid-template-columns: 1.35fr .825fr .825fr; gap: 20px; margin-top: 55px; }
.event-tile { position: relative; display: grid; min-height: 620px; overflow: hidden; border: 3px solid var(--ink); border-radius: 28px; background: var(--white); box-shadow: 0 8px 0 var(--ink); transition: transform .3s cubic-bezier(.2,.8,.2,1), box-shadow .3s ease; }
.event-tile:hover { box-shadow: 0 13px 0 var(--ink), 0 22px 42px rgba(0,96,209,.18); transform: translateY(-7px); }
.event-tile-top { position: relative; z-index: 2; display: flex; justify-content: space-between; align-items: center; padding: 20px 22px; }
.event-tile-top .event-chip { position: static; width: max-content; color: inherit; border-color: currentColor; }
.event-tile-top > strong { font-family: var(--display); font-size: 15px; }
.event-tile-body { position: relative; z-index: 2; display: grid; align-content: end; padding: 28px; }
.event-tile-body h3 { margin: 11px 0 20px; font-family: var(--display); font-size: clamp(34px, 3.1vw, 53px); font-weight: 900; line-height: .95; letter-spacing: -2.4px; }
.event-tile-body > p:not(.event-label) { color: rgba(18,26,39,.7); font-size: 13px; }
.event-tile-body .button { width: max-content; }
.event-tile-featured { grid-template-rows: auto 1fr auto; color: var(--white); background: radial-gradient(circle at 50% 32%, var(--blue-bright), var(--blue-dark) 72%); }
.event-tile-featured::before { content: ""; position: absolute; top: 70px; left: 50%; width: 330px; aspect-ratio: 1; border: 2px solid rgba(255,255,255,.3); border-radius: 50%; box-shadow: 0 0 0 55px rgba(255,255,255,.045), 0 0 0 110px rgba(255,255,255,.025); animation: ring-pulse 6.4s ease-in-out infinite; transform: translateX(-50%); }
.event-tile-featured .event-tile-body > p:not(.event-label) { color: rgba(255,255,255,.76); }
.event-tile-featured .event-meta { border-color: rgba(255,255,255,.26); }
.event-tile-mark { position: relative; z-index: 1; align-self: center; justify-self: center; display: flex; align-items: center; gap: 12px; font-family: var(--display); font-size: clamp(72px,8vw,128px); font-weight: 900; line-height: 1; }
.event-tile-mark i { color: var(--yellow); font-size: .28em; font-style: normal; }
.event-tile-yellow { background: var(--yellow); }
.event-tile-light { background: var(--cream); }
.event-tile-yellow::after, .event-tile-light::after { content: ""; position: absolute; top: 90px; right: -100px; width: 250px; height: 250px; border: 2px solid currentColor; border-radius: 50%; opacity: .1; box-shadow: 0 0 0 45px currentColor; }

.vendor-banner {
  position: relative;
  display: grid;
  grid-template-columns: 180px 1fr auto;
  align-items: center;
  gap: 5vw;
  padding: 90px max(6vw, 24px);
  overflow: hidden;
  color: var(--white);
  background: var(--blue);
}
.vendor-banner::after {
  content: "";
  position: absolute;
  right: 15%;
  bottom: -210px;
  width: 520px;
  height: 520px;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 50%;
  animation: ring-pulse 7.2s ease-in-out infinite;
  transform-origin: center;
}
.vendor-orbit { position: relative; display: grid; width: 160px; height: 160px; border: 3px solid var(--yellow); border-radius: 50%; box-shadow: 0 0 0 24px rgba(255,201,31,.09), inset 0 0 0 24px rgba(255,255,255,.04); place-items: center; }
.vendor-orbit::before { content: ""; position: absolute; width: 210px; height: 3px; background: var(--white); transform: rotate(-25deg); }
.vendor-orbit span { z-index: 1; display: grid; width: 54px; height: 54px; color: var(--ink); background: var(--yellow); border: 3px solid var(--ink); border-radius: 50%; place-items: center; }
.vendor-copy { position: relative; z-index: 1; }
.vendor-banner h2 { margin-bottom: 18px; font-size: clamp(43px, 4.8vw, 74px); }
.vendor-banner p:last-child { max-width: 660px; margin: 0; color: rgba(255,255,255,.72); }
.vendor-banner .button { position: relative; z-index: 1; white-space: nowrap; }

.faq { display: grid; grid-template-columns: .72fr 1.28fr; gap: 9vw; background: var(--cream); }
.faq-heading { position: sticky; top: 120px; height: max-content; }
.faq h2 { font-size: clamp(40px, 4.7vw, 72px); }
.faq-list details { border-top: 2px solid var(--ink); transition: background .25s ease, box-shadow .25s ease; }
.faq-list details:last-child { border-bottom: 2px solid var(--ink); }
.faq-list summary {
  display: grid;
  grid-template-columns: 1fr 45px;
  align-items: center;
  gap: 20px;
  min-height: 95px;
  cursor: pointer;
  list-style: none;
  font-family: var(--display);
  font-size: clamp(17px, 1.6vw, 24px);
  font-weight: 800;
  line-height: 1.25;
  transition: color .22s ease, padding .28s cubic-bezier(.2,.8,.2,1);
}
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary span { display: grid; width: 38px; height: 38px; border: 2px solid var(--ink); border-radius: 50%; place-items: center; transition: transform .28s cubic-bezier(.2,.8,.2,1), background .22s ease, color .22s ease, box-shadow .22s ease; }
.faq-list details:hover { background: linear-gradient(90deg, rgba(0,96,209,.09), rgba(255,255,255,.55)); box-shadow: inset 4px 0 0 var(--blue), 0 8px 26px rgba(0,96,209,.08); }
.faq-list details:hover summary { color: var(--blue); padding-inline: 16px 10px; }
.faq-list details:hover summary span { color: var(--white); background: var(--blue); box-shadow: 0 0 22px rgba(0,96,209,.42); transform: rotate(90deg) scale(1.1); }
.faq-list details[open] summary span { color: var(--white); background: var(--blue); transform: rotate(45deg); }
.faq-list details[open]:hover summary span { transform: rotate(135deg) scale(1.1); }
.faq-list details p { max-width: 680px; padding: 0 65px 28px 0; color: #566170; }

.contact {
  position: relative;
  display: grid;
  min-height: 620px;
  padding: 110px max(6vw, 24px);
  overflow: hidden;
  color: var(--white);
  background-color: var(--navy);
  background-image: radial-gradient(circle at 75% 25%, rgba(35,136,255,.42), transparent 30%);
  place-items: center;
  text-align: center;
}
.contact-star-map { z-index: 0; opacity: .34; mask-image: none; }
.contact::before, .contact::after {
  content: "";
  position: absolute;
  border: 2px solid rgba(255,255,255,.14);
  border-radius: 50%;
  animation: ring-pulse 6.8s ease-in-out infinite;
  transform-origin: center;
  will-change: transform, opacity;
}
.contact::before { width: 590px; height: 590px; left: -320px; top: -250px; box-shadow: 0 0 0 90px rgba(255,255,255,.025); }
.contact::after { width: 420px; height: 420px; right: -250px; bottom: -230px; box-shadow: 0 0 0 70px rgba(255,201,31,.04); animation-delay: -3.4s; }
.contact-inner { position: relative; z-index: 1; }
.contact .eyebrow { justify-content: center; }
.contact h2 { margin-bottom: 20px; font-size: clamp(55px, 7vw, 110px); }
.contact > div > p:not(.eyebrow) { color: rgba(255,255,255,.65); }
.coming-soon { display: inline-flex; align-items: center; gap: 12px; margin-top: 25px; padding: 14px 18px; border: 1px solid rgba(255,255,255,.35); border-radius: 999px; font-size: 10px; font-weight: 800; letter-spacing: 1.4px; }
.contact-button { margin-top: 24px; }

.footer {
  display: grid;
  grid-template-columns: 1.3fr .7fr .7fr;
  gap: 40px;
  padding: 70px max(6vw, 24px) 45px;
  color: var(--white);
  background: #0060d1;
  border-top: 1px solid rgba(255,255,255,.12);
}
.footer-brand > p { margin: 25px 0 0 61px; color: rgba(255,255,255,.48); font-size: 12px; line-height: 1.5; }
.footer-socials { display: flex; gap: 12px; margin: 24px 0 0 61px; }
.footer-social { position: relative; display: grid; width: 48px; height: 48px; border: 2px solid rgba(255,255,255,.55); border-radius: 50%; color: var(--white); place-items: center; transition: color .25s ease, border-color .25s ease, background .25s ease, box-shadow .25s ease, transform .25s cubic-bezier(.2,.8,.2,1); }
.footer-social:hover, .footer-social:focus-visible { color: var(--ink); border-color: var(--yellow); background: var(--yellow); box-shadow: 0 0 0 7px rgba(255,201,31,.14), 0 0 34px rgba(255,201,31,.68), 0 10px 24px rgba(0,0,0,.3); transform: translateY(-6px) scale(1.14); }
.footer-social.is-disabled { cursor: not-allowed; opacity: .48; }
.footer-social.is-disabled:hover { color: var(--ink); border-color: var(--yellow); background: var(--yellow); box-shadow: 0 0 0 7px rgba(255,201,31,.12), 0 0 32px rgba(255,201,31,.58), 0 10px 22px rgba(0,0,0,.28); opacity: 1; transform: translateY(-6px) scale(1.14); }
.social-icon-fb { font-family: Arial, sans-serif; font-size: 25px; font-weight: 900; line-height: 1; }
.social-icon-ig { position: relative; width: 22px; height: 22px; border: 2px solid currentColor; border-radius: 7px; }
.social-icon-fb, .social-icon-ig { transition: transform .3s cubic-bezier(.2,.8,.2,1); }
.footer-social:hover .social-icon-fb, .footer-social:focus-visible .social-icon-fb { transform: scale(1.16) rotate(-6deg); }
.footer-social:hover .social-icon-ig, .footer-social:focus-visible .social-icon-ig { transform: scale(1.12) rotate(8deg); }
.social-icon-ig::before { content: ""; position: absolute; top: 50%; left: 50%; width: 7px; height: 7px; border: 2px solid currentColor; border-radius: 50%; transform: translate(-50%,-50%); }
.social-icon-ig::after { content: ""; position: absolute; top: 3px; right: 3px; width: 3px; height: 3px; border-radius: 50%; background: currentColor; }

.offline-page { min-height: 100svh; color: var(--white); background: radial-gradient(circle at 75% 25%, rgba(35,136,255,.48), transparent 32%), var(--blue-dark); }
.offline-shell { display: grid; align-content: space-between; min-height: 100svh; padding: 32px max(6vw,24px) clamp(60px,9vw,120px); overflow: hidden; }
.offline-copy { align-self: end; max-width: 900px; }
.offline-copy h1 { margin-bottom: 25px; font-family: var(--display); font-size: clamp(52px,8vw,120px); font-weight: 900; line-height: .9; letter-spacing: -.05em; }
.offline-copy > p:not(.eyebrow) { max-width: 640px; color: rgba(255,255,255,.72); }
.offline-copy .button { margin-top: 24px; }
.footer nav { display: grid; align-content: start; gap: 8px; font-size: 12px; font-weight: 700; }
.footer nav a { width: max-content; transition: color .2s ease, transform .2s ease, text-shadow .2s ease; }
.footer nav a:hover,
.footer nav a:focus-visible { color: var(--yellow); text-shadow: 0 0 15px rgba(255,201,31,.55); transform: translateX(5px); }
.footer-meta { align-self: end; color: rgba(255,255,255,.45); font-size: 10px; letter-spacing: .7px; text-align: right; text-transform: uppercase; }
.footer-meta p { margin-bottom: 6px; }

/* Multi-page site */
.inner-page { background: var(--cream); }
.page-hero {
  position: relative;
  display: grid;
  min-height: 720px;
  padding: 180px max(6vw, 24px) 100px;
  overflow: hidden;
  color: var(--white);
  background: radial-gradient(circle at 75% 30%, rgba(35,136,255,.5), transparent 32%), var(--blue-dark);
  isolation: isolate;
}
.page-hero::after {
  content: "";
  position: absolute;
  z-index: 0;
  right: -16vw;
  bottom: -28vw;
  width: 62vw;
  height: 62vw;
  border: 2px solid rgba(255,255,255,.12);
  border-radius: 50%;
  box-shadow: 0 0 0 8vw rgba(255,255,255,.025), 0 0 0 16vw rgba(255,201,31,.025);
  animation: ring-pulse 7s ease-in-out infinite;
}
.page-star-map { z-index: 0; opacity: .5; mask-image: none; }
.page-hero-copy { position: relative; z-index: 2; align-self: center; width: min(920px, 76vw); }
.page-hero h1 {
  max-width: 1000px;
  margin-bottom: 28px;
  font-family: var(--display);
  font-size: clamp(55px, 7vw, 112px);
  font-weight: 900;
  line-height: .92;
  letter-spacing: clamp(-6px, -.4vw, -2px);
  text-transform: uppercase;
}
.page-hero-copy > p:not(.eyebrow) { max-width: 680px; color: rgba(255,255,255,.75); font-size: clamp(16px, 1.5vw, 20px); }
.page-hero-copy .button { margin-top: 25px; }
.page-hero-code { position: absolute; z-index: 2; right: max(6vw,24px); bottom: 55px; display: grid; text-align: right; }
.page-hero-code small { color: var(--yellow); font-size: 9px; font-weight: 800; letter-spacing: 2px; }
.page-hero-code strong { font-family: var(--display); font-size: clamp(70px, 10vw, 160px); line-height: .82; opacity: .1; }
.page-hero-code span { color: var(--yellow); font-size: 20px; }

.page-intro { background: var(--cream); }
.page-intro-heading { display: grid; grid-template-columns: 1fr 1.5fr; gap: 6vw; align-items: end; }
.page-intro-heading .eyebrow { margin-bottom: 18px; }
.page-intro-heading h2, .process-heading h2, .page-cta h2, .application-aside h2, .contact-options h2, .pathways-heading h2 {
  margin: 0;
  font-family: var(--display);
  font-size: clamp(43px, 5.4vw, 84px);
  font-weight: 900;
  line-height: .96;
  letter-spacing: clamp(-4px, -.25vw, -1px);
  text-transform: uppercase;
}
.page-intro-copy { max-width: 720px; margin: 40px 0 0 auto; color: #566170; font-size: 18px; }
.page-feature-grid { margin-top: 65px; }

/* Official event photography gives the shared community cards a stronger sense of place. */
.feature-card-photo {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  color: var(--white);
  background: var(--navy);
  border-color: var(--blue);
}
.feature-card-background,
.feature-card-photo-overlay {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.feature-card-background {
  z-index: -2;
  object-fit: cover;
  filter: saturate(.9) contrast(1.04);
  transform: scale(1.01);
  transition: transform .55s cubic-bezier(.2,.8,.2,1), filter .4s ease;
}
.feature-card-photo-overlay {
  z-index: -1;
  background:
    linear-gradient(180deg, rgba(4,24,62,.58) 0%, rgba(4,24,62,.76) 42%, rgba(3,16,43,.96) 100%),
    linear-gradient(135deg, rgba(0,96,209,.28), transparent 58%);
}
.feature-card-photo .feature-top,
.feature-card-photo .feature-icon { color: var(--yellow); }
.feature-card-photo h3 { color: var(--white); text-shadow: 0 2px 18px rgba(0,0,0,.5); }
.feature-card-photo p { color: rgba(255,255,255,.84); text-shadow: 0 1px 12px rgba(0,0,0,.6); }
.feature-card-photo:hover {
  border-color: var(--yellow);
  box-shadow: 0 12px 0 var(--ink), 0 18px 44px rgba(0,96,209,.38), 0 0 30px rgba(255,201,31,.22);
}
.feature-card-photo:hover .feature-card-background {
  filter: saturate(1.06) contrast(1.06);
  transform: scale(1.075);
}
.feature-card-photo:hover .feature-top i {
  color: var(--ink);
  background: var(--yellow);
}
.feature-card-photo:hover .feature-icon { text-shadow: 0 0 30px rgba(255,201,31,.68); }

.process-section { display: grid; grid-template-columns: .8fr 1.2fr; gap: 8vw; color: var(--white); background: var(--navy); }
.process-heading { position: sticky; top: 120px; align-self: start; }
.process-heading h2 em, .page-cta h2 em { color: var(--yellow); font-style: normal; }
.process-step { display: grid; grid-template-columns: 42px 1fr auto; gap: 20px; align-items: center; min-height: 140px; border-top: 1px solid rgba(255,255,255,.22); transition: padding .25s ease, color .25s ease, background .25s ease, box-shadow .25s ease; }
.process-step:last-child { border-bottom: 1px solid rgba(255,255,255,.22); }
.process-step:hover { padding-inline: 14px; color: var(--yellow); background: rgba(255,255,255,.04); box-shadow: inset 4px 0 0 var(--yellow); }
.process-step > span { color: var(--yellow); font-size: 10px; font-weight: 800; }
.process-step h3 { margin: 0 0 6px; font-family: var(--display); font-size: 28px; font-weight: 900; }
.process-step p { margin: 0; color: rgba(255,255,255,.62); font-size: 14px; }
.process-step i { font-style: normal; transition: transform .25s ease; }
.process-step:hover i { transform: translate(4px,-4px); }

.page-cta { position: relative; display: grid; min-height: 570px; padding: 100px max(6vw,24px); overflow: hidden; color: var(--white); background: var(--blue); isolation: isolate; place-items: center; text-align: center; }
.page-cta > div:not(.star-map) { position: relative; z-index: 1; }
.page-cta .eyebrow { justify-content: center; }
.page-cta h2 { font-size: clamp(52px, 7vw, 108px); }
.page-cta .button { margin-top: 35px; }

.pathways { background: var(--white); }
.pathways-heading { display: flex; justify-content: space-between; gap: 6vw; align-items: end; }
.pathways-heading .eyebrow { align-self: flex-start; white-space: nowrap; }
.pathways-heading h2 { text-align: right; }
.pathways-heading h2 em { color: var(--blue); font-style: normal; }
.pathway-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 16px; margin-top: 60px; }
.pathway-card { position: relative; display: grid; min-height: 440px; padding: 24px; overflow: hidden; border: 3px solid var(--ink); border-radius: 22px; background: var(--white); box-shadow: 0 7px 0 var(--ink); transition: transform .28s cubic-bezier(.2,.8,.2,1), box-shadow .28s ease; }
.pathway-card::after { content: ""; position: absolute; right: -70px; top: -70px; width: 150px; height: 150px; border: 1px solid currentColor; border-radius: 50%; opacity: .15; }
.pathway-card:hover, .pathway-card:focus-visible { transform: translateY(-9px) rotate(-.5deg); box-shadow: 0 12px 0 var(--ink), 0 18px 36px rgba(0,96,209,.2); }
.pathway-card > span { font-size: 10px; font-weight: 800; }
.pathway-photo { position: relative; height: 145px; margin: 16px -7px 22px; overflow: hidden; border: 2px solid currentColor; border-radius: 15px; background: var(--blue-dark); }
.pathway-photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg,rgba(7,27,62,.03),rgba(7,27,62,.28)); pointer-events: none; }
.pathway-photo img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s cubic-bezier(.2,.8,.2,1), filter .35s ease; }
.pathway-card:hover .pathway-photo img { filter: saturate(1.08) contrast(1.03); transform: scale(1.06); }
.pathway-card small { align-self: end; color: #687281; font-size: 9px; font-weight: 800; letter-spacing: 1.4px; }
.pathway-card h3 { margin: 6px 0 10px; font-family: var(--display); font-size: clamp(24px,2.1vw,34px); font-weight: 900; line-height: 1; }
.pathway-card p { margin: 0 0 35px; color: #596474; font-size: 13px; }
.pathway-card i { position: absolute; right: 22px; bottom: 20px; display: grid; width: 38px; height: 38px; border: 2px solid currentColor; border-radius: 50%; place-items: center; font-style: normal; transition: transform .25s ease, background .25s ease; }
.pathway-card:hover i { background: var(--blue); color: var(--white); transform: rotate(45deg) scale(1.08); }
.pathway-blue { color: var(--white); background: var(--blue); }
.pathway-blue small, .pathway-blue p, .pathway-dark small, .pathway-dark p { color: rgba(255,255,255,.7); }
.pathway-blue:hover i { color: var(--ink); background: var(--yellow); }
.pathway-yellow { background: var(--yellow); }
.pathway-dark { color: var(--white); background: var(--ink); }
.pathway-dark:hover i { color: var(--ink); background: var(--yellow); }

.application-layout, .contact-page { display: grid; grid-template-columns: .7fr 1.3fr; gap: 8vw; align-items: start; background: var(--cream); }
.application-aside, .contact-options { position: sticky; top: 115px; }
.application-aside > p:not(.eyebrow) { margin-top: 25px; color: #5b6573; }
.application-aside ul { margin: 28px 0 0; padding: 0; list-style: none; }
.application-aside li { padding: 12px 0; border-bottom: 1px solid var(--line); font-size: 13px; font-weight: 700; }
.application-aside li::before { content: "✦"; margin-right: 12px; color: var(--blue); }
.site-form { padding: clamp(28px,4vw,58px); border: 3px solid var(--ink); border-radius: 28px; background: var(--white); box-shadow: var(--shadow); }
.form-heading { display: flex; justify-content: space-between; gap: 20px; margin-bottom: 35px; padding-bottom: 20px; border-bottom: 2px solid var(--ink); font-family: var(--display); font-size: 12px; letter-spacing: 1px; }
.form-heading span { color: var(--blue); }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }
.form-section-title { grid-column: 1 / -1; margin: 18px 0 0; padding: 0 0 13px; border-bottom: 2px solid var(--ink); color: var(--blue); font-family: var(--display); font-size: 18px; font-weight: 900; text-transform: uppercase; }
.form-section-title:first-child { margin-top: 0; }
.form-grid label { display: grid; gap: 8px; font-size: 11px; font-weight: 800; letter-spacing: .5px; text-transform: uppercase; }
.form-wide { grid-column: 1 / -1; }
.form-grid input, .form-grid select, .form-grid textarea { width: 100%; padding: 14px 15px; border: 2px solid rgba(18,26,39,.24); border-radius: 10px; color: var(--ink); background: #fbfcff; font-family: var(--body); font-size: 15px; text-transform: none; outline: 0; transition: border .2s ease, box-shadow .2s ease, background .2s ease; }
.form-grid input, .form-grid select { min-height: 52px; }
.form-grid textarea { resize: vertical; }
.option-fieldset { margin: 0; padding: 0; border: 0; }
.option-fieldset legend { margin-bottom: 12px; font-size: 11px; font-weight: 800; letter-spacing: .5px; text-transform: uppercase; }
.check-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 10px; }
.check-grid label, .consent-check { display: flex; grid-template-columns: none; align-items: center; gap: 10px; min-height: 48px; padding: 10px 12px; border: 2px solid rgba(18,26,39,.16); border-radius: 10px; background: #fbfcff; cursor: pointer; }
.form-grid .check-grid input, .form-grid .consent-check input { flex: 0 0 auto; width: 18px; height: 18px; padding: 0; accent-color: var(--blue); }
.form-grid input:focus, .form-grid select:focus, .form-grid textarea:focus { border-color: var(--blue); background: var(--white); box-shadow: 0 0 0 4px rgba(0,96,209,.12), 0 0 24px rgba(0,96,209,.1); }
.site-form .button { margin-top: 30px; }
.site-form .button:disabled { cursor: not-allowed; opacity: .5; transform: none; box-shadow: none; }
.form-status { margin: 17px 0 0; color: #697381; font-size: 12px; }

.social-actions { display: grid; gap: 12px; margin-top: 35px; }
.social-button { display: grid; grid-template-columns: 42px 1fr auto; gap: 15px; align-items: center; min-height: 72px; padding: 12px 16px; border: 2px solid var(--ink); border-radius: 16px; background: var(--white); box-shadow: 0 4px 0 var(--ink); transition: transform .24s ease, box-shadow .24s ease, color .2s ease; }
.social-button > span { display: grid; width: 40px; height: 40px; border-radius: 50%; color: var(--white); background: var(--blue); place-items: center; font-family: var(--display); font-size: 11px; }
.social-button strong { font-family: var(--display); font-size: 14px; }
.social-button i { font-size: 10px; font-style: normal; }
a.social-button:hover, a.social-button:focus-visible { color: var(--blue); box-shadow: 0 7px 0 var(--ink), 0 0 24px rgba(0,96,209,.18); transform: translateY(-3px); }
.social-button.is-disabled { color: #7c8490; background: #eeeef0; box-shadow: none; }


.reveal { opacity: 0; transform: translateY(26px); transition: opacity .7s ease, transform .7s ease; }
.reveal.is-visible { opacity: 1; transform: none; }
.feature-card:nth-child(2), .experience-row:nth-child(2) { transition-delay: .08s; }
.feature-card:nth-child(3), .experience-row:nth-child(3) { transition-delay: .16s; }
.experience-row:nth-child(4) { transition-delay: .24s; }

@media (max-width: 1100px) {
  .site-header { grid-template-columns: 1fr auto; }
  .desktop-nav, .header-cta { display: none; }
  .header-actions { grid-column: 2; }
  .menu-toggle { display: block; }
  .hero-content { width: min(710px, 72vw); }
  .hero-deck { right: -40px; transform: scale(.82); transform-origin: bottom right; }
  .feature-grid { gap: 14px; }
  .feature-card { min-height: 360px; padding: 22px; }
  .vendor-banner { grid-template-columns: 130px 1fr; }
  .vendor-orbit { width: 120px; height: 120px; }
  .vendor-banner > .button { grid-column: 2; width: max-content; }
  .pathway-grid { grid-template-columns: repeat(2,1fr); }
  .events-grid { grid-template-columns: 1fr 1fr; }
  .event-tile-featured { grid-column: 1 / -1; }
}

@media (max-width: 820px) {
  .site-header { height: 78px; padding-inline: 20px; }
  .brand-orbit { width: 40px; height: 40px; box-shadow: inset 0 0 0 6px var(--blue), inset 0 0 0 9px var(--white); }
  .brand-orbit::before { width: 49px; }
  .brand-copy strong { font-size: 13px; }
  .brand-copy small { font-size: 6px; letter-spacing: 1.2px; }
  .hero { min-height: 820px; padding: 135px 24px 130px; background-position: center, 60% bottom; }
  .hero-content { align-self: start; width: 100%; }
  .hero h1 { font-size: clamp(49px, 12.5vw, 80px); letter-spacing: -3px; }
  .hero-brand-line { font-size: clamp(36px, 9vw, 67px); }
  .hero-lead { max-width: 540px; font-size: 15px; }
  .hero-deck { right: -6px; bottom: 70px; width: 300px; transform: scale(.68); }
  .hero-status { bottom: 24px; }
  .scroll-note { display: none; }
  .section-heading { display: block; }
  .section-heading h2, .experience h2, .event-intro h2, .vendor-banner h2, .faq h2 { font-size: clamp(39px, 9vw, 62px); }
  .section-heading > p:last-child { max-width: 600px; }
  .feature-grid { grid-template-columns: 1fr; }
  .feature-card { min-height: 330px; }
  .experience { grid-template-columns: 1fr; }
  .experience-copy { margin-bottom: 20px; }
  .event-intro { display: block; }
  .event-intro h2 { text-align: left; }
  .event-card { grid-template-columns: 1fr; }
  .events-grid { grid-template-columns: 1fr; }
  .event-tile-featured { grid-column: auto; }
  .event-tile { min-height: 540px; }
  .event-visual { min-height: 420px; }
  .vendor-banner { grid-template-columns: 1fr; }
  .vendor-orbit { display: none; }
  .vendor-banner > .button { grid-column: 1; }
  .faq { grid-template-columns: 1fr; }
  .faq-heading { position: static; }
  .footer { grid-template-columns: 1fr 1fr; }
  .footer-meta { grid-column: 1 / -1; text-align: left; }
  .page-hero { min-height: 650px; }
  .page-hero-copy { width: 100%; }
  .page-intro-heading, .process-section, .application-layout, .contact-page { grid-template-columns: 1fr; }
  .page-intro-copy { margin-left: 0; }
  .process-heading, .application-aside, .contact-options { position: static; }
  .pathways-heading { display: block; }
  .pathways-heading h2 { text-align: left; }
  .notification-prompt { grid-template-columns: auto 1fr; }
  .notification-actions { grid-column: 1 / -1; grid-template-columns: 1fr auto; align-items: center; justify-items: stretch; width: 100%; }
  .notification-actions .button { width: 100%; }
}

@media (max-width: 560px) {
  .site-header, main, .footer { width: 100%; max-width: 100%; }
  .header-actions { gap: 8px; }
  .header-install { width: 44px; min-height: 44px; padding: 4px; border-color: rgba(255,255,255,.48); background: rgba(7,27,62,.56); box-shadow: none; }
  .header-install > span { width: 34px; height: 34px; color: var(--ink); background: var(--yellow); }
  .header-install b { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
  .notification-prompt { right: 12px; bottom: 12px; grid-template-columns: 46px 1fr; gap: 12px; width: calc(100vw - 24px); padding: 18px 16px; border-radius: 20px; }
  .notification-bell { width: 44px; height: 44px; font-size: 22px; }
  .notification-copy { padding-right: 20px; }
  .notification-copy strong { font-size: 15px; }
  .notification-copy > p:not(.notification-status) { font-size: 11px; }
  .notification-actions { grid-template-columns: 1fr; }
  .notification-later { min-height: 40px; }
  .hero { min-height: 760px; padding-top: 120px; background-position: center, 64% bottom; }
  .hero-star-map .map-orbit.orbit-a { top: -4%; right: -65%; width: 150vw; height: 110vw; }
  .hero-star-map .map-orbit.orbit-b { bottom: -15%; left: -45%; width: 130vw; height: 90vw; }
  .eyebrow { font-size: 9px; letter-spacing: 1.55px; }
  .hero h1 { max-width: 410px; font-size: clamp(44px, 13.6vw, 67px); line-height: .97; }
  .hero-brand-line { font-size: clamp(34px, 8.8vw, 49px); letter-spacing: -.06em; }
  .hero-lead { max-width: 360px; }
  .hero-actions { align-items: flex-start; flex-direction: column; gap: 12px; margin-top: 25px; }
  .hero-deck { right: -55px; bottom: 25px; transform: scale(.54); }
  .hero-status { display: none; }
  .section-pad, .experience { padding-block: 78px; }
  .section-heading h2, .experience h2, .event-intro h2, .vendor-banner h2, .faq h2 { letter-spacing: -2.4px; }
  .feature-grid { margin-top: 45px; }
  .feature-card { min-height: 315px; box-shadow: 0 6px 0 var(--ink); }
  .experience-row { grid-template-columns: 28px 1fr 25px; gap: 10px; min-height: 80px; }
  .experience-row b { display: none; }
  .event-card { border-radius: 20px; box-shadow: 0 6px 0 var(--ink); }
  .event-visual { min-height: 330px; }
  .event-visual::after { width: 280px; }
  .event-mark { font-size: 90px; }
  .event-details { padding: 36px 25px 42px; }
  .event-details h3 { font-size: 42px; letter-spacing: -2px; }
  .event-meta { grid-template-columns: 1fr; }
  .event-tile-body { padding: 24px 20px 26px; }
  .event-tile-body h3 { font-size: 35px; }
  .event-tile-top { padding-inline: 20px; }
  .vendor-banner { padding-block: 75px; }
  .faq-list summary { min-height: 84px; }
  .faq-list details p { padding-right: 20px; }
  .contact { min-height: 540px; padding-block: 85px; }
  .contact h2 { letter-spacing: -3px; }
  .coming-soon { font-size: 8px; }
  .footer { grid-template-columns: 1fr; }
  .footer-brand > p { margin-left: 0; }
  .footer-socials { margin-left: 0; }
  .footer nav { gap: 0; }
  .footer nav a { display: flex; align-items: center; min-height: 44px; padding: 8px 0; }
  .footer-meta { grid-column: 1; }
  .page-hero { min-height: 600px; padding-top: 135px; }
  .page-hero h1 { font-size: clamp(45px,12vw,65px); letter-spacing: -3px; }
  .page-hero-contact h1 { font-size: clamp(38px,10vw,56px); letter-spacing: -2px; }
  .page-hero-code { display: none; }
  .page-intro-heading { display: block; }
  .process-step { grid-template-columns: 30px 1fr 20px; min-height: 120px; }
  .pathway-grid { grid-template-columns: 1fr; }
  .pathway-card { min-height: 290px; }
  .form-grid { grid-template-columns: 1fr; }
  .form-wide { grid-column: 1; }
  .form-section-title { grid-column: 1; }
  .check-grid { grid-template-columns: 1fr; }
  .site-form { padding: 25px 20px 30px; border-radius: 20px; box-shadow: 0 6px 0 var(--ink); }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* Data-driven next event and vendor lineup */
.event-countdown-bar {
  position: fixed;
  z-index: 140;
  inset: 0 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: clamp(18px, 3vw, 48px);
  min-height: 52px;
  padding: 6px clamp(20px, 4vw, 70px);
  color: var(--ink);
  background: var(--yellow);
  border-bottom: 2px solid var(--blue-dark);
  box-shadow: 0 8px 30px rgba(3,18,51,.2);
}
.countdown-event-link { display:flex; align-items:center; gap:14px; min-width:0; font-size:11px; }
.countdown-event-link > span { flex:0 0 auto; padding:5px 8px; border-radius:999px; color:var(--white); background:var(--blue); font-size:8px; font-weight:900; letter-spacing:1px; }
.countdown-event-link strong { overflow:hidden; font-family:var(--display); font-size:13px; text-overflow:ellipsis; white-space:nowrap; }
.countdown-event-link b { color:rgba(18,26,39,.68); font-size:10px; font-weight:700; white-space:nowrap; }
.countdown-clock { display:flex; align-items:center; gap:5px; }
.countdown-clock > span { display:flex; align-items:baseline; gap:2px; min-width:41px; color:rgba(18,26,39,.6); font-size:8px; font-weight:900; text-transform:uppercase; }
.countdown-clock strong { color:var(--blue-dark); font-family:var(--display); font-size:18px; line-height:1; }
.countdown-status { min-width:150px; color:var(--blue-dark); font-size:18px; letter-spacing:.8px; text-align:center; }
.countdown-live-actions { display:flex; align-items:center; gap:7px; }
.countdown-clock > span[hidden], .countdown-status[hidden], .countdown-live-actions[hidden] { display:none !important; }
.countdown-live-actions > a, .countdown-live-actions > button { display:inline-flex; align-items:center; justify-content:center; min-height:32px; padding:6px 11px; border:2px solid var(--blue-dark); border-radius:999px; color:var(--white); background:var(--blue-dark); font:900 8px/1 var(--sans); letter-spacing:.65px; text-transform:uppercase; white-space:nowrap; cursor:pointer; transition:.2s ease; }
.countdown-live-actions > a:hover, .countdown-live-actions > button:hover, .countdown-live-actions > a:focus-visible, .countdown-live-actions > button:focus-visible { color:var(--blue-dark); background:var(--white); transform:translateY(-1px); }
.event-countdown-bar.is-live .countdown-action { display:none; }
.event-countdown-bar.is-live .countdown-event-link > span { display:inline-flex; }
.event-countdown-bar.is-live .countdown-event-link b { display:block; color:var(--blue-dark); font-weight:900; }
.event-countdown-bar.is-live .countdown-status { animation:countdown-live-pulse 1.8s ease-in-out infinite; }
.event-countdown-bar.is-ended .countdown-status { color:rgba(18,26,39,.72); font-size:13px; }
@keyframes countdown-live-pulse { 50% { transform:scale(1.05); text-shadow:0 0 18px rgba(0,96,209,.32); } }
.countdown-coming { color:var(--blue-dark); font-size:9px; letter-spacing:1px; }
.countdown-action { display:inline-flex; align-items:center; gap:9px; color:var(--blue-dark); font-size:9px; font-weight:900; letter-spacing:1px; transition:.2s ease; }
.countdown-action:hover { color:var(--blue); text-shadow:0 0 15px rgba(0,96,209,.35); transform:translateX(3px); }
.has-event-bar .site-header { top:52px; }
.has-event-bar .flash-stack { top:147px; }
.has-event-bar .hero { padding-top:232px; }
.has-event-bar .platform-hero { padding-top:202px; }
.has-event-bar .event-detail-hero, .has-event-bar .vendor-public-hero { padding-top:212px; }
.has-event-bar .page-hero { padding-top:202px; }
.has-event-bar .admin-wrap { padding-top:52px; }
.has-event-bar .admin-sidebar { top:147px; height:calc(100vh - 147px); }

.hero-event-meta { display:grid; grid-template-columns:1fr; gap:9px; width:min(100%,460px); margin:26px 0 0; }
.hero-event-meta > div { padding:12px 15px; border-left:3px solid var(--yellow); background:rgba(7,27,62,.38); backdrop-filter:blur(7px); }
.hero-event-meta dt { color:var(--yellow); font-size:8px; font-weight:900; letter-spacing:1.2px; }
.hero-event-meta dd { margin:3px 0 0; overflow:hidden; font-size:12px; font-weight:800; text-overflow:ellipsis; white-space:nowrap; }
.hero-content .hero-brand-line { width:auto; white-space:normal; }
.event-card-actions, .event-detail-buttons { display:flex; flex-wrap:wrap; align-items:center; gap:15px; }
.event-apply-link { color:var(--blue); font-size:11px; font-weight:900; }
.featured .event-apply-link { color:var(--ink); }
.button-outline-light { border-color:rgba(255,255,255,.58); color:var(--white); background:transparent; box-shadow:none; }
.button-outline-light:hover { color:var(--ink); background:var(--white); box-shadow:0 0 25px rgba(255,255,255,.32); }
.application-status-card { grid-column:1/-1; border-color:var(--blue); background:#eef5ff; }
.application-status-card a { color:var(--blue); font-weight:900; }
.event-vendor-lineup { grid-column:1/-1; padding-top:45px; }
.event-vendor-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-top:35px; }
.event-vendor-card { display:flex; align-items:flex-start; gap:18px; min-width:0; padding:24px; border:2px solid var(--ink); border-radius:20px; background:var(--white); box-shadow:0 6px 0 var(--ink); transition:.25s ease; }
.event-vendor-card:hover { box-shadow:0 10px 0 var(--ink),0 20px 35px rgba(0,96,209,.16); transform:translateY(-4px); }
.event-vendor-card img, .vendor-card-mark { flex:0 0 70px; width:70px; height:70px; border:2px solid var(--ink); border-radius:50%; object-fit:cover; }
.vendor-card-mark { display:grid; color:var(--ink); background:var(--yellow); font-family:var(--display); font-size:34px; place-items:center; }
.event-vendor-card small { color:var(--blue); font-size:8px; font-weight:900; letter-spacing:1px; }
.event-vendor-card h3 { margin:4px 0; font-family:var(--display); font-size:20px; line-height:1; }
.event-vendor-card p { display:-webkit-box; overflow:hidden; margin:0; color:#677181; font-size:11px; -webkit-box-orient:vertical; -webkit-line-clamp:3; }
.event-vendor-card a { display:inline-block; margin-top:10px; color:var(--blue); font-size:10px; font-weight:900; }
.member-applications { margin-top:38px; padding-top:30px; border-top:1px solid var(--line); }
.member-application-row { display:grid; grid-template-columns:minmax(0,1fr) auto auto; align-items:center; gap:18px; padding:16px 0; border-top:1px solid var(--line); }
.member-application-row > div { display:grid; }.member-application-row > div span, .muted-copy { color:#6c7480; font-size:11px; }
.member-application-row > a, .member-applications .panel-heading > a { color:var(--blue); font-size:10px; font-weight:900; }
.status-closed, .status-rejected { color:var(--white); background:#a3232c; }
.application-review-grid { align-items:start; }
.application-answers dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 24px; margin:20px 0 30px; }
.application-answers dl div { padding:13px 0; border-bottom:1px solid var(--line); }
.application-answers dt { color:#697386; font-size:8px; font-weight:900; letter-spacing:1px; text-transform:uppercase; }
.application-answers dd { margin:4px 0 0; font-weight:700; overflow-wrap:anywhere; }
.application-answers h3 { margin:25px 0 5px; font-family:var(--display); }.application-answers p { color:#657080; white-space:pre-line; }
.application-decision { position:sticky; top:115px; }
.application-decision > h2 { margin:7px 0 12px; }.application-decision > p { color:#657080; font-size:12px; }
.admin-stat-grid { grid-template-columns:repeat(auto-fit,minmax(135px,1fr)); }

@media (max-width: 900px) {
  .countdown-event-link b, .countdown-action { display:none; }
  .event-vendor-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width: 560px) {
  .event-countdown-bar { grid-template-columns:minmax(0,1fr) auto; gap:10px; min-height:48px; padding:5px 13px; }
  .countdown-event-link { gap:8px; }.countdown-event-link > span { display:none; }.countdown-event-link strong { font-size:10px; }
  .countdown-clock { gap:2px; }.countdown-clock > span { min-width:30px; font-size:7px; }.countdown-clock strong { font-size:14px; }
  .countdown-live-actions { gap:4px; }
  .countdown-live-actions > a, .countdown-live-actions > button { min-height:29px; padding:5px 7px; font-size:6.5px; letter-spacing:.35px; }
  .event-countdown-bar.is-live .countdown-event-link { gap:5px; }
  .event-countdown-bar.is-live .countdown-event-link > span { padding:4px 5px; font-size:6px; letter-spacing:.5px; }
  .event-countdown-bar.is-live .countdown-event-link strong { flex:1; min-width:0; max-width:78px; }
  .event-countdown-bar.is-live .countdown-event-link b { font-size:7px; }
  .countdown-status { min-width:106px; font-size:14px; letter-spacing:.5px; }
  .event-countdown-bar.is-ended .countdown-status { font-size:10px; }
  .countdown-coming { font-size:7px; text-align:right; }
  .has-event-bar .site-header { top:48px; }
  .has-event-bar .flash-stack { top:132px; }
  .has-event-bar .hero { min-height:850px; padding-top:168px; }
  .has-event-bar .platform-hero { padding-top:178px; }
  .has-event-bar .event-detail-hero, .has-event-bar .vendor-public-hero { padding-top:188px; }
  .has-event-bar .page-hero { padding-top:183px; }
  .has-event-bar .admin-wrap { padding-top:48px; }
  .hero-event-meta { grid-template-columns:1fr; gap:8px; margin-top:18px; }
  .hero-event-meta > div { padding:8px 11px; }.hero-event-meta dd { font-size:10px; }
  .event-vendor-grid { grid-template-columns:1fr; }
  .event-vendor-card { padding:18px; }.event-vendor-card img, .vendor-card-mark { flex-basis:58px; width:58px; height:58px; }
  .event-detail-action { align-items:flex-start; }.event-detail-buttons { align-items:stretch; flex-direction:column; width:100%; }.event-detail-buttons .button { width:100%; }
  .member-application-row { grid-template-columns:1fr auto; }.member-application-row > a { grid-column:1/-1; }
  .application-answers dl { grid-template-columns:1fr; }.application-decision { position:static; }
}

/* Homepage collectible event cards */
.event-section-home {
  position: relative;
  overflow: hidden;
  background:var(--white);
}
.event-section-home::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .34;
  background-image: radial-gradient(circle, rgba(11,45,112,.25) 1px, transparent 1.5px);
  background-size: 34px 34px;
  pointer-events: none;
}
.event-section-home > * { position:relative; z-index:1; }
.event-section-home .event-intro { display:grid; grid-template-columns:1fr minmax(280px,520px); align-items:end; gap:40px; }
.event-section-home .event-intro h2 { margin-bottom:0; text-align:left; }
.event-intro-action { justify-self:end; max-width:500px; }
.event-intro-action > p { color:rgba(18,26,39,.67); font-size:14px; }
.event-view-all { width:max-content; color:var(--blue-dark); border-color:var(--blue); }
.event-view-all:hover { color:var(--blue); text-shadow:0 0 18px rgba(0,96,209,.25); }

.trading-card-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(28px,3vw,46px); margin:65px auto 0; }
.event-trading-card {
  display:block;
  min-height:0;
  padding:8px;
  overflow:visible;
  border:5px solid var(--blue-dark);
  border-radius:34px;
  color:var(--ink);
  background:linear-gradient(135deg,var(--yellow) 0 18%,var(--white) 18% 24%,var(--blue) 24% 76%,var(--white) 76% 82%,var(--yellow) 82%);
  box-shadow:0 0 0 4px var(--white),0 0 0 9px var(--yellow),0 0 0 14px var(--blue),0 14px 0 14px var(--ink),0 34px 60px rgba(7,27,62,.24);
  transform:translateY(0) rotate(0);
}
.event-trading-card::before {
  content:"✦";
  position:absolute;
  z-index:8;
  top:-25px;
  left:-23px;
  display:grid;
  width:49px;
  height:49px;
  border:4px solid var(--blue-dark);
  border-radius:50%;
  color:var(--blue-dark);
  background:var(--yellow);
  box-shadow:inset 0 0 0 4px var(--white),0 5px 0 var(--ink);
  font-size:18px;
  place-items:center;
}
.event-trading-card::after {
  content:"RARE";
  position:absolute;
  z-index:8;
  right:-17px;
  bottom:22px;
  padding:7px 12px;
  border:3px solid var(--blue-dark);
  border-radius:999px;
  color:var(--blue-dark);
  background:var(--yellow);
  box-shadow:inset 0 0 0 2px var(--white),3px 4px 0 var(--ink);
  font-size:7px;
  font-weight:900;
  letter-spacing:1.4px;
}
.event-trading-card:nth-child(2) { transform:translateY(14px) rotate(.7deg); }
.event-trading-card:nth-child(3) { transform:rotate(-.7deg); }
.event-trading-card:hover {
  box-shadow:0 0 0 4px var(--white),0 0 0 9px var(--yellow),0 0 0 14px var(--blue),0 20px 0 14px var(--ink),0 45px 75px rgba(0,96,209,.32);
  transform:translateY(-9px) rotate(0);
}
.event-card-frame { position:relative; height:100%; overflow:hidden; border:4px solid var(--yellow); border-radius:22px; outline:3px solid var(--white); background:var(--white); }
.event-card-frame::before { content:""; position:absolute; z-index:6; inset:5px; border:1px solid rgba(255,255,255,.82); border-radius:14px; pointer-events:none; }
.event-trading-card .event-tile-top { min-height:60px; padding:13px 16px; color:var(--white); background:linear-gradient(90deg,var(--blue-dark),var(--blue)); border-bottom:5px solid var(--yellow); }
.event-trading-card .event-chip { padding:7px 10px; border:2px solid var(--yellow); color:var(--ink); background:var(--yellow); font-size:8px; }
.event-trading-card .event-tile-top > strong { color:var(--yellow); font-size:14px; letter-spacing:1px; }
.event-card-art { position:relative; aspect-ratio:4 / 3; overflow:hidden; border:5px solid var(--white); border-inline-width:7px; border-bottom-color:var(--yellow); background:var(--blue-dark); box-shadow:inset 0 0 0 3px var(--blue); }
.event-card-art img { width:100%; height:100%; object-fit:cover; transition:transform .55s cubic-bezier(.2,.8,.2,1); }
.event-trading-card:hover .event-card-art img { transform:scale(1.055); }
.event-card-art-fallback {
  display:block;
}
.event-trading-card:nth-child(2) .event-card-art-fallback img { object-position:38% bottom; }
.event-trading-card:nth-child(3) .event-card-art-fallback img { object-position:72% bottom; }
.event-card-shine { position:absolute; inset:0; background:linear-gradient(118deg,transparent 20%,rgba(255,255,255,.4) 42%,rgba(255,201,31,.17) 49%,transparent 65%); mix-blend-mode:screen; opacity:.55; transform:translateX(-80%); transition:transform .7s ease; pointer-events:none; }
.event-trading-card:hover .event-card-shine { transform:translateX(80%); }
.event-trading-card .event-tile-body { display:flex; flex-direction:column; min-height:305px; padding:24px 22px 25px; color:var(--ink); background:var(--white); }
.event-trading-card .event-label { min-height:30px; margin-bottom:7px; color:var(--blue); font-size:8px; }
.event-trading-card .event-tile-body h3 { margin:0 0 14px; color:var(--ink); font-size:clamp(29px,2.6vw,42px); letter-spacing:-2px; }
.event-trading-card .event-tile-body > p:not(.event-label) { display:-webkit-box; min-height:62px; overflow:hidden; color:rgba(18,26,39,.68); -webkit-box-orient:vertical; -webkit-line-clamp:3; }
.event-trading-card .event-meta { grid-template-columns:1fr; gap:10px; margin:18px 0 22px; padding:14px 0; border-color:rgba(18,26,39,.2); }
.event-trading-card .event-meta div { grid-template-columns:58px 1fr; align-items:start; gap:8px; }
.event-trading-card .event-meta span { color:var(--blue); }
.event-trading-card .event-meta strong { overflow:hidden; color:var(--ink); text-overflow:ellipsis; white-space:nowrap; }
.event-trading-card .button { width:100%; margin-top:auto; }

@media (max-width:1100px) {
  .trading-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .event-trading-card:nth-child(2),.event-trading-card:nth-child(3) { transform:none; }
}
@media (max-width:720px) {
  .event-section-home .event-intro { grid-template-columns:1fr; gap:22px; }
  .event-intro-action { justify-self:start; }
  .trading-card-grid { grid-template-columns:1fr; width:min(100%,430px); margin-top:50px; }
  .event-trading-card { border-radius:27px; box-shadow:0 0 0 3px var(--white),0 0 0 7px var(--yellow),0 0 0 10px var(--blue),0 11px 0 10px var(--ink),0 28px 46px rgba(7,27,62,.2); }
  .event-trading-card:hover { box-shadow:0 0 0 3px var(--white),0 0 0 7px var(--yellow),0 0 0 10px var(--blue),0 15px 0 10px var(--ink),0 34px 55px rgba(0,96,209,.26); }
  .event-trading-card::before { top:-20px; left:-15px; width:42px; height:42px; }
  .event-trading-card::after { right:-9px; }
  .event-trading-card .event-tile-body { min-height:330px; }
}

/* Rare-card galaxy foil — colour surfaces only */
.event-trading-card {
  background-image:
    radial-gradient(circle at 18% 32%,rgba(255,255,255,.95) 0 1px,transparent 2px),
    radial-gradient(circle at 72% 62%,rgba(255,201,31,.9) 0 1px,transparent 2.2px),
    linear-gradient(24deg,transparent 0 48%,rgba(255,255,255,.22) 48.5% 49%,transparent 49.5%),
    linear-gradient(-17deg,transparent 0 58%,rgba(255,201,31,.18) 58.5% 59%,transparent 59.5%),
    linear-gradient(110deg,#071b3e 0%,#0b2d70 24%,#0060d1 50%,#0b2d70 76%,#071b3e 100%);
  background-size:82px 64px,105px 78px,150px 105px,180px 120px,220% 100%;
  background-blend-mode:screen,screen,screen,screen,normal;
  animation:rare-frame-flow 12s ease-in-out infinite,rare-card-aura 12s ease-in-out infinite;
}
.event-trading-card .event-tile-top {
  isolation:isolate;
  overflow:hidden;
  min-height:145px;
  align-items:flex-start;
  padding:20px 18px 17px;
  background:linear-gradient(110deg,#071b3e 0%,#0b2d70 24%,#0060d1 50%,#0b2d70 76%,#071b3e 100%);
  background-size:220% 100%;
  animation:rare-blue-flow 12s ease-in-out infinite;
}
.event-trading-card .event-tile-top::after {
  content:"";
  position:absolute;
  z-index:0;
  inset:-30%;
  opacity:.72;
  background-image:
    radial-gradient(circle at 14% 24%,#fff 0 1px,transparent 2px),
    radial-gradient(circle at 37% 67%,#ffc91f 0 1.4px,transparent 2.4px),
    radial-gradient(circle at 61% 22%,#fff 0 1px,transparent 2px),
    radial-gradient(circle at 83% 72%,#ffc91f 0 1px,transparent 2px),
    linear-gradient(28deg,transparent 0 46%,rgba(255,255,255,.2) 46.5% 47%,transparent 47.5%),
    linear-gradient(-19deg,transparent 0 57%,rgba(255,201,31,.18) 57.5% 58%,transparent 58.5%);
  background-size:110px 82px,140px 96px,170px 105px,125px 90px,190px 130px,220px 145px;
  animation:none;
}
.event-trading-card .event-tile-top > * { position:relative; z-index:2; }
.event-card-heading { display:grid; align-content:start; justify-items:start; gap:13px; max-width:calc(100% - 43px); }
.event-card-heading h3 { margin:0; color:var(--white); font-family:var(--display); font-size:clamp(25px,2.3vw,37px); font-weight:900; line-height:.92; letter-spacing:-1.5px; text-shadow:0 2px 0 rgba(7,27,62,.5),0 0 16px rgba(35,136,255,.48); }
.event-trading-card .event-chip {
  background:linear-gradient(110deg,#ffc91f,#fff3b1,#f4bd18,#ffc91f);
  background-size:220% 100%;
  box-shadow:0 0 10px rgba(255,201,31,.48);
  animation:rare-yellow-flow 12s ease-in-out infinite;
}
.event-trading-card::before {
  background:radial-gradient(circle at 35% 28%,#fff8cf,#ffc91f 35%,#f4bd18 72%);
  animation:rare-star-spark 12s ease-in-out infinite;
}
.event-trading-card::after {
  display:none;
}
.event-card-frame {
  border-color:transparent;
  background:
    linear-gradient(var(--white),var(--white)) padding-box,
    linear-gradient(125deg,#f4bd18 0%,#fff5bd 22%,#ffc91f 43%,#ffed8a 58%,#e9ad00 78%,#ffc91f 100%) border-box;
  background-size:100% 100%,260% 260%;
  animation:rare-gold-border-flow 12s ease-in-out infinite,rare-gold-border-pulse 12s ease-in-out infinite;
}
.event-card-shine { display:none; }
.event-trading-card .button-blue {
  background-image:
    radial-gradient(circle at 18% 35%,rgba(255,255,255,.9) 0 1px,transparent 2px),
    radial-gradient(circle at 74% 65%,rgba(255,201,31,.85) 0 1px,transparent 2px),
    linear-gradient(22deg,transparent 0 48%,rgba(255,255,255,.17) 48.5% 49%,transparent 49.5%),
    linear-gradient(110deg,#071b3e 0%,#0b2d70 24%,#0060d1 50%,#0b2d70 76%,#071b3e 100%);
  background-size:72px 54px,96px 66px,140px 92px,220% 100%;
  background-blend-mode:screen,screen,screen,normal;
  box-shadow:0 5px 0 var(--ink),0 0 13px rgba(0,96,209,.3);
  animation:rare-button-blue-flow 12s ease-in-out infinite;
}
.event-trading-card .button-blue:hover {
  box-shadow:0 8px 0 var(--ink),0 0 23px rgba(35,136,255,.6),0 0 10px rgba(255,201,31,.28);
}
@keyframes rare-frame-flow {
  0%,100% { background-position:0 0,0 0,0 0,0 0,0% 50%; }
  50% { background-position:0 0,0 0,0 0,0 0,100% 50%; }
}
@keyframes rare-blue-flow {
  0%,100% { background-position:0% 50%; }
  50% { background-position:100% 50%; }
}
@keyframes rare-button-blue-flow {
  0%,100% { background-position:0 0,0 0,0 0,0% 50%; }
  50% { background-position:0 0,0 0,0 0,100% 50%; }
}
@keyframes rare-yellow-flow {
  0%,100% { background-position:0% 50%; }
  50% { background-position:100% 50%; }
}
@keyframes rare-card-aura {
  0%,100% { filter:drop-shadow(0 0 5px rgba(0,96,209,.28)) drop-shadow(0 0 2px rgba(255,201,31,.22)); }
  50% { filter:drop-shadow(0 0 11px rgba(0,96,209,.48)) drop-shadow(0 0 7px rgba(255,201,31,.38)); }
}
@keyframes rare-constellation-drift {
  0%,100% { transform:translate3d(-3%,0,0) rotate(0deg); }
  50% { transform:translate3d(7%,3%,0) rotate(2deg); }
}
@keyframes rare-star-spark {
  0%,100% { color:var(--blue-dark); box-shadow:inset 0 0 0 4px var(--white),0 5px 0 var(--ink),0 0 7px rgba(255,201,31,.35); }
  50% { color:var(--blue); box-shadow:inset 0 0 0 4px var(--white),0 5px 0 var(--ink),0 0 20px rgba(255,201,31,.8),0 0 9px rgba(35,136,255,.5); }
}
@keyframes rare-badge-glow {
  0%,100% { box-shadow:inset 0 0 0 2px var(--white),3px 4px 0 var(--ink),0 0 5px rgba(255,201,31,.25); }
  50% { box-shadow:inset 0 0 0 2px var(--white),3px 4px 0 var(--ink),0 0 16px rgba(255,201,31,.72); }
}
@keyframes rare-gold-border-flow {
  0%,100% { background-position:0 0,0% 50%; }
  50% { background-position:0 0,100% 50%; }
}
@keyframes rare-gold-border-pulse {
  0%,100% { box-shadow:0 0 8px rgba(255,201,31,.26),inset 0 0 5px rgba(255,201,31,.14); }
  50% { box-shadow:0 0 24px rgba(255,201,31,.74),0 0 9px rgba(255,238,143,.65),inset 0 0 11px rgba(255,201,31,.28); }
}
@media (max-width:720px) {
  .event-card-heading h3 { font-size:29px; }
  .event-trading-card .event-tile-top { min-height:140px; }
  .event-trading-card .event-tile-body { min-height:300px; }
}

/* One continuous foil loop shared by every card surface */
.event-trading-card,
.event-trading-card .event-tile-top,
.event-trading-card .button-blue {
  background-image:
    radial-gradient(circle at 18% 32%,rgba(255,255,255,.95) 0 1px,transparent 2px),
    radial-gradient(circle at 72% 62%,rgba(255,201,31,.9) 0 1px,transparent 2.2px),
    linear-gradient(24deg,transparent 0 48%,rgba(255,255,255,.2) 48.5% 49%,transparent 49.5%),
    linear-gradient(-17deg,transparent 0 58%,rgba(255,201,31,.16) 58.5% 59%,transparent 59.5%),
    repeating-linear-gradient(110deg,#071b3e 0,#0b2d70 80px,#0060d1 160px,#0b2d70 240px,#071b3e 320px);
  background-size:82px 64px,105px 78px,150px 105px,180px 120px,320px 320px;
  background-repeat:repeat;
  background-blend-mode:screen,screen,screen,screen,normal;
}
.event-trading-card { animation:galaxy-foil-loop 20s linear infinite,rare-card-aura 20s ease-in-out infinite; }
.event-trading-card .event-tile-top,
.event-trading-card .button-blue { animation:galaxy-foil-loop 20s linear infinite; }
.event-trading-card .event-tile-top::after { display:none; }
.event-trading-card .event-chip {
  background:repeating-linear-gradient(105deg,#f4bd18 0,#fff4b5 60px,#ffc91f 120px,#e9ad00 180px,#f4bd18 240px);
  background-size:240px 100%;
  animation:gold-chip-loop 20s linear infinite;
}
.event-trading-card::before { animation:rare-star-spark 20s ease-in-out infinite; }
.event-card-frame {
  background:
    linear-gradient(var(--white),var(--white)) padding-box,
    repeating-linear-gradient(125deg,#f4bd18 0,#fff5bd 70px,#ffc91f 140px,#e9ad00 210px,#f4bd18 280px) border-box;
  background-size:100% 100%,280px 280px;
  background-repeat:no-repeat,repeat;
  animation:gold-frame-loop 20s linear infinite,rare-gold-border-pulse 20s ease-in-out infinite;
}
@keyframes galaxy-foil-loop {
  from { background-position:0 0,0 0,0 0,0 0,0 0; }
  to { background-position:82px 64px,-105px 78px,150px 105px,-180px 120px,320px 320px; }
}
@keyframes gold-chip-loop {
  from { background-position:0 0; }
  to { background-position:240px 0; }
}
@keyframes gold-frame-loop {
  from { background-position:0 0,0 0; }
  to { background-position:0 0,280px 280px; }
}

/* Seam-free card finish: gradients never tile; constellations are drawn as connected geometry. */
.event-trading-card {
  padding:6px;
  border:4px solid var(--blue-dark);
  background:#0b2d70 linear-gradient(135deg,#071b3e 0%,#0060d1 48%,#0b2d70 100%);
  background-repeat:no-repeat;
  box-shadow:0 0 0 4px var(--yellow),0 12px 0 4px var(--ink),0 30px 52px rgba(7,27,62,.22);
  animation:clean-card-aura 9s ease-in-out infinite;
}
.event-trading-card:hover {
  box-shadow:0 0 0 4px var(--yellow),0 17px 0 4px var(--ink),0 38px 62px rgba(0,96,209,.27);
}
.event-card-frame {
  border:3px solid var(--white);
  outline:0;
  background:var(--white);
  animation:clean-gold-glow 9s ease-in-out infinite;
}
.event-card-frame::before { display:none; }
.event-card-art { border:0; border-bottom:4px solid var(--yellow); box-shadow:none; }
.event-trading-card .event-tile-top,
.event-trading-card .button-blue {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:#0b2d70 radial-gradient(circle at 55% 120%,#0060d1 0%,#0060d1 27%,#0b2d70 67%,#071b3e 100%);
  background-repeat:no-repeat;
  background-size:100% 100%;
  animation:clean-blue-breathe 9s ease-in-out infinite;
}
.event-trading-card .event-tile-top::after { display:none; }
.event-trading-card .event-chip {
  background:linear-gradient(115deg,#f4bd18 0%,#fff0a0 48%,#ffc91f 100%);
  background-repeat:no-repeat;
  background-size:100% 100%;
  animation:clean-chip-glow 9s ease-in-out infinite;
}
.event-trading-card::before { animation:clean-chip-glow 9s ease-in-out infinite; }
.event-trading-card .button-blue > span { position:relative; z-index:2; }
.galaxy-canvas {
  position:absolute !important;
  z-index:0 !important;
  inset:0;
  width:100%;
  height:100%;
  opacity:.78;
  pointer-events:none;
}
@keyframes clean-card-aura {
  0%,100% { filter:drop-shadow(0 0 5px rgba(0,96,209,.25)); }
  50% { filter:drop-shadow(0 0 13px rgba(35,136,255,.48)); }
}
@keyframes clean-gold-glow {
  0%,100% { box-shadow:0 0 0 3px var(--yellow),0 0 8px rgba(255,201,31,.28); }
  50% { box-shadow:0 0 0 3px var(--yellow),0 0 20px rgba(255,201,31,.72),0 0 7px rgba(255,240,166,.5); }
}
@keyframes clean-blue-breathe {
  0%,100% { box-shadow:inset 0 0 28px rgba(7,27,62,.18); }
  50% { box-shadow:inset 0 0 42px rgba(35,136,255,.2); }
}
@keyframes clean-chip-glow {
  0%,100% { box-shadow:0 0 7px rgba(255,201,31,.3); }
  50% { box-shadow:0 0 17px rgba(255,201,31,.72); }
}
@media (max-width:720px) {
  .event-trading-card { box-shadow:0 0 0 3px var(--yellow),0 10px 0 3px var(--ink),0 25px 42px rgba(7,27,62,.2); }
  .event-trading-card:hover { box-shadow:0 0 0 3px var(--yellow),0 14px 0 3px var(--ink),0 30px 48px rgba(0,96,209,.24); }
}

/* Compact mobile menu below the fixed event bar and header */
@media (max-width:820px) {
  .mobile-menu {
    inset:78px 0 0;
    align-content:start;
    height:calc(100vh - 78px);
    height:calc(100dvh - 78px);
    padding:12px 20px 22px;
    overflow-y:auto;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
  }
  .has-event-bar .mobile-menu {
    inset:126px 0 0;
    height:calc(100vh - 126px);
    height:calc(100dvh - 126px);
  }
  .mobile-menu .menu-kicker { margin:0 0 3px; font-size:8px; letter-spacing:1.5px; }
  .mobile-menu nav { margin:0; }
  .mobile-menu nav a {
    grid-template-columns:30px minmax(0,1fr) 15px;
    min-height:44px;
    padding:5px 0;
    font-size:clamp(20px,5.6vw,28px);
    line-height:1;
    letter-spacing:-.5px;
  }
  .mobile-menu nav span { font-size:8px; }
  .mobile-menu nav b { font-size:12px; }
  .mobile-menu > p { display:none; }
}
@media (max-width:820px) and (max-height:700px) {
  .mobile-menu { padding-top:7px; padding-bottom:12px; }
  .mobile-menu .menu-kicker { display:none; }
  .mobile-menu nav a { min-height:39px; padding:3px 0; font-size:clamp(18px,5vw,23px); }
}

/* Events catalogue and individual event cards */
.event-card-catalogue {
  width:100%;
  max-width:none;
  padding:80px max(28px,5vw) 115px;
  background:var(--white);
}
.event-page-card-grid { margin-top:0; }
.event-page-card-grid .event-tile-body { min-height:385px; }
.event-page-card-grid .event-meta { margin-top:auto; }
.event-card-vendor-link {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  margin:17px auto 0;
  transition:color .2s ease,text-shadow .2s ease,transform .2s ease;
}
.event-card-vendor-link:hover {
  color:var(--blue-dark);
  text-shadow:0 0 15px rgba(0,96,209,.38);
  transform:translateY(-2px);
}

.event-detail-card-stage {
  position:relative;
  overflow:hidden;
  padding:175px max(28px,5vw) 105px;
  background:var(--white);
}
.has-event-bar .event-detail-card-stage { padding-top:227px; }
.event-detail-card-stage::before {
  content:"";
  position:absolute;
  inset:0;
  opacity:.28;
  background-image:radial-gradient(circle,rgba(11,45,112,.28) 1px,transparent 1.5px);
  background-size:38px 38px;
  pointer-events:none;
}
.event-detail-trading-card {
  position:relative;
  z-index:1;
  width:min(1120px,100%);
  margin:0 auto;
  padding:8px;
  border:5px solid var(--blue-dark);
  border-radius:42px;
  background:#0b2d70 linear-gradient(135deg,#071b3e 0%,#0060d1 48%,#0b2d70 100%);
  background-repeat:no-repeat;
  box-shadow:0 0 0 5px var(--yellow),0 17px 0 5px var(--ink),0 42px 75px rgba(7,27,62,.27);
  animation:event-detail-card-aura 9s ease-in-out infinite;
}
.event-detail-trading-card::before {
  content:"\2726";
  position:absolute;
  z-index:8;
  top:-29px;
  left:-27px;
  display:grid;
  width:58px;
  height:58px;
  border:4px solid var(--blue-dark);
  border-radius:50%;
  color:var(--blue-dark);
  background:var(--yellow);
  box-shadow:inset 0 0 0 4px var(--white),0 6px 0 var(--ink),0 0 18px rgba(255,201,31,.55);
  font-size:22px;
  place-items:center;
  animation:clean-chip-glow 9s ease-in-out infinite;
}
.event-detail-card-frame {
  overflow:hidden;
  border:4px solid var(--white);
  border-radius:29px;
  background:var(--white);
  box-shadow:0 0 0 3px var(--yellow),0 0 20px rgba(255,201,31,.55);
  animation:clean-gold-glow 9s ease-in-out infinite;
}
.event-detail-card-header {
  position:relative;
  isolation:isolate;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:35px;
  min-height:285px;
  padding:45px 48px 38px;
  overflow:hidden;
  color:var(--white);
  border-bottom:6px solid var(--yellow);
  background:#0b2d70 radial-gradient(circle at 55% 120%,#0060d1 0%,#0060d1 27%,#0b2d70 67%,#071b3e 100%);
  background-repeat:no-repeat;
  animation:clean-blue-breathe 9s ease-in-out infinite;
}
.event-detail-card-header > * { position:relative; z-index:2; }
.event-detail-card-header > strong {
  flex:0 0 auto;
  color:var(--yellow);
  font-size:11px;
  letter-spacing:2px;
  writing-mode:vertical-rl;
}
.event-detail-card-heading { display:grid; justify-items:start; max-width:930px; }
.event-detail-card-heading > p {
  margin:0 0 15px;
  color:var(--yellow);
  font-size:9px;
  font-weight:900;
  letter-spacing:2px;
  text-transform:uppercase;
}
.event-detail-card-heading h1 {
  margin:0;
  max-width:100%;
  color:var(--white);
  font-family:var(--display);
  font-size:clamp(54px,8vw,110px);
  font-weight:900;
  line-height:.84;
  letter-spacing:-5px;
  overflow-wrap:anywhere;
  text-shadow:0 3px 0 rgba(7,27,62,.5),0 0 24px rgba(35,136,255,.5);
}
.event-detail-card-heading .event-chip {
  position:static;
  margin:0 0 24px;
  padding:9px 14px;
  border:2px solid var(--yellow);
  border-radius:999px;
  color:var(--ink);
  background:linear-gradient(115deg,#f4bd18 0%,#fff0a0 48%,#ffc91f 100%);
  font-size:8px;
  font-weight:900;
  letter-spacing:1.2px;
  animation:clean-chip-glow 9s ease-in-out infinite;
}
.event-detail-card-art {
  position:relative;
  height:clamp(330px,53vw,650px);
  overflow:hidden;
  border-bottom:6px solid var(--yellow);
  background:var(--blue-dark);
}
.event-detail-card-art img { width:100%; height:100%; object-fit:cover; }
.event-detail-card-copy { padding:clamp(32px,5vw,68px); color:var(--ink); background:var(--white); }
.event-detail-lead {
  max-width:850px;
  margin:0;
  color:rgba(18,26,39,.72);
  font-size:clamp(18px,2.2vw,27px);
  line-height:1.55;
}
.event-detail-card-meta {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  margin:42px 0 38px;
  border-block:1px solid rgba(18,26,39,.2);
}
.event-detail-card-meta > div { min-width:0; padding:23px 27px; border-left:1px solid rgba(18,26,39,.2); }
.event-detail-card-meta > div:first-child { padding-left:0; border-left:0; }
.event-detail-card-meta dt { color:var(--blue); font-size:9px; font-weight:900; letter-spacing:1.5px; }
.event-detail-card-meta dd { margin:7px 0 0; font-size:15px; font-weight:900; line-height:1.35; }
.event-detail-card-meta dd small { display:block; margin-top:5px; color:rgba(18,26,39,.58); font-size:11px; font-weight:700; }
.event-detail-card-actions { display:flex; flex-wrap:wrap; gap:18px; }
.event-detail-card-actions .button { min-width:min(100%,270px); }
.floor-map-meta-button {
  appearance:none;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  width:100%;
  min-width:0;
  padding:0;
  color:inherit;
  border:0;
  background:none;
  font:inherit;
  text-align:left;
  cursor:pointer;
}
.floor-map-meta-button strong { display:flex; align-items:center; gap:8px; color:var(--blue); font-family:var(--display); }
.floor-map-meta-button i { flex:0 0 auto; color:var(--blue); font-style:normal; }
.floor-map-meta-button:hover strong { color:var(--blue-dark); }
.floor-map-meta-button:focus-visible { outline:3px solid var(--yellow); outline-offset:5px; border-radius:3px; }
.event-detail-floor-map .floor-map-meta-button { align-items:flex-start; flex-direction:column; gap:2px; }
.event-detail-floor-map .floor-map-meta-button strong { font-size:22px; line-height:1; }
.event-detail-floor-map .floor-map-meta-button strong span { color:var(--blue); font-family:var(--body); font-size:17px; }
.event-detail-floor-map .floor-map-meta-button small { margin-top:4px; }
.event-trading-card .floor-map-meta-button { justify-content:flex-start; gap:7px; }
.event-trading-card .floor-map-meta-button strong { color:var(--ink); font-family:var(--body); font-size:12px; font-weight:900; }
.event-trading-card .floor-map-meta-button:hover strong { color:var(--blue); }
.event-detail-card-actions .button-blue,
.event-detail-support .platform-empty .button-blue {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:#0b2d70 radial-gradient(circle at 55% 120%,#0060d1 0%,#0060d1 27%,#0b2d70 67%,#071b3e 100%);
  background-repeat:no-repeat;
  animation:clean-blue-breathe 9s ease-in-out infinite;
}
.event-detail-card-actions .button-blue > span,
.event-detail-support .platform-empty .button-blue > span { position:relative; z-index:2; }

.event-detail-support { display:grid; gap:30px; padding-top:85px; }
.event-detail-support .application-status-card { width:100%; }
.event-detail-support .event-vendor-lineup { padding-top:25px; }

@keyframes event-detail-card-aura {
  0%,100% { filter:drop-shadow(0 0 6px rgba(0,96,209,.25)); }
  50% { filter:drop-shadow(0 0 17px rgba(35,136,255,.5)); }
}

@media (max-width:820px) {
  .event-card-catalogue { padding:65px 22px 95px; }
  .event-page-card-grid .event-tile-body { min-height:375px; }
  .event-detail-card-stage { padding:135px 22px 80px; }
  .has-event-bar .event-detail-card-stage { padding-top:183px; }
  .event-detail-trading-card {
    padding:6px;
    border-width:4px;
    border-radius:31px;
    box-shadow:0 0 0 3px var(--yellow),0 12px 0 3px var(--ink),0 30px 50px rgba(7,27,62,.24);
  }
  .event-detail-trading-card::before { top:-21px; left:-16px; width:45px; height:45px; font-size:17px; }
  .event-detail-card-frame { border-width:3px; border-radius:21px; }
  .event-detail-card-header { min-height:225px; padding:30px 25px 26px; border-bottom-width:5px; }
  .event-detail-card-header > strong { display:none; }
  .event-detail-card-heading h1 { font-size:clamp(43px,13vw,72px); line-height:.88; letter-spacing:-3px; }
  .event-detail-card-heading .event-chip { margin:0 0 18px; }
  .event-detail-card-art { height:clamp(260px,75vw,480px); border-bottom-width:5px; }
  .event-detail-card-copy { padding:31px 24px 36px; }
  .event-detail-lead { font-size:17px; }
  .event-detail-card-meta { grid-template-columns:1fr; margin:30px 0; }
  .event-detail-card-meta > div,.event-detail-card-meta > div:first-child { padding:17px 0; border-left:0; border-top:1px solid rgba(18,26,39,.16); }
  .event-detail-card-meta > div:first-child { border-top:0; }
  .event-detail-card-actions { display:grid; grid-template-columns:1fr; }
  .event-detail-card-actions .button { width:100%; min-width:0; }
  .event-detail-support { padding-top:65px; }
}

/* The event card page begins on cream, so its fixed navigation needs its own blue surface. */
.event-detail-page .site-header {
  background:#0060d1;
  box-shadow:0 1px 0 rgba(255,255,255,.18),0 10px 28px rgba(7,27,62,.16);
}
.event-detail-page .site-header.is-scrolled {
  background:#0060d1;
}

/* Shared gold-foil edging for every event card size. */
@property --event-gold-angle {
  syntax:"<angle>";
  inherits:false;
  initial-value:115deg;
}
.event-trading-card,
.event-detail-trading-card {
  isolation:isolate;
}
.event-trading-card::after,
.event-detail-trading-card::after {
  content:"";
  position:absolute;
  z-index:-1;
  inset:-10px;
  display:block;
  padding:5px;
  border-radius:40px;
  background:conic-gradient(
    from var(--event-gold-angle),
    #b87900 0deg,
    #ffc91f 58deg,
    #fff4b8 112deg,
    #e6a900 178deg,
    #fff0a0 235deg,
    #ffc928 302deg,
    #b87900 360deg
  );
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  mask-composite:exclude;
  pointer-events:none;
  animation:event-gold-turn 18s linear infinite,event-gold-outer-glow 4.5s ease-in-out infinite;
}
.event-detail-trading-card::after {
  inset:-11px;
  padding:6px;
  border-radius:49px;
}
.event-trading-card,
.event-trading-card:hover {
  box-shadow:0 12px 0 4px var(--ink),0 30px 58px rgba(7,27,62,.25);
}
.event-trading-card:hover {
  box-shadow:0 17px 0 4px var(--ink),0 39px 68px rgba(0,96,209,.3);
}
.event-detail-trading-card {
  box-shadow:0 17px 0 5px var(--ink),0 42px 75px rgba(7,27,62,.27);
}
.event-card-frame,
.event-detail-card-frame {
  border-color:transparent;
  background:
    linear-gradient(var(--white),var(--white)) padding-box,
    conic-gradient(
      from var(--event-gold-angle),
      #c48600,
      #ffc91f,
      #fff6c7,
      #e5a500,
      #fff0a0,
      #ffc928,
      #c48600
    ) border-box;
  background-repeat:no-repeat;
  animation:event-gold-turn 18s linear infinite,clean-gold-glow 4.5s ease-in-out infinite;
}
.event-trading-card .event-tile-top,
.event-card-art,
.event-detail-card-header,
.event-detail-card-art {
  border-image:linear-gradient(90deg,#bf7e00 0%,#ffc91f 24%,#fff4b7 50%,#e5a500 76%,#ffc91f 100%) 1;
}
@keyframes event-gold-turn {
  to { --event-gold-angle:475deg; }
}
@keyframes event-gold-outer-glow {
  0%,100% { filter:drop-shadow(0 0 5px rgba(255,196,20,.42)) drop-shadow(0 0 2px rgba(255,244,184,.25)); }
  50% { filter:drop-shadow(0 0 14px rgba(255,201,31,.8)) drop-shadow(0 0 7px rgba(255,244,184,.6)); }
}
@media (max-width:820px) {
  .event-trading-card,
  .event-trading-card:hover { box-shadow:0 11px 0 3px var(--ink),0 28px 48px rgba(7,27,62,.24); }
  .event-detail-trading-card { box-shadow:0 12px 0 3px var(--ink),0 30px 50px rgba(7,27,62,.24); }
  .event-trading-card::after { inset:-7px; padding:4px; border-radius:33px; }
  .event-detail-trading-card::after { inset:-8px; padding:4px; border-radius:37px; }
}
@media (prefers-reduced-motion:reduce) {
  .event-trading-card::after,
  .event-detail-trading-card::after,
  .event-card-frame,
  .event-detail-card-frame { animation:none; }
}

/* Humanitix-ready ticket count placeholders */
.hero-ticket-status { grid-column:1/-1; }
.hero-map-button { cursor:pointer; }
.hero-ticket-status dd {
  display:flex;
  align-items:center;
  gap:10px;
  white-space:normal;
}
.hero-ticket-status dd strong {
  color:var(--yellow);
  font-family:var(--display);
  font-size:22px;
  line-height:1;
}
.hero-ticket-status dd span {
  color:var(--white);
  font-size:9px;
  font-weight:900;
  letter-spacing:1.2px;
}
.ticket-meta { position:relative; }
.ticket-status-value {
  display:flex;
  align-items:center;
  gap:8px;
  overflow:visible !important;
  white-space:normal !important;
  line-height:1.3;
}
.ticket-status-value::before,
.event-detail-ticket-status dt::before {
  content:"";
  flex:0 0 auto;
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--yellow);
  box-shadow:0 0 0 3px rgba(255,201,31,.18),0 0 12px rgba(255,201,31,.78);
  animation:ticket-status-pulse 2.3s ease-in-out infinite;
}
.ticket-status-value b {
  color:var(--blue);
  font-family:var(--display);
  font-size:18px;
  line-height:1;
}
.event-detail-card-meta { grid-template-columns:repeat(4,minmax(0,1fr)); }
.event-detail-ticket-status dt { display:flex; align-items:center; gap:8px; }
.event-detail-ticket-status dd b {
  color:var(--blue);
  font-family:var(--display);
  font-size:24px;
}
@keyframes ticket-status-pulse {
  0%,100% { opacity:.62; transform:scale(.82); }
  50% { opacity:1; transform:scale(1.12); }
}
@media (max-width:980px) and (min-width:821px) {
  .event-detail-card-meta { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .event-detail-card-meta > div:nth-child(3) { padding-left:0; border-left:0; }
}
@media (max-width:820px) {
  .event-page-card-grid .event-tile-body { min-height:415px; }
  .event-detail-card-meta { grid-template-columns:1fr; }
}
@media (prefers-reduced-motion:reduce) {
  .ticket-status-value::before,
  .event-detail-ticket-status dt::before { animation:none; }
}

/* Primary member access at the top of the mobile menu */
.mobile-account-button {
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  min-height:48px;
  margin:7px 0 9px;
  padding:9px 14px;
  border:2px solid var(--yellow);
  border-radius:15px;
  color:var(--ink);
  background:linear-gradient(115deg,#f2b900 0%,#ffc91f 48%,#fff0a0 100%);
  box-shadow:0 5px 0 rgba(3,18,51,.75),0 0 18px rgba(255,201,31,.28);
  transition:transform .22s ease,box-shadow .22s ease;
}
.mobile-account-button > span {
  padding:5px 7px;
  border-radius:999px;
  color:var(--white);
  background:var(--blue-dark);
  font-size:7px;
  font-weight:900;
  letter-spacing:.8px;
}
.mobile-account-button strong { font-size:11px; font-weight:900; letter-spacing:.8px; }
.mobile-account-button > b { color:var(--blue-dark); font-size:16px; }
.mobile-account-button:hover,
.mobile-account-button:focus-visible {
  box-shadow:0 8px 0 rgba(3,18,51,.8),0 0 27px rgba(255,201,31,.5);
  transform:translateY(-3px);
}
.mobile-menu nav a:nth-child(4) { display:none; }

/* Every inner page keeps a readable blue navigation surface. */
.inner-page .site-header {
  background:#0060d1;
  box-shadow:0 1px 0 rgba(255,255,255,.18),0 10px 28px rgba(7,27,62,.16);
}
.inner-page .site-header.is-scrolled { background:#0060d1; }

/* Compact admin control centre for phones and tablets. */
@media (max-width:850px) {
  .admin-wrap {
    display:block;
    min-height:100vh;
    padding-top:78px;
    background:#edf2f9;
  }
  .has-event-bar .admin-wrap { padding-top:132px; }
  .admin-sidebar,
  .has-event-bar .admin-sidebar {
    position:sticky;
    z-index:35;
    top:78px;
    display:block;
    width:100%;
    height:auto;
    padding:10px 13px 12px;
    border-bottom:3px solid var(--yellow);
    background:var(--blue-dark);
    box-shadow:0 10px 24px rgba(7,27,62,.2);
  }
  .has-event-bar .admin-sidebar { top:132px; height:auto; }
  .admin-sidebar > div,
  .admin-sidebar .admin-back { display:none; }
  .admin-sidebar nav {
    display:flex;
    align-items:center;
    gap:8px;
    width:100%;
    overflow-x:auto;
    overscroll-behavior-x:contain;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }
  .admin-sidebar nav::-webkit-scrollbar { display:none; }
  .admin-sidebar nav a {
    flex:0 0 auto;
    justify-content:center;
    min-height:40px;
    padding:9px 14px;
    border:1px solid rgba(255,255,255,.2);
    border-radius:10px;
    color:rgba(255,255,255,.82);
    background:rgba(255,255,255,.06);
    font-size:10px;
    text-align:center;
    white-space:nowrap;
  }
  .admin-sidebar nav a:hover,
  .admin-sidebar nav a.active { transform:none; }
  .admin-sidebar nav a span { display:none; }
  .admin-main { padding:30px 18px 72px; }
  .admin-heading { margin-bottom:26px; }
  .admin-heading h1 {
    font-size:clamp(38px,11vw,52px);
    line-height:.9;
    letter-spacing:-2.5px;
  }
  .admin-heading > .button { width:100%; }
  .admin-stat-grid { gap:11px; margin-bottom:22px; }
  .admin-stat-grid article { min-height:118px; padding:15px; border-radius:15px; }
  .admin-stat-grid article strong { font-size:36px; }
  .admin-card { padding:20px 17px; border-radius:18px; }
  .admin-two-column { gap:18px; }
  .panel-heading { flex-wrap:wrap; gap:10px; }
  .admin-list > a { gap:10px; }
  .admin-content-grid,.admin-gallery-grid { gap:16px; }
  .admin-record-card { min-height:250px; padding:20px; }
  .admin-filters .button { width:100%; }
  .table-card { max-width:100%; }
  .admin-table-wrap { width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch; }
  .admin-table th,.admin-table td { padding:14px 15px; }
  .media-upload-form { gap:18px; }
  .upload-drop { min-height:210px; }
}
@media (max-width:480px) {
  .admin-main { padding-inline:13px; }
  .admin-stat-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .admin-stat-grid article { min-width:0; }
  .admin-stat-grid article strong { font-size:32px; }
  .admin-card { padding:18px 14px; }
  .media-library-grid { grid-template-columns:1fr; }
  .danger-zone,.form-divider { width:100%; }
}

/* Footer partners and Acknowledgement of Country */
.footer { grid-template-columns:1.15fr .55fr .85fr .55fr; }
.footer-partners > small,
.footer-acknowledgement > small {
  color:var(--yellow);
  font-size:8px;
  font-weight:900;
  letter-spacing:1.5px;
}
.footer-partners > div { display:grid; gap:9px; margin-top:15px; }
.footer-partners a {
  display:grid;
  gap:2px;
  padding:12px 14px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:11px;
  background:rgba(255,255,255,.04);
  transition:border-color .22s ease,background .22s ease,box-shadow .22s ease,transform .22s ease;
}
.footer-partners a strong { font-family:var(--display); font-size:13px; letter-spacing:.2px; }
.footer-partners a span { color:rgba(255,255,255,.43); font-size:7px; font-weight:800; letter-spacing:1px; }
.footer-partners a:hover,
.footer-partners a:focus-visible {
  color:var(--ink);
  border-color:var(--yellow);
  background:var(--yellow);
  box-shadow:0 0 24px rgba(255,201,31,.4);
  transform:translateX(4px);
}
.footer-partners a:hover span,
.footer-partners a:focus-visible span { color:rgba(18,26,39,.62); }
.footer-acknowledgement {
  grid-column:1/-1;
  display:grid;
  grid-template-columns:220px minmax(0,820px);
  gap:30px;
  margin-top:18px;
  padding-top:28px;
  border-top:1px solid rgba(255,255,255,.14);
}
.footer-acknowledgement p {
  margin:0;
  color:rgba(255,255,255,.56);
  font-size:11px;
  line-height:1.7;
}
@media (max-width:1120px) {
  .footer { grid-template-columns:1fr 1fr; }
  .footer-partners { align-self:start; }
  .footer-meta { grid-column:auto; }
  .footer-acknowledgement { grid-template-columns:190px minmax(0,1fr); }
}
@media (max-width:720px) {
  .footer { grid-template-columns:1fr; }
  .footer-partners { padding-top:24px; border-top:1px solid rgba(255,255,255,.12); }
  .footer-meta { grid-column:1; padding-top:20px; border-top:1px solid rgba(255,255,255,.12); }
  .footer-acknowledgement { grid-template-columns:1fr; gap:12px; margin-top:5px; }
}

/* Compact, centred mobile footer */
@media (max-width:720px) {
  .footer {
    gap:28px;
    padding:48px 20px 30px;
    text-align:center;
  }
  .footer-brand { display:grid; justify-items:center; }
  .footer .brand-footer { margin-inline:auto; }
  .footer-brand > p { margin:18px auto 0; }
  .footer-socials { justify-content:center; margin:18px auto 0; }
  .footer nav {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px;
    width:min(100%,390px);
    margin-inline:auto;
  }
  .footer nav a {
    justify-content:center;
    width:100%;
    min-height:38px;
    padding:7px 9px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:9px;
    background:rgba(255,255,255,.035);
    font-size:10px;
    text-align:center;
  }
  .footer nav a:hover,
  .footer nav a:focus-visible { transform:translateY(-2px); }
  .footer-partners {
    width:min(100%,390px);
    margin-inline:auto;
    padding-top:22px;
  }
  .footer-partners a { text-align:center; }
  .footer-partners a:hover,
  .footer-partners a:focus-visible { transform:translateY(-2px); }
  .footer-meta { width:min(100%,390px); margin-inline:auto; text-align:center; }
  .footer-acknowledgement {
    justify-items:center;
    width:min(100%,560px);
    margin-inline:auto;
    text-align:center;
  }
  .footer-acknowledgement p { max-width:500px; }
}

/* About and FAQ pages */
.page-hero-about {
  background:
    linear-gradient(90deg,rgba(7,27,62,.98),rgba(11,45,112,.76)),
    radial-gradient(circle at 78% 34%,#0060d1 0%,#0060d1 22%,#0b2d70 58%,#071b3e 100%);
}
.page-hero-faq {
  background:
    radial-gradient(circle at 82% 28%,rgba(255,201,31,.24),transparent 20%),
    radial-gradient(circle at 68% 68%,#0060d1 0%,#0060d1 22%,#0b2d70 58%,#071b3e 100%);
}
.about-story {
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  align-items:start;
  gap:clamp(45px,8vw,130px);
  background:var(--white);
}
.about-story-heading h2,
.about-universe h2,
.faq-page-intro h2,
.faq-contact-band h2 {
  margin:18px 0 0;
  font-family:var(--display);
  font-size:clamp(48px,6.5vw,94px);
  font-weight:900;
  line-height:.9;
  letter-spacing:-4px;
}
.about-story-heading h2 em,
.faq-page-intro h2 em { color:var(--blue); font-style:normal; }
.about-story-copy { padding-top:37px; }
.about-story-copy p { color:#566170; font-size:clamp(16px,1.5vw,20px); line-height:1.8; }
.about-story-copy p + p { margin-top:24px; }
.about-values { background:var(--cream); }
.about-value-grid { margin-top:60px; }
.about-universe {
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
  align-items:center;
  gap:clamp(50px,8vw,130px);
  min-height:720px;
  padding:clamp(90px,10vw,150px) max(6vw,24px);
  overflow:hidden;
  color:var(--white);
  background:var(--blue-dark) radial-gradient(circle at 18% 42%,rgba(35,136,255,.42),transparent 28%);
  isolation:isolate;
}
.about-universe > *:not(.star-map) { position:relative; z-index:1; }
.about-universe h2 em,.faq-contact-band h2 em { color:var(--yellow); font-style:normal; }
.about-universe-copy > p:last-child { max-width:540px; color:rgba(255,255,255,.68); }
.about-universe-list { display:grid; }
.about-universe-list > div {
  display:grid;
  grid-template-columns:48px 1fr;
  align-items:center;
  gap:18px;
  min-height:82px;
  border-block-start:1px solid rgba(255,255,255,.2);
}
.about-universe-list > div:last-child { border-bottom:1px solid rgba(255,255,255,.2); }
.about-universe-list span { color:var(--yellow); font-size:9px; font-weight:900; }
.about-universe-list strong { font-family:var(--display); font-size:clamp(18px,2vw,28px); }
.about-for-everyone { background:var(--white); }

.faq-page-shell {
  display:grid;
  grid-template-columns:minmax(280px,.68fr) minmax(0,1.32fr);
  align-items:start;
  gap:clamp(50px,7vw,110px);
  background:var(--white);
}
.faq-page-intro { position:sticky; top:160px; }
.faq-page-intro > p:last-child { margin-top:28px; color:#566170; line-height:1.7; }
.faq-page-groups { display:grid; gap:30px; }
.faq-group {
  overflow:hidden;
  border:2px solid var(--ink);
  border-radius:22px;
  background:var(--white);
  box-shadow:0 7px 0 var(--ink),0 20px 40px rgba(7,27,62,.08);
}
.faq-group > header {
  display:flex;
  align-items:center;
  gap:18px;
  padding:22px 25px;
  color:var(--white);
  background:var(--blue-dark);
  border-bottom:4px solid var(--yellow);
}
.faq-group > header > span {
  display:grid;
  flex:0 0 46px;
  width:46px;
  height:46px;
  border:2px solid var(--yellow);
  border-radius:50%;
  color:var(--yellow);
  font-family:var(--display);
  place-items:center;
}
.faq-group header small { color:var(--yellow); font-size:8px; font-weight:900; letter-spacing:1.3px; }
.faq-group header h3 { margin:3px 0 0; font-family:var(--display); font-size:clamp(21px,2vw,29px); line-height:1; }
.faq-group .faq-list { padding:0 25px; }
.faq-group .faq-list details:hover { background:rgba(0,96,209,.06); }
.faq-group .faq-list summary { min-height:86px; font-size:clamp(15px,1.5vw,19px); }
.faq-contact-band {
  position:relative;
  display:grid;
  min-height:580px;
  padding:100px max(6vw,24px);
  overflow:hidden;
  color:var(--white);
  background:var(--blue);
  isolation:isolate;
  place-items:center;
  text-align:center;
}
.faq-contact-band > div:not(.star-map) { position:relative; z-index:1; }
.faq-contact-band .eyebrow { justify-content:center; }
.faq-contact-band p:not(.eyebrow) { max-width:600px; margin-inline:auto; color:rgba(255,255,255,.72); }
.faq-contact-band .button { margin-top:28px; }

@media (max-width:1320px) {
  .site-header { grid-template-columns:1fr auto; }
  .desktop-nav,.header-cta { display:none; }
  .header-actions { grid-column:2; }
  .menu-toggle { display:block; }
}
@media (max-width:900px) {
  .about-story,.about-universe,.faq-page-shell { grid-template-columns:1fr; }
  .about-story-copy { padding-top:0; }
  .about-universe { min-height:0; }
  .faq-page-intro { position:static; }
}
@media (max-width:620px) {
  .about-story-heading h2,.about-universe h2,.faq-page-intro h2,.faq-contact-band h2 { font-size:clamp(42px,12vw,58px); letter-spacing:-3px; }
  .about-value-grid { margin-top:42px; }
  .about-universe { gap:42px; padding-block:80px; }
  .about-universe-list > div { min-height:70px; }
  .faq-page-shell { gap:40px; }
  .faq-group > header { padding:18px 16px; }
  .faq-group .faq-list { padding:0 16px; }
  .faq-group .faq-list summary { min-height:76px; padding-right:0; }
  .faq-group .faq-list details p { padding-right:5px; }
  .faq-contact-band { min-height:510px; padding-block:80px; }
}

/* Official COLLECT-A brand and photography */
.brand-logo{display:block;width:clamp(220px,18vw,285px);height:auto;filter:drop-shadow(0 4px 0 rgba(0,0,0,.2));transform-origin:left center;transition:filter .25s ease,transform .25s cubic-bezier(.2,.8,.2,1)}
.brand:hover .brand-logo,.brand:focus-visible .brand-logo{filter:drop-shadow(0 0 14px rgba(255,201,31,.48)) drop-shadow(0 5px 0 rgba(0,0,0,.28));transform:translateY(-2px) scale(1.025)}
.brand-footer .brand-logo{width:min(100%,330px)}

.hero-event-art{position:absolute;z-index:4;right:clamp(25px,5vw,82px);bottom:132px;width:clamp(390px,32vw,560px);padding:7px;overflow:hidden;border:2px solid rgba(255,255,255,.9);border-radius:22px;color:var(--ink);background:linear-gradient(115deg,#d49300 0%,#fff2a8 24%,#ffc91f 50%,#b87500 76%,#ffe784 100%);box-shadow:0 0 0 4px var(--blue-dark),0 0 38px rgba(255,201,31,.44),0 28px 60px rgba(3,18,51,.5);transform:rotate(1.4deg);transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease}
.hero-event-art::after{content:"";position:absolute;inset:7px;border-radius:14px;background:linear-gradient(112deg,transparent 16%,rgba(255,255,255,.42) 39%,transparent 58%);opacity:.35;transform:translateX(-75%);transition:transform .7s ease;pointer-events:none}
.hero-event-art:hover,.hero-event-art:focus-visible{box-shadow:0 0 0 4px var(--blue-dark),0 0 54px rgba(255,201,31,.68),0 34px 70px rgba(3,18,51,.6);transform:rotate(0) translateY(-8px) scale(1.018)}
.hero-event-art:hover::after,.hero-event-art:focus-visible::after{transform:translateX(80%)}
.hero-event-art img{display:block;width:100%;border-radius:14px}
.hero-event-art>span,.hero-event-art>b{position:absolute;z-index:2;bottom:20px;padding:8px 11px;border-radius:999px;font-size:8px;font-weight:900;letter-spacing:1.1px}
.hero-event-art>span{left:20px;color:var(--ink);background:var(--yellow)}
.hero-event-art>b{right:20px;color:var(--white);background:rgba(7,27,62,.9)}
@media (min-width:1101px){.hero:has(.hero-event-art) .hero-content{width:min(720px,52vw)}}

.official-moments{color:var(--ink);background:var(--white)}
.moments-heading{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);align-items:end;gap:clamp(35px,8vw,130px);margin-bottom:55px}
.moments-heading h2,.official-gallery-heading h2,.community-gallery-heading h2,.official-event-copy h2{margin:0;font-family:var(--display);font-size:clamp(48px,6vw,86px);font-weight:900;line-height:.9;letter-spacing:-4px}
.moments-heading h2 em,.official-gallery-heading h2 em,.community-gallery-heading h2 em,.official-event-copy h2 em{color:var(--blue);font-style:normal}
.moments-heading>div:last-child{display:grid;gap:20px;align-content:end;padding-bottom:5px}
.moments-heading>div:last-child p{margin:0;color:#5c6674;font-size:16px;line-height:1.7}
.moments-heading .text-link{width:max-content;color:var(--blue-dark)}
.moments-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:210px;gap:15px}
.moment-photo{position:relative;min-width:0;margin:0;overflow:hidden;border:3px solid var(--blue-dark);border-radius:22px;background:var(--blue-dark);box-shadow:0 7px 0 var(--blue-dark)}
.moment-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 48%,rgba(3,18,51,.8));pointer-events:none}
.moment-photo img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.8,.2,1),filter .35s ease}
.moment-photo:hover img{filter:saturate(1.08) contrast(1.03);transform:scale(1.045)}
.moment-photo figcaption{position:absolute;z-index:2;right:18px;bottom:15px;left:18px;display:flex;align-items:center;gap:10px;color:var(--white);font-size:9px;font-weight:900;letter-spacing:1.15px}
.moment-photo figcaption span{color:var(--yellow)}
.moment-photo-1{grid-column:1/7;grid-row:1/3}.moment-photo-2{grid-column:7/10;grid-row:1}.moment-photo-3{grid-column:10/13;grid-row:1}.moment-photo-4{grid-column:7/13;grid-row:2}.moment-photo-5{grid-column:1/5;grid-row:3}.moment-photo-6{grid-column:5/13;grid-row:3}

.official-gallery-shell{padding:clamp(75px,9vw,130px) clamp(20px,5vw,80px) 120px;color:var(--ink);background:var(--white)}
.official-gallery-heading{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.55fr);align-items:end;gap:50px;width:min(1500px,100%);margin:0 auto 60px}
.official-gallery-heading>p{margin:0 0 7px;color:#5c6674;font-size:16px;line-height:1.75}
.official-gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-flow:dense;grid-auto-rows:260px;gap:16px;width:min(1600px,100%);margin:auto}
.official-gallery-photo{position:relative;margin:0;overflow:hidden;border:3px solid var(--blue-dark);border-radius:20px;background:var(--blue-dark);box-shadow:0 6px 0 var(--blue-dark)}
.official-gallery-photo:nth-child(1),.official-gallery-photo:nth-child(6),.official-gallery-photo:nth-child(11),.official-gallery-photo:nth-child(17){grid-column:span 2;grid-row:span 2}
.official-gallery-photo:nth-child(4),.official-gallery-photo:nth-child(9),.official-gallery-photo:nth-child(15),.official-gallery-photo:nth-child(21){grid-column:span 2}
.official-gallery-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(3,18,51,.82));pointer-events:none}
.official-gallery-photo img,.official-gallery-photo video{width:100%;height:100%;object-fit:cover;transition:transform .55s cubic-bezier(.2,.8,.2,1)}
.official-gallery-photo:hover img{transform:scale(1.05)}
.official-gallery-photo figcaption{position:absolute;z-index:2;right:17px;bottom:15px;left:17px;display:flex;align-items:center;gap:10px;color:var(--white)}
.official-gallery-photo figcaption span{color:var(--yellow);font-size:8px;font-weight:900}.official-gallery-photo figcaption strong{font-size:9px;letter-spacing:.8px}
.community-gallery-posts{padding-top:90px}.community-gallery-heading{margin-bottom:45px}

.about-photo-story{display:grid;grid-template-columns:1.15fr .85fr 1fr;min-height:450px;padding:14px;gap:14px;background:var(--blue-dark)}
.about-photo-story figure{position:relative;margin:0;overflow:hidden;border:2px solid rgba(255,201,31,.8);border-radius:16px}
.about-photo-story img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}.about-photo-story figure:hover img{transform:scale(1.04)}
.about-photo-story figcaption{position:absolute;right:14px;bottom:14px;left:14px;padding:9px 11px;border-radius:8px;color:var(--white);background:rgba(7,27,62,.84);font-size:8px;font-weight:900;letter-spacing:1px}

.official-event-information{display:grid;grid-template-columns:minmax(0,1fr) minmax(400px,.82fr);gap:clamp(30px,6vw,90px);padding:clamp(30px,5vw,72px);border:3px solid var(--blue-dark);border-radius:28px;background:var(--white);box-shadow:0 9px 0 var(--blue-dark),0 24px 55px rgba(7,27,62,.14)}
.official-event-copy>p:not(.eyebrow){color:#566170;font-size:17px;line-height:1.8}
.official-event-copy aside{margin-top:28px;padding:22px;border-left:5px solid var(--yellow);color:var(--white);background:var(--blue-dark)}
.official-event-copy aside strong{color:var(--yellow);font-size:9px;letter-spacing:1.2px}.official-event-copy aside p{margin:9px 0 0;color:rgba(255,255,255,.78);line-height:1.65}
.official-ticket-list{align-self:start;overflow:hidden;border:3px solid var(--blue-dark);border-radius:22px;background:var(--blue-dark);box-shadow:0 7px 0 var(--yellow)}
.official-ticket-list header{padding:24px;color:var(--white);background:linear-gradient(115deg,#071b3e,#0060d1)}
.official-ticket-list header small{color:var(--yellow);font-size:8px;font-weight:900;letter-spacing:1.3px}.official-ticket-list header h3{margin:4px 0 0;font-family:var(--display);font-size:42px;line-height:1}
.official-ticket-list article{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:104px;padding:20px 22px;border-top:1px solid rgba(255,255,255,.18);color:var(--white)}
.official-ticket-list article>div:first-child{display:grid;gap:4px}.official-ticket-list article span{color:var(--yellow);font-size:8px;font-weight:900}.official-ticket-list article strong{font-size:14px}.official-ticket-list article small{color:rgba(255,255,255,.58);font-size:9px}
.official-ticket-list article>div:last-child{display:grid;justify-items:end;flex:0 0 auto}.official-ticket-list article b{color:var(--yellow);font-family:var(--display);font-size:24px}.official-ticket-list article time{color:rgba(255,255,255,.7);font-size:9px;font-weight:800}
.official-ticket-list .button{width:calc(100% - 36px);margin:20px 18px}
.event-card-art img[src*="collect-a-verse-card-show"],.event-detail-card-art img[src*="collect-a-verse-card-show"]{object-position:center}
.platform-form label>small{color:#687386;font-size:9px;line-height:1.45}
.gallery-direct-upload{padding:22px;border:2px dashed rgba(0,96,209,.42);border-radius:16px;background:rgba(0,96,209,.05)}

@media (max-width:1100px){.hero-event-art{right:28px;bottom:105px;width:min(42vw,470px)}.official-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:900px){
  .hero:has(.hero-event-art){min-height:0;padding-bottom:90px}.hero:has(.hero-event-art) .hero-content{width:100%}.hero-event-art{position:relative;right:auto;bottom:auto;align-self:start;justify-self:center;width:min(100%,650px);margin-top:46px;transform:rotate(.7deg)}.hero-status{display:none}
  .moments-heading,.official-gallery-heading,.official-event-information{grid-template-columns:1fr}.moments-grid{grid-auto-rows:190px}.official-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:235px}
  .about-photo-story{grid-template-columns:1fr 1fr;min-height:0}.about-photo-story figure{min-height:310px}.about-photo-story figure:first-child{grid-column:1/-1}.official-event-information{padding:30px}
}
@media (max-width:620px){
  .brand-logo{width:190px}.brand-footer .brand-logo{width:min(100%,290px)}
  .hero-event-art{margin-top:34px;padding:5px;border-radius:16px;box-shadow:0 0 0 3px var(--blue-dark),0 0 28px rgba(255,201,31,.36),0 18px 40px rgba(3,18,51,.42)}.hero-event-art img{border-radius:10px}.hero-event-art>span,.hero-event-art>b{bottom:13px;padding:6px 8px;font-size:6px}.hero-event-art>span{left:13px}.hero-event-art>b{right:13px}
  .moments-heading h2,.official-gallery-heading h2,.community-gallery-heading h2,.official-event-copy h2{font-size:clamp(40px,12vw,58px);letter-spacing:-3px}.moments-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:170px;gap:10px}.moment-photo{grid-column:auto;grid-row:auto;border-radius:16px}.moment-photo-1,.moment-photo-4,.moment-photo-6{grid-column:1/-1}.moment-photo-1{grid-row:span 2}.moment-photo figcaption{right:11px;bottom:10px;left:11px;font-size:7px}
  .official-gallery-shell{padding:70px 14px 85px}.official-gallery-heading{margin-bottom:40px;padding-inline:7px}.official-gallery-grid{grid-template-columns:1fr;grid-auto-rows:auto;gap:13px}.official-gallery-photo,.official-gallery-photo:nth-child(n){grid-column:auto;grid-row:auto;aspect-ratio:4/3;border-radius:16px}
  .about-photo-story{grid-template-columns:1fr;padding:10px;gap:10px}.about-photo-story figure,.about-photo-story figure:first-child{grid-column:auto;min-height:245px}
  .official-event-information{padding:22px 17px;border-radius:20px;box-shadow:0 6px 0 var(--blue-dark),0 18px 35px rgba(7,27,62,.12)}.official-ticket-list article{align-items:flex-start;flex-direction:column;min-height:0}.official-ticket-list article>div:last-child{justify-items:start}.official-ticket-list .button{font-size:10px}
}
@media (max-width:390px){.brand-logo{width:170px}}

/* COLLECT-A 2026 rebrand */
.site-header .header-cta { display: inline-flex; }
@media (max-width: 620px) {
  .site-header { padding-inline: 12px; column-gap: 8px; }
  .site-header .brand-logo { width: clamp(100px, 28vw, 170px); }
  .site-header .header-account { display: none; }
  .site-header .header-actions { gap: 8px; }
  .site-header .header-cta { min-height: 44px; padding: 10px 12px; font-size: 9px; letter-spacing: 0; white-space: nowrap; }
  .site-header .header-cta > span { display: none; }
  .site-header .menu-toggle { width: 44px; height: 44px; }
}
body:not(.inner-page) .experience {
  display: block;
  min-height: 0;
  padding-block: clamp(48px, 5vw, 72px);
}
body:not(.inner-page) .experience-copy { width: min(760px, 100%); }
body:not(.inner-page) .experience h2 { font-size: clamp(40px, 4.2vw, 64px); }

@media (max-width: 850px) {
  body:not(.inner-page) .experience { padding-block: 48px; }
}

@media (max-width:620px){
  .experience-photo-stack{gap:8px;margin-top:32px}
  .experience-photo-stack figure{min-height:170px;border-radius:14px}
  .experience-photo-stack figure:nth-child(2){margin-top:20px}
  .pathway-card{min-height:420px}
  .pathway-photo{height:155px;margin-top:14px}
}

/* Performance pass: keep the foil character while avoiding constant heavy repaints. */
.animations-paused,
.animations-paused::before,
.animations-paused::after,
.animations-paused *,
.animations-paused *::before,
.animations-paused *::after { animation-play-state:paused !important; }

.event-trading-card,
.event-detail-trading-card,
.event-trading-card .event-tile-top,
.event-trading-card .button-blue,
.event-detail-card-header,
.event-detail-card-actions .button-blue,
.event-detail-support .button-blue,
.event-trading-card .event-chip,
.event-detail-card-heading .event-chip,
.event-trading-card::before,
.event-detail-trading-card::before { animation:none; }

.event-trading-card::after,
.event-detail-trading-card::after {
  filter:none;
  animation:event-gold-turn 30s steps(90,end) infinite,performance-foil-pulse 5.5s ease-in-out infinite;
}
.event-card-frame,
.event-detail-card-frame {
  animation:event-gold-turn 30s steps(90,end) infinite;
}
@keyframes performance-foil-pulse {
  0%,100% { opacity:.78; }
  50% { opacity:1; }
}

@media (max-width:900px), (pointer:coarse) {
  .site-header,
  .menu-toggle,
  .hero-event-meta > div,
  .hero-process-panel,
  .member-badge { -webkit-backdrop-filter:none; backdrop-filter:none; }
  .event-trading-card::after,
  .event-detail-trading-card::after,
  .event-card-frame,
  .event-detail-card-frame { animation:none !important; }
}

/* A brand-built crown replaces the former character star on every event card. */
.event-trading-card::before,
.event-detail-trading-card::before { content:"" !important; display:none !important; }
.event-card-crown {
  position:absolute;
  z-index:9;
  top:-25px;
  left:-23px;
  display:grid;
  width:49px;
  height:49px;
  border:4px solid var(--blue-dark);
  border-radius:50%;
  background:radial-gradient(circle at 42% 35%,#fffdf3 0%,#fff4bd 72%,#ffc91f 100%);
  box-shadow:inset 0 0 0 3px var(--yellow),0 5px 0 var(--ink),0 0 11px rgba(255,201,31,.24);
  place-items:center;
  transition:transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s ease;
}
.event-card-crown i {
  display:block;
  width:27px;
  height:21px;
  background:linear-gradient(135deg,#936000 0%,#d99600 28%,#ffc91f 52%,#efb600 76%,#ffc928 100%);
  clip-path:polygon(0 28%,22% 52%,30% 12%,44% 48%,50% 0,56% 48%,70% 12%,78% 52%,100% 28%,88% 78%,88% 100%,12% 100%,12% 78%);
  filter:drop-shadow(0 2px 0 rgba(111,70,0,.42));
}
.event-trading-card:hover .event-card-crown,
.event-detail-trading-card:hover .event-card-crown {
  box-shadow:inset 0 0 0 3px var(--yellow),0 6px 0 var(--ink),0 0 17px rgba(255,201,31,.42);
  transform:translateY(-2px) scale(1.06);
}
.event-card-crown-large {
  top:-29px;
  left:-27px;
  width:58px;
  height:58px;
}
.event-card-crown-large i { width:32px; height:25px; }
@media (max-width:720px) {
  .event-card-crown { top:-20px; left:-15px; width:42px; height:42px; border-width:3px; }
  .event-card-crown i { width:23px; height:18px; }
}
@media (max-width:820px) {
  .event-card-crown-large { top:-21px; left:-16px; width:45px; height:45px; }
  .event-card-crown-large i { width:25px; height:19px; }
}

/* A tighter desktop hero keeps the full yellow ticker inside the first viewport. */
@media (min-width:1101px) {
  .has-event-bar .hero:has(.hero-event-art) {
    min-height:min(855px,calc(100svh + 35px));
    padding-top:188px;
    padding-bottom:68px;
  }
  .hero:has(.hero-event-art) .hero-content { align-self:start; }
  .hero:has(.hero-event-art) .hero-content .eyebrow { margin-bottom:16px; }
  .hero:has(.hero-event-art) .hero-content h1 { margin-bottom:20px; }
  .hero:has(.hero-event-art) .hero-event-meta { margin-top:18px; }
  .hero:has(.hero-event-art) .hero-actions { margin-top:25px; }
  .hero:has(.hero-event-art) .hero-event-art { bottom:88px; }
  .hero:has(.hero-event-art) .hero-status,
  .hero:has(.hero-event-art) .scroll-note { bottom:20px; }
}

/* Stable desktop footer layout */
.footer > * { min-width:0; max-width:100%; }
.footer-brand > p,.footer-socials { margin-left:0; }
.footer nav a,.footer-partners a,.footer-meta,.footer-acknowledgement { overflow-wrap:anywhere; }

@media (min-width:1121px) {
  .footer {
    grid-template-columns:minmax(270px,1.05fr) minmax(190px,.68fr) minmax(270px,.9fr);
    column-gap:clamp(38px,5vw,88px);
    row-gap:42px;
    align-items:start;
    padding-inline:clamp(32px,6vw,120px);
  }
  .footer-brand { grid-column:1; grid-row:1; }
  .footer nav { grid-column:2; grid-row:1; }
  .footer-partners { grid-column:3; grid-row:1; width:100%; }
  .footer-meta { grid-column:1; grid-row:2; align-self:start; padding-top:28px; border-top:1px solid rgba(255,255,255,.14); text-align:left; }
  .footer-acknowledgement { grid-column:2/4; grid-row:2; margin-top:0; grid-template-columns:minmax(150px,190px) minmax(0,1fr); }
  .brand-footer .brand-logo { width:min(100%,285px); }
}

@media (min-width:721px) and (max-width:1120px) {
  .footer { grid-template-columns:minmax(0,1fr) minmax(0,1fr); column-gap:clamp(35px,7vw,75px); }
  .footer-brand,.footer nav,.footer-partners,.footer-meta { width:100%; }
  .footer-meta { align-self:start; text-align:left; }
  .footer-acknowledgement { grid-column:1/-1; }
}

/* Community page process steps now live inside the hero */
.page-hero-community {
  grid-template-columns:minmax(0,1.15fr) minmax(360px,.72fr);
  align-items:center;
  gap:clamp(45px,7vw,120px);
  min-height:780px;
}
.page-hero-community .page-hero-copy { width:100%; }
.page-hero-community .page-hero-copy > p:not(.eyebrow) { max-width:650px; }
.page-hero-community .page-hero-code { display:none; }
.page-hero-community h1 { font-size:clamp(52px,6vw,100px); }
.hero-process-panel {
  position:relative;
  z-index:2;
  align-self:center;
  width:100%;
  overflow:hidden;
  border:2px solid rgba(255,255,255,.32);
  border-radius:26px;
  color:var(--white);
  background:linear-gradient(145deg,rgba(7,27,62,.88),rgba(11,45,112,.72));
  box-shadow:0 0 0 5px rgba(255,201,31,.12),0 28px 60px rgba(3,18,51,.42);
  backdrop-filter:blur(15px);
}
.hero-process-panel::before {
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:5px;
  background:linear-gradient(#fff2a8,#ffc91f,#b87500,#ffc91f);
  box-shadow:0 0 22px rgba(255,201,31,.65);
}
.hero-process-panel header { padding:26px 28px 22px; border-bottom:1px solid rgba(255,255,255,.18); }
.hero-process-panel header small { color:var(--yellow); font-size:8px; font-weight:900; letter-spacing:1.6px; }
.hero-process-panel header h2 { margin:7px 0 0; font-family:var(--display); font-size:clamp(30px,3vw,46px); font-weight:900; line-height:.92; letter-spacing:-2px; }
.hero-process-list { display:grid; }
.hero-process-list article {
  display:grid;
  grid-template-columns:34px minmax(0,1fr) 18px;
  align-items:center;
  gap:15px;
  min-height:112px;
  padding:18px 24px 18px 28px;
  border-bottom:1px solid rgba(255,255,255,.16);
  transition:background .25s ease,padding .25s ease,box-shadow .25s ease;
}
.hero-process-list article:last-child { border-bottom:0; }
.hero-process-list article:hover { padding-left:35px; background:rgba(35,136,255,.16); box-shadow:inset 4px 0 0 var(--yellow); }
.hero-process-list article > span { color:var(--yellow); font-size:9px; font-weight:900; }
.hero-process-list h3 { margin:0 0 5px; font-family:var(--display); font-size:20px; font-weight:900; }
.hero-process-list p { margin:0; color:rgba(255,255,255,.64); font-size:11px; line-height:1.55; }
.hero-process-list i { color:var(--yellow); font-style:normal; transition:transform .25s ease; }
.hero-process-list article:hover i { transform:translate(3px,-3px); }

@media (max-width:980px) {
  .page-hero-community {
    grid-template-columns:1fr;
    gap:44px;
    min-height:0;
    padding-bottom:80px;
  }
  .hero-process-panel { width:min(100%,720px); }
}
@media (max-width:620px) {
  .page-hero-community { gap:34px; padding-bottom:60px; }
  .page-hero-community h1 { font-size:clamp(43px,12vw,62px); }
  .hero-process-panel { border-radius:20px; }
  .hero-process-panel header { padding:22px 20px 18px; }
  .hero-process-panel header h2 { font-size:31px; }
  .hero-process-list article { grid-template-columns:27px minmax(0,1fr) 14px; gap:10px; min-height:104px; padding:16px 17px 16px 20px; }
  .hero-process-list article:hover { padding-left:24px; }
  .hero-process-list h3 { font-size:17px; }
  .hero-process-list p { font-size:10px; }
}

/* Event cover management in the admin editor */
.event-cover-manager {
  display:grid;
  grid-template-columns:minmax(280px,.85fr) minmax(0,1.15fr);
  gap:26px;
  padding:22px;
  border:2px solid var(--blue-dark);
  border-radius:20px;
  background:#eef5ff;
}
.event-cover-preview {
  position:relative;
  align-self:start;
  aspect-ratio:16/9;
  overflow:hidden;
  border:3px solid var(--ink);
  border-radius:16px;
  background:var(--blue-dark);
  box-shadow:0 6px 0 var(--ink);
}
.event-cover-preview img { width:100%; height:100%; object-fit:cover; }
.event-cover-preview > div { display:grid; height:100%; color:var(--white); place-items:center; align-content:center; gap:10px; }
.event-cover-preview > div span { color:var(--yellow); font-size:42px; }
.event-cover-preview > div strong { font-size:10px; letter-spacing:1.2px; }
.event-cover-preview > small { position:absolute; right:10px; bottom:10px; left:10px; padding:7px 9px; border-radius:7px; color:var(--yellow); background:rgba(7,27,62,.88); font-size:7px; font-weight:900; letter-spacing:1px; text-align:center; }
.event-cover-controls { display:grid; gap:15px; align-content:start; }
.event-cover-controls > div > small { color:var(--blue); font-size:8px; font-weight:900; letter-spacing:1.4px; }
.event-cover-controls h2 { margin:5px 0 7px; font-family:var(--display); font-size:26px; line-height:1; }
.event-cover-controls > div > p { margin:0; color:#687386; font-size:11px; line-height:1.55; }
.event-cover-controls input[type="file"] { padding:11px; border:2px dashed var(--blue); border-radius:12px; color:var(--blue-dark); background:var(--white); cursor:pointer; font-size:11px; }
@media (max-width:850px) {
  .event-cover-manager { grid-template-columns:1fr; padding:16px; }
  .event-cover-preview { width:100%; max-width:620px; }
}

/* Collectible vendor cards on each event lineup. */
.event-vendor-grid {
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:38px 30px;
  padding:12px 10px 24px;
}
.event-vendor-card.vendor-trading-card {
  position:relative;
  isolation:isolate;
  display:block;
  min-width:0;
  padding:6px;
  border:4px solid var(--blue-dark);
  border-radius:30px;
  color:var(--ink);
  background:linear-gradient(135deg,#071b3e 0%,#0060d1 48%,#0b2d70 100%);
  box-shadow:0 12px 0 4px var(--ink),0 30px 54px rgba(7,27,62,.23);
  text-decoration:none;
  transform:translateY(0);
  transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease;
  animation:clean-card-aura 9s ease-in-out infinite;
}
.event-vendor-card.vendor-trading-card::after {
  content:"";
  position:absolute;
  z-index:-1;
  inset:-9px;
  padding:5px;
  border-radius:38px;
  background:conic-gradient(from var(--event-gold-angle),#b87900,#ffc91f,#fff0a0,#e6a900,#ffc91f,#b87900);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  mask-composite:exclude;
  pointer-events:none;
  animation:event-gold-turn 18s linear infinite,event-gold-outer-glow 4.5s ease-in-out infinite;
}
.event-vendor-card.vendor-trading-card:hover {
  color:var(--ink);
  box-shadow:0 17px 0 4px var(--ink),0 40px 68px rgba(0,96,209,.3);
  transform:translateY(-8px);
}
.vendor-card-frame {
  display:flex;
  height:100%;
  overflow:hidden;
  flex-direction:column;
  border:3px solid transparent;
  border-radius:22px;
  background:linear-gradient(var(--white),var(--white)) padding-box,conic-gradient(from var(--event-gold-angle),#c48600,#ffc91f,#fff0a0,#e5a500,#ffc91f,#c48600) border-box;
  animation:event-gold-turn 18s linear infinite,clean-gold-glow 4.5s ease-in-out infinite;
}
.vendor-card-top {
  position:relative;
  isolation:isolate;
  display:flex;
  min-height:128px;
  overflow:hidden;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  padding:22px 20px 18px;
  border-bottom:5px solid var(--yellow);
  color:var(--white);
  background:#0b2d70 radial-gradient(circle at 58% 115%,#0060d1 0%,#0060d1 27%,#0b2d70 67%,#071b3e 100%);
  animation:clean-blue-breathe 9s ease-in-out infinite;
}
.vendor-card-top > *:not(.galaxy-canvas) { position:relative; z-index:2; }
.vendor-card-top > span { display:grid; gap:8px; min-width:0; }
.vendor-card-top small { color:var(--yellow); font-size:8px; font-weight:900; letter-spacing:1.4px; }
.vendor-card-top strong {
  overflow-wrap:anywhere;
  font-family:var(--display);
  font-size:clamp(24px,2.1vw,34px);
  font-weight:900;
  line-height:.92;
  letter-spacing:-1.2px;
  text-shadow:0 2px 0 rgba(7,27,62,.55),0 0 15px rgba(35,136,255,.45);
}
.vendor-card-top > b { flex:0 0 auto; color:var(--yellow); font-size:12px; letter-spacing:1px; }
.vendor-card-art {
  position:relative;
  display:grid;
  aspect-ratio:4/3;
  overflow:hidden;
  border-bottom:5px solid var(--yellow);
  background:radial-gradient(circle at 50% 45%,#0060d1,#0b2d70 68%,#071b3e);
  place-items:center;
}
.vendor-trading-card .vendor-card-art > img {
  width:100%;
  height:100%;
  max-width:none;
  flex:none;
  border:0;
  border-radius:0;
  object-fit:cover;
  transition:transform .55s cubic-bezier(.2,.8,.2,1);
}
.vendor-trading-card .vendor-card-art > img.is-logo { padding:15%; object-fit:contain; filter:drop-shadow(0 8px 12px rgba(7,27,62,.35)); }
.vendor-trading-card:hover .vendor-card-art > img { transform:scale(1.055); }
.vendor-trading-card .vendor-card-mark {
  display:grid;
  width:112px;
  height:112px;
  flex:none;
  margin:0;
  border:5px solid var(--white);
  border-radius:50%;
  color:var(--blue-dark);
  background:linear-gradient(135deg,#fff0a0,#ffc91f 55%,#d99a00);
  box-shadow:0 0 0 5px var(--yellow),0 10px 0 rgba(7,27,62,.62),0 0 25px rgba(255,201,31,.55);
  font-size:58px;
  place-items:center;
}
.vendor-card-shine {
  position:absolute;
  inset:-35%;
  background:linear-gradient(112deg,transparent 36%,rgba(255,255,255,.34) 48%,rgba(255,201,31,.2) 52%,transparent 64%);
  opacity:0;
  pointer-events:none;
  transform:translateX(-65%);
  transition:transform .75s ease,opacity .3s ease;
}
.vendor-trading-card:hover .vendor-card-shine { opacity:1; transform:translateX(65%); }
.vendor-card-body {
  position:relative;
  display:flex;
  min-height:245px;
  flex:1;
  flex-direction:column;
  align-items:flex-start;
  padding:25px 22px 22px;
  background:var(--white);
}
.vendor-card-body > small { color:var(--blue); font-size:8px; font-weight:900; letter-spacing:1.25px; }
.vendor-card-body > strong { margin:9px 0 7px; font-family:var(--display); font-size:23px; line-height:1; }
.vendor-card-body > span:not(.vendor-card-logo) { display:-webkit-box; overflow:hidden; color:#687386; font-size:11px; line-height:1.55; -webkit-box-orient:vertical; -webkit-line-clamp:3; }
.vendor-card-body > em { margin-top:11px; color:var(--blue-dark); font-size:9px; font-style:normal; font-weight:900; letter-spacing:.6px; }
.vendor-trading-card .vendor-card-logo {
  position:absolute;
  top:-31px;
  right:18px;
  width:62px;
  height:62px;
  flex:none;
  margin:0;
  border:4px solid var(--yellow);
  border-radius:50%;
  background:var(--white);
  box-shadow:0 4px 0 var(--ink),0 0 16px rgba(255,201,31,.5);
  object-fit:cover;
}
.vendor-card-cta {
  display:flex;
  width:100%;
  align-items:center;
  justify-content:space-between;
  margin-top:auto;
  padding-top:18px;
  border-top:1px solid rgba(18,26,39,.16);
  color:var(--blue);
  font-size:10px;
  letter-spacing:.8px;
}
.vendor-card-cta i { font-size:17px; font-style:normal; transition:transform .25s ease; }
.vendor-trading-card:hover .vendor-card-cta i { transform:translate(3px,-3px); }
.vendor-card-crown { z-index:12; }
.vendor-trading-card:hover .vendor-card-crown { transform:scale(1.08) rotate(-4deg); }

/* Vendor-owned profile imagery. */
.vendor-profile-media { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.vendor-profile-media > label { display:grid; align-content:start; gap:10px; padding:16px; border:2px solid var(--blue-dark); border-radius:17px; background:#eef5ff; }
.vendor-profile-media label > span:first-child { display:flex; align-items:center; justify-content:space-between; gap:12px; font-weight:900; }
.vendor-profile-media label > span small { color:#657080; font-size:8px; font-weight:700; }
.vendor-profile-media input[type="file"] { padding:10px; border:2px dashed var(--blue); border-radius:10px; background:var(--white); cursor:pointer; font-size:10px; }
.vendor-profile-logo-preview,.vendor-profile-hero-preview,.vendor-profile-empty-preview { display:grid; width:100%; height:180px; border:2px solid var(--ink); border-radius:13px; background:var(--blue-dark); object-fit:cover; place-items:center; }
.vendor-profile-logo-preview { padding:28px; background:var(--white); object-fit:contain; }
.vendor-profile-empty-preview { color:var(--yellow); font-family:var(--display); font-size:28px; }
.vendor-profile-empty-cover { background:radial-gradient(circle at 55% 80%,var(--blue-bright),var(--blue-dark) 72%); }

@media (max-width:900px) {
  .event-vendor-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:620px) {
  .event-vendor-grid { grid-template-columns:1fr; gap:42px; padding-inline:5px; }
  .event-vendor-card.vendor-trading-card { padding:5px; border-width:3px; border-radius:27px; box-shadow:0 11px 0 3px var(--ink),0 27px 46px rgba(7,27,62,.23); }
  .event-vendor-card.vendor-trading-card::after { inset:-7px; padding:4px; border-radius:33px; }
  .vendor-card-frame { border-radius:20px; }
  .vendor-card-top { min-height:118px; padding:19px 17px 16px; }
  .vendor-card-top strong { font-size:29px; }
  .vendor-card-body { min-height:225px; padding:23px 19px 19px; }
  .vendor-profile-media { grid-template-columns:1fr; }
}
@media (prefers-reduced-motion:reduce) {
  .event-vendor-card.vendor-trading-card,
  .event-vendor-card.vendor-trading-card::after,
  .vendor-card-frame,
  .vendor-card-top { animation:none; }
}

/* Vendor gallery and visual description editor. */
.vendor-rich-editor { overflow:hidden; border:2px solid var(--blue-dark); border-radius:18px; background:var(--white); box-shadow:0 6px 0 rgba(7,27,62,.12); }
.vendor-editor-label { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:14px 17px; color:var(--white); background:var(--blue-dark); }
.vendor-editor-label strong { font-size:11px; }
.vendor-editor-label small { color:rgba(255,255,255,.64); font-size:9px; }
.vendor-editor-toolbar { display:flex; flex-wrap:wrap; gap:6px; padding:10px; border-bottom:1px solid rgba(18,26,39,.14); background:#eef5ff; }
.vendor-editor-toolbar button,.vendor-editor-toolbar select,.vendor-editor-colour { min-height:34px; padding:7px 9px; border:1px solid rgba(7,27,62,.24); border-radius:7px; color:var(--blue-dark); background:var(--white); font-size:8px; font-weight:900; cursor:pointer; }
.vendor-editor-toolbar button:hover,.vendor-editor-toolbar button:focus-visible,.vendor-editor-toolbar select:focus { border-color:var(--yellow); background:#fff8d6; box-shadow:0 0 0 2px rgba(255,201,31,.28); }
.vendor-editor-colour { display:flex; align-items:center; gap:6px; }
.vendor-editor-colour input { width:23px; height:20px; padding:0; border:0; background:none; cursor:pointer; }
.vendor-editor-canvas { min-height:330px; padding:24px; outline:0; color:#222c3b; font-family:var(--body); font-size:14px; line-height:1.75; }
.vendor-editor-canvas:empty::before { content:attr(data-placeholder); color:#9099a7; pointer-events:none; }
.vendor-editor-canvas:focus { box-shadow:inset 0 0 0 3px rgba(0,96,209,.12); }
.vendor-editor-canvas h2,.vendor-rich-content h2 { margin:22px 0 10px; font-family:var(--display); font-size:32px; line-height:1; }
.vendor-editor-canvas h3,.vendor-rich-content h3 { margin:19px 0 8px; font-family:var(--display); font-size:24px; line-height:1.05; }
.vendor-editor-canvas blockquote,.vendor-rich-content blockquote { margin:18px 0; padding:14px 18px; border-left:5px solid var(--yellow); background:#eef5ff; font-style:italic; }
.vendor-editor-canvas ul,.vendor-editor-canvas ol,.vendor-rich-content ul,.vendor-rich-content ol { margin:14px 0; padding-left:25px; }
.vendor-editor-canvas a,.vendor-rich-content a { color:var(--blue); font-weight:800; text-decoration:underline; }
.vendor-editor-canvas img.vendor-rich-image,.vendor-rich-content img.vendor-rich-image { display:block; max-width:100%; height:auto; margin:20px auto; border:4px solid var(--yellow); border-radius:16px; box-shadow:0 7px 0 var(--blue-dark),0 17px 28px rgba(7,27,62,.16); }
.vendor-editor-canvas img.vendor-rich-image { cursor:pointer; }
.vendor-editor-canvas img.vendor-rich-image.is-selected { outline:4px solid var(--blue); outline-offset:4px; }
.vendor-editor-image-tools { display:flex; flex-wrap:wrap; align-items:center; gap:7px; padding:9px 12px; border-bottom:1px solid rgba(18,26,39,.14); background:#fff8d6; }
.vendor-editor-image-tools[hidden],.vendor-editor-image-picker[hidden] { display:none; }
.vendor-editor-image-tools span { margin-right:5px; color:var(--blue-dark); font-size:8px; font-weight:900; }
.vendor-editor-image-tools button { padding:7px 10px; border:1px solid var(--blue-dark); border-radius:7px; color:var(--blue-dark); background:var(--white); font-size:8px; font-weight:900; cursor:pointer; }
.vendor-editor-image-tools [data-rich-image-remove] { color:#a3232c; border-color:#a3232c; }
.vendor-editor-image-picker { display:grid; grid-template-columns:repeat(auto-fill,minmax(105px,1fr)); gap:9px; max-height:285px; overflow:auto; padding:12px; border-bottom:1px solid rgba(18,26,39,.14); background:var(--blue-dark); }
.vendor-editor-image-picker > button { display:grid; overflow:hidden; padding:0; border:2px solid var(--yellow); border-radius:10px; color:var(--white); background:#0b2d70; cursor:pointer; text-align:left; }
.vendor-editor-image-picker img { width:100%; aspect-ratio:1; object-fit:cover; }
.vendor-editor-image-picker span { padding:8px; overflow:hidden; font-size:8px; font-weight:800; text-overflow:ellipsis; white-space:nowrap; }
.vendor-editor-image-picker p { grid-column:1/-1; margin:0; padding:18px; color:rgba(255,255,255,.75); font-size:11px; text-align:center; }

.vendor-gallery-manager { margin-top:45px; padding-top:38px; border-top:1px solid var(--line); scroll-margin-top:170px; }
.vendor-gallery-manager > p { color:#687386; }
.vendor-gallery-upload { display:grid; grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) auto; align-items:end; gap:12px; margin:22px 0 28px; padding:18px; border:2px solid var(--blue-dark); border-radius:16px; background:#eef5ff; }
.vendor-gallery-upload label { display:grid; gap:7px; color:var(--blue-dark); font-size:9px; font-weight:900; }
.vendor-gallery-upload input { min-width:0; padding:11px; border:1px solid rgba(7,27,62,.28); border-radius:9px; background:var(--white); font:inherit; }
.vendor-gallery-upload .button { min-height:43px; }
.vendor-gallery-manage-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.vendor-gallery-manage-grid > article { position:relative; overflow:hidden; border:2px solid var(--ink); border-radius:16px; background:var(--white); box-shadow:0 5px 0 var(--ink); }
.vendor-gallery-manage-grid > article > img { width:100%; aspect-ratio:4/3; object-fit:cover; }
.vendor-gallery-manage-grid > article > div { display:grid; gap:8px; padding:12px; }
.vendor-gallery-manage-grid strong { overflow:hidden; font-size:10px; text-overflow:ellipsis; white-space:nowrap; }
.vendor-gallery-manage-grid [data-rich-image-src] { padding:0; border:0; color:var(--blue); background:none; font-size:9px; font-weight:900; cursor:pointer; text-align:left; }
.vendor-gallery-manage-grid article > form { position:absolute; top:8px; right:8px; }
.vendor-gallery-manage-grid article > form button { padding:6px 8px; border:1px solid rgba(255,255,255,.65); border-radius:7px; color:var(--white); background:rgba(7,27,62,.85); font-size:8px; font-weight:900; cursor:pointer; }

.vendor-rich-content { color:#4f5969; font-size:14px; line-height:1.8; overflow-wrap:anywhere; }
.vendor-rich-content > :first-child { margin-top:0; }
.vendor-public-gallery { padding-top:20px; }
.vendor-public-gallery .section-heading h2 { margin:12px 0 32px; font-family:var(--display); font-size:clamp(45px,7vw,82px); line-height:.88; letter-spacing:-3px; }
.vendor-public-gallery .section-heading h2 em { color:var(--blue); font-style:normal; }
.vendor-public-gallery-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.vendor-public-gallery-grid figure { overflow:hidden; margin:0; border:4px solid var(--yellow); border-radius:22px; background:var(--blue-dark); box-shadow:0 8px 0 var(--blue-dark),0 22px 38px rgba(7,27,62,.18); }
.vendor-public-gallery-grid img { width:100%; aspect-ratio:4/3; object-fit:cover; transition:transform .45s ease; }
.vendor-public-gallery-grid figure:hover img { transform:scale(1.04); }
.vendor-public-gallery-grid figcaption { padding:13px 15px; color:var(--white); font-size:10px; font-weight:800; }

@media (max-width:850px) {
  .vendor-gallery-upload { grid-template-columns:1fr; }
  .vendor-gallery-manage-grid,.vendor-public-gallery-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:560px) {
  .vendor-editor-label { display:grid; gap:4px; }
  .vendor-editor-toolbar { gap:5px; }
  .vendor-editor-toolbar button,.vendor-editor-toolbar select,.vendor-editor-colour { min-height:32px; padding:6px 7px; }
  .vendor-editor-canvas { min-height:285px; padding:18px 15px; }
  .vendor-gallery-manage-grid,.vendor-public-gallery-grid { grid-template-columns:1fr; }
}

/* Refined member hub and dedicated vendor media library. */
.member-main { display:grid; gap:24px; min-width:0; }
.member-account-panel { min-width:0; }
.member-avatar { display:grid; width:72px; height:72px; margin-bottom:7px; border:4px solid var(--yellow); border-radius:50%; color:var(--white); background:radial-gradient(circle at 55% 35%,var(--blue-bright),var(--blue-dark) 72%); box-shadow:0 5px 0 var(--ink),0 0 18px rgba(255,201,31,.42); font-family:var(--display); font-size:34px; place-items:center; }
.member-nav > small { margin:8px 0 2px; color:var(--blue); font-size:8px; font-weight:900; letter-spacing:1.4px; }
.member-nav .button { width:100%; justify-content:space-between; }
.button-gallery { border-color:var(--blue-dark); color:var(--blue-dark); background:#eef5ff; box-shadow:0 5px 0 var(--blue-dark); }
.button-gallery:hover { color:var(--white); background:var(--blue); box-shadow:0 8px 0 var(--blue-dark),0 0 22px rgba(0,96,209,.3); transform:translateY(-3px); }
.member-tool-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.member-tool-card { position:relative; display:grid; min-height:190px; overflow:hidden; align-content:end; padding:23px; border:3px solid var(--ink); border-radius:21px; color:var(--ink); background:var(--white); box-shadow:0 7px 0 var(--ink); transition:transform .28s ease,box-shadow .28s ease; }
.member-tool-card::before { content:""; position:absolute; top:-45px; right:-35px; width:130px; height:130px; border:1px solid currentColor; border-radius:50%; opacity:.17; box-shadow:0 0 0 18px transparent,0 0 0 19px currentColor; }
.member-tool-card small { color:var(--blue); font-size:8px; font-weight:900; letter-spacing:1.25px; }
.member-tool-card strong { margin:7px 0; font-family:var(--display); font-size:26px; line-height:.95; }
.member-tool-card > span { max-width:180px; color:#687386; font-size:10px; line-height:1.45; }
.member-tool-card > b { position:absolute; top:19px; right:20px; font-size:20px; transition:transform .25s ease; }
.member-tool-card:hover { color:var(--ink); box-shadow:0 11px 0 var(--ink),0 24px 38px rgba(7,27,62,.16); transform:translateY(-4px); }
.member-tool-card:hover > b { transform:translate(3px,-3px); }
.member-tool-profile { color:var(--white); background:radial-gradient(circle at 75% 20%,var(--blue-bright),var(--blue-dark) 75%); }
.member-tool-profile small,.member-tool-profile > span { color:rgba(255,255,255,.72); }
.member-tool-profile:hover { color:var(--white); }
.member-tool-gallery { background:linear-gradient(135deg,#fff7ca,#ffc91f 72%); }
.member-tool-gallery small { color:var(--blue-dark); }
.member-callout { display:flex; flex-wrap:wrap; align-items:center; gap:8px 18px; }
.member-callout strong,.member-callout p { flex-basis:100%; }
.member-callout a { padding:7px 0; }

.platform-hero-actions { position:relative; z-index:2; display:flex; flex-wrap:wrap; justify-content:flex-end; gap:12px; }
.member-gallery-hero > div:first-child > p:last-child { max-width:650px; color:rgba(255,255,255,.7); }
.vendor-gallery-page { width:min(1180px,calc(100% - 48px)); }
.vendor-gallery-intro { max-width:720px; color:#687386; }
.vendor-gallery-help { display:grid; grid-template-columns:auto 1fr auto 1fr auto 1fr; align-items:center; gap:12px; margin:0 0 34px; padding:18px 20px; border-radius:15px; color:var(--white); background:var(--blue-dark); }
.vendor-gallery-help > span { display:grid; width:32px; height:32px; border-radius:50%; color:var(--blue-dark); background:var(--yellow); font-size:8px; font-weight:900; place-items:center; }
.vendor-gallery-help p { display:grid; gap:2px; margin:0; color:rgba(255,255,255,.63); font-size:9px; line-height:1.4; }
.vendor-gallery-help strong { color:var(--white); font-size:8px; letter-spacing:.8px; }
.vendor-gallery-page-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.vendor-gallery-page-grid a { color:var(--blue); font-size:9px; font-weight:900; }

/* A cleaner document-style editor surface. */
.vendor-rich-editor { overflow:visible; border:1px solid #c7cbd1; border-radius:12px; box-shadow:0 1px 2px rgba(60,64,67,.12),0 2px 6px rgba(60,64,67,.08); }
.vendor-editor-label { padding:13px 18px; border-radius:11px 11px 0 0; color:#202124; background:#fff; }
.vendor-editor-label strong { font-size:12px; }
.vendor-editor-label small { color:#6f747c; }
.vendor-editor-toolbar { position:sticky; z-index:8; top:106px; display:flex; align-items:center; flex-wrap:wrap; gap:4px; padding:7px 10px; border-block:1px solid #dadce0; background:#f8fafd; box-shadow:0 1px 2px rgba(60,64,67,.08); }
.has-event-bar .vendor-editor-toolbar { top:154px; }
.vendor-editor-toolbar > div { display:flex; align-items:center; gap:2px; }
.vendor-editor-divider { width:1px; height:26px; margin:0 4px; background:#d2d5da; }
.vendor-editor-toolbar button,.vendor-editor-toolbar select,.vendor-editor-colour { min-height:32px; margin:0; border:0; border-radius:6px; color:#303238; background:transparent; box-shadow:none; font-family:var(--body); font-size:10px; font-weight:600; }
.vendor-editor-toolbar select { height:32px; padding:5px 26px 5px 9px; border:1px solid transparent; }
.vendor-editor-selects select:first-child { width:112px; }
.vendor-editor-selects select:nth-child(2) { width:105px; }
.vendor-editor-selects select:nth-child(3) { width:102px; }
.vendor-editor-toolbar button { display:grid; min-width:32px; padding:5px 8px; place-items:center; }
.vendor-editor-toolbar button:hover,.vendor-editor-toolbar button:focus-visible,.vendor-editor-toolbar select:hover,.vendor-editor-toolbar select:focus { border-color:#c7cbd1; color:#202124; background:#e8eaed; box-shadow:none; outline:0; }
.vendor-editor-history button { font-size:18px; font-weight:400; }
.vendor-editor-format-buttons button { font-size:14px; }
.vendor-editor-layout-buttons button { min-width:38px; font-size:13px; }
.vendor-editor-insert-buttons button { padding-inline:10px; color:var(--blue); font-size:9px; font-weight:800; }
.vendor-editor-colour { display:grid; min-width:35px; padding:3px 6px; place-items:center; }
.vendor-editor-colour span { position:relative; line-height:16px; }
.vendor-editor-colour input { width:24px; height:5px; margin-top:-2px; }
.vendor-editor-canvas {
  display:block;
  width:100%;
  min-height:480px;
  height:560px;
  overflow:hidden;
  resize:vertical;
  padding:48px clamp(28px,7vw,78px);
  border-radius:0 0 11px 11px;
  background:#fff;
  box-shadow:inset 0 1px 0 #f1f3f4;
  line-height:1.8;
}
.vendor-editor-canvas:focus { box-shadow:inset 0 0 0 2px rgba(26,115,232,.18); }
.vendor-editor-image-tools { position:sticky; z-index:7; top:148px; border-bottom:1px solid #dadce0; background:#e8f0fe; }
.has-event-bar .vendor-editor-image-tools { top:196px; }
.vendor-editor-image-picker { border-bottom-color:#dadce0; background:#f8fafd; }
.vendor-editor-image-picker > button { color:#202124; background:#fff; border-color:#dadce0; }
.vendor-editor-image-picker p { color:#5f6368; }
.vendor-editor-image-picker p a { color:var(--blue); font-weight:800; }

@media (max-width:1050px) {
  .member-tool-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .vendor-editor-toolbar { position:relative; top:auto; }
  .has-event-bar .vendor-editor-toolbar { top:auto; }
  .vendor-editor-image-tools,.has-event-bar .vendor-editor-image-tools { position:relative; top:auto; }
  .vendor-gallery-help { grid-template-columns:auto 1fr; }
}
@media (max-width:700px) {
  .member-tool-grid { grid-template-columns:1fr; }
  .member-tool-card { min-height:155px; }
  .platform-hero-actions { width:100%; justify-content:flex-start; }
  .platform-hero-actions .button { flex:1; min-width:145px; }
  .vendor-gallery-page { width:calc(100% - 28px); }
  .vendor-gallery-page-grid { grid-template-columns:1fr; }
  .vendor-editor-toolbar { gap:5px; padding:8px; }
  .vendor-editor-toolbar > div { flex-wrap:wrap; }
  .vendor-editor-divider { display:none; }
  .vendor-editor-selects { width:100%; }
  .vendor-editor-selects select { flex:1; width:auto !important; min-width:92px; }
  .vendor-editor-canvas { min-height:430px; height:520px; padding:28px 18px; }
}

/* Member identity and tools belong to the Member Hub hero. */
.member-layout-full { grid-template-columns:1fr; width:min(1180px,calc(100% - 48px)); }
.member-hero-account {
  position:relative;
  z-index:2;
  display:grid;
  width:min(460px,42vw);
  gap:17px;
  padding:22px;
  border:2px solid rgba(255,255,255,.45);
  border-radius:24px;
  background:linear-gradient(135deg,rgba(7,27,62,.78),rgba(11,45,112,.58));
  box-shadow:0 10px 0 rgba(7,27,62,.58),0 25px 48px rgba(7,27,62,.28),inset 0 1px 0 rgba(255,255,255,.18);
  -webkit-backdrop-filter:blur(12px);
  backdrop-filter:blur(12px);
}
.member-hero-identity { position:relative; display:grid; grid-template-columns:64px minmax(0,1fr) 13px; align-items:center; gap:15px; }
.member-hero-account .member-avatar { width:64px; height:64px; margin:0; border-width:3px; font-size:29px; box-shadow:0 5px 0 rgba(4,17,40,.8),0 0 18px rgba(255,201,31,.45); }
.member-hero-identity > div:nth-child(2) { display:grid; min-width:0; }
.member-hero-identity small { color:var(--yellow); font-size:8px; font-weight:900; letter-spacing:1.3px; }
.member-hero-identity strong { margin:3px 0; overflow:hidden; font-family:var(--display); font-size:25px; line-height:1; text-overflow:ellipsis; white-space:nowrap; }
.member-hero-identity span { overflow:hidden; color:rgba(255,255,255,.64); font-size:10px; text-overflow:ellipsis; white-space:nowrap; }
.member-live-dot { width:11px; height:11px; border:2px solid rgba(255,255,255,.8); border-radius:50%; background:#29c972; box-shadow:0 0 0 4px rgba(41,201,114,.13),0 0 13px rgba(41,201,114,.75); animation:status-dot-pulse 2s ease-in-out infinite; }
.member-hero-account nav { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; padding-top:15px; border-top:1px solid rgba(255,255,255,.16); }
.member-hero-account nav .button { width:100%; min-height:47px; justify-content:space-between; padding:11px 14px; font-size:9px; }
.member-hero-button { border-color:rgba(255,255,255,.7); color:var(--white); background:rgba(35,136,255,.22); box-shadow:none; }
.member-hero-button:hover { color:var(--ink); background:var(--yellow); box-shadow:0 0 22px rgba(255,201,31,.45); transform:translateY(-2px); }
.member-hero-gallery { color:var(--blue-dark); background:var(--white); }
.member-hero-account > form { justify-self:start; }
.member-hero-logout { padding:3px 0; border:0; color:#ffb7b7; background:none; font-size:10px; font-weight:800; cursor:pointer; }
.member-hero-logout:hover { color:var(--white); text-shadow:0 0 12px rgba(255,120,120,.8); }

@media (max-width:900px) {
  .platform-hero.compact:has(.member-hero-account) { display:grid; min-height:0; gap:34px; align-items:end; padding-bottom:68px; }
  .member-hero-account { width:min(100%,620px); }
  .member-layout-full { width:calc(100% - 32px); }
}
@media (max-width:520px) {
  .platform-hero.compact:has(.member-hero-account) { gap:27px; padding-inline:16px; padding-bottom:55px; }
  .member-hero-account { gap:15px; padding:18px; border-radius:20px; }
  .member-hero-identity { grid-template-columns:55px minmax(0,1fr) 11px; gap:12px; }
  .member-hero-account .member-avatar { width:55px; height:55px; font-size:25px; }
  .member-hero-identity strong { font-size:21px; }
  .member-hero-account nav { grid-template-columns:1fr; }
  .member-layout-full { width:calc(100% - 28px); }
}

/* Full-width member control bar anchored to the hero edge. */
.platform-hero.compact:has(.member-hero-account) {
  min-height:500px;
  padding-bottom:158px;
}
.member-hero-account {
  position:absolute;
  inset:auto 0 0;
  width:100%;
  grid-template-columns:minmax(260px,1fr) auto auto;
  align-items:center;
  gap:28px;
  padding:18px max(6vw,28px);
  border:0;
  border-top:2px solid rgba(255,201,31,.82);
  border-radius:0;
  background:linear-gradient(90deg,rgba(7,27,62,.96),rgba(11,45,112,.92),rgba(7,27,62,.96));
  box-shadow:0 -12px 35px rgba(7,27,62,.2),inset 0 1px 0 rgba(255,255,255,.14);
  -webkit-backdrop-filter:blur(10px);
  backdrop-filter:blur(10px);
}
.member-hero-identity { max-width:430px; }
.member-hero-account nav {
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:9px;
  padding:0;
  border:0;
}
.member-hero-account nav .button { width:auto; min-width:145px; }
.member-hero-account > form { justify-self:end; }

@media (max-width:1050px) {
  .platform-hero.compact:has(.member-hero-account) {
    display:block;
    min-height:600px;
    padding-bottom:225px;
  }
  .member-hero-account {
    width:100%;
    grid-template-columns:minmax(0,1fr) auto;
    gap:14px 22px;
    padding:17px max(4vw,20px);
  }
  .member-hero-account nav {
    grid-column:1/-1;
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(145px,1fr));
  }
  .member-hero-account nav .button { width:100%; min-width:0; }
}
@media (max-width:520px) {
  .platform-hero.compact:has(.member-hero-account) {
    min-height:620px;
    padding-inline:16px;
    padding-bottom:235px;
  }
  .member-hero-account { gap:13px; padding:15px 16px 17px; }
  .member-hero-account nav { grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; }
  .member-hero-account nav .button { min-height:44px; padding:9px 11px; font-size:8px; }
  .member-hero-account > form { align-self:center; }
  .member-hero-logout { font-size:9px; }
}

/* Low-detail member overview: applications and events only. */
.member-summary-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.member-summary-panel { min-width:0; }
.member-summary-panel .panel-heading > a { color:var(--blue); font-size:9px; font-weight:900; }
.member-summary-panel .member-application-row:first-of-type { border-top:0; }
.member-event-list { display:grid; }
.member-event-list > a { position:relative; display:grid; grid-template-columns:minmax(0,1fr) minmax(110px,.55fr) 18px; align-items:center; gap:14px; padding:16px 0; border-top:1px solid var(--line); color:var(--ink); transition:padding .22s ease,color .22s ease; }
.member-event-list > a:first-child { border-top:0; }
.member-event-list > a:hover { padding-left:8px; color:var(--blue); }
.member-event-list div { display:grid; min-width:0; }
.member-event-list div strong { overflow:hidden; font-size:12px; text-overflow:ellipsis; white-space:nowrap; }
.member-event-list div span { margin-top:3px; color:#707988; font-size:9px; }
.member-event-list > a > b { overflow:hidden; color:#687386; font-size:9px; text-overflow:ellipsis; white-space:nowrap; }
.member-event-list > a > i { color:var(--blue); font-style:normal; }
.member-details-note { padding:18px; border-left:4px solid var(--yellow); border-radius:10px; background:#eef5ff; }
.member-details-note strong { color:var(--blue); font-size:8px; letter-spacing:1.2px; }
.member-details-note p { margin:5px 0 0; color:#687386; font-size:11px; }

@media (max-width:900px) {
  .member-summary-grid { grid-template-columns:1fr; }
}
@media (max-width:520px) {
  .member-event-list > a { grid-template-columns:minmax(0,1fr) 18px; }
  .member-event-list > a > b { grid-column:1/-1; grid-row:2; }
}

/* Member bar profile image, online position and clearer vendor imagery controls. */
.member-hero-identity { grid-template-columns:64px minmax(0,1fr); }
.member-hero-account .member-avatar { position:relative; }
.member-hero-account .member-avatar > img { width:100%; height:100%; border-radius:50%; object-fit:cover; }
.member-hero-account .member-avatar > span { display:grid; width:100%; height:100%; place-items:center; }
.member-avatar .member-live-dot { position:absolute; z-index:3; top:-5px; left:-5px; width:13px; height:13px; }
.member-hero-account nav .button { min-width:118px; padding-inline:12px; }
.vendor-branding-heading { grid-column:1/-1; display:flex; align-items:end; justify-content:space-between; gap:24px; padding:4px 2px 8px; }
.vendor-branding-heading > div { display:grid; gap:4px; }
.vendor-branding-heading small { color:var(--blue); font-size:8px; font-weight:900; letter-spacing:1.3px; }
.vendor-branding-heading strong { font-family:var(--display); font-size:25px; line-height:1; }
.vendor-branding-heading p { max-width:480px; margin:0; color:#687386; font-size:10px; line-height:1.55; }

@media (max-width:700px) {
  .vendor-branding-heading { display:grid; gap:8px; }
}
@media (max-width:520px) {
  .member-hero-identity { grid-template-columns:55px minmax(0,1fr); }
}

/* Keep the member controls below the hero title at every responsive size. */
.member-hero-identity {
  grid-column:1;
  grid-row:1;
}
.member-hero-account nav {
  grid-column:2;
  grid-row:1;
}
.member-hero-account > form {
  grid-column:3;
  grid-row:1;
}

@media (max-width:1050px) {
  .member-hero-account nav {
    grid-column:1/-1;
    grid-row:2;
  }
  .member-hero-account > form {
    grid-column:2;
    grid-row:1;
  }
}

@media (max-width:520px) {
  .platform-hero.compact:has(.member-hero-account) {
    min-height:650px;
    padding-bottom:300px;
  }
}
/* Branded errors and invisible spam trap. */
.form-trap { position:absolute!important; left:-10000px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
.error-stage { display:grid; min-height:70vh; padding:clamp(55px,8vw,110px) 20px; background:radial-gradient(circle at 70% 15%,rgba(35,136,255,.22),transparent 35%),var(--blue-dark); place-items:center; }
.error-card { display:grid; width:min(920px,100%); overflow:hidden; border:5px solid var(--ink); border-radius:30px; background:var(--white); box-shadow:0 14px 0 var(--yellow),0 30px 70px rgba(0,0,0,.32); grid-template-columns:minmax(240px,.78fr) 1.4fr; }
.error-card-code { display:grid; min-height:390px; align-content:center; justify-items:center; padding:35px; color:var(--white); background:radial-gradient(circle at 55% 80%,var(--blue-bright),var(--blue-dark) 72%); }
.error-card-code span { color:var(--yellow); font-size:10px; font-weight:900; letter-spacing:3px; }
.error-card-code strong { font-family:var(--display); font-size:clamp(92px,14vw,160px); line-height:.9; text-shadow:0 8px 0 rgba(0,0,0,.28); }
.error-card-code i { margin-top:25px; color:var(--yellow); font-size:34px; font-style:normal; }
.error-card-copy { display:flex; flex-direction:column; justify-content:center; padding:clamp(35px,6vw,70px); }
.error-card-copy h1 { margin:12px 0 18px; font-family:var(--display); font-size:clamp(42px,6vw,72px); line-height:.9; }
.error-card-copy > p:last-of-type { max-width:540px; color:#596579; line-height:1.75; }
.error-card-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:28px; }
@media (max-width:700px) { .error-card { grid-template-columns:1fr; } .error-card-code { min-height:230px; } .error-card-code strong { font-size:100px; } }

/* Event visitor information, enquiry details and account security. */
.event-visitor-information { margin:45px 0 80px; padding:clamp(28px,5vw,55px); border:3px solid var(--ink); border-radius:28px; background:#eef5ff; box-shadow:0 8px 0 var(--ink); }
.event-visitor-information > header { display:flex; align-items:end; justify-content:space-between; gap:25px; margin-bottom:30px; }
.event-visitor-information h2 { margin:8px 0 0; font-size:clamp(42px,5vw,68px); }
.event-visitor-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.event-visitor-grid article { position:relative; min-height:235px; padding:25px; overflow:hidden; border:2px solid var(--ink); border-radius:18px; background:var(--white); box-shadow:0 5px 0 var(--blue-dark); }
.event-visitor-grid article > span { position:absolute; top:13px; right:18px; color:rgba(0,96,209,.14); font-family:var(--display); font-size:72px; line-height:1; }
.event-visitor-grid small { color:var(--blue); font-size:8px; font-weight:900; letter-spacing:1.3px; }
.event-visitor-grid h3 { margin:10px 0 14px; font-family:var(--display); font-size:25px; }
.event-visitor-grid p { position:relative; white-space:pre-line; color:#596579; line-height:1.7; }
.account-security-banner { display:flex; align-items:center; justify-content:center; gap:18px; padding:13px 20px; color:var(--ink); background:var(--yellow); font-size:11px; }
.account-security-banner strong { font-family:var(--display); }
.account-security-banner a { color:var(--blue-dark); font-weight:900; }
.member-verification-form { margin-top:25px; padding-top:25px; border-top:2px solid rgba(18,26,39,.14); }
.enquiry-details { display:grid; gap:0; margin:24px 0; }
.enquiry-details > div { display:grid; grid-template-columns:125px 1fr; gap:15px; padding:13px 0; border-top:1px solid rgba(18,26,39,.13); }
.enquiry-details dt { color:#687386; font-size:9px; font-weight:900; letter-spacing:.7px; text-transform:uppercase; }
.enquiry-details dd { margin:0; overflow-wrap:anywhere; }
.enquiry-message { margin:20px 0; white-space:pre-line; color:#596579; line-height:1.75; }
.email-readiness-card { margin-top:25px; }
.email-readiness-card p { max-width:800px; color:#596579; line-height:1.7; }
@media (max-width:800px) { .event-visitor-information > header { align-items:start; flex-direction:column; } .event-visitor-grid { grid-template-columns:1fr; } .account-security-banner { align-items:start; flex-direction:column; gap:6px; } .enquiry-detail-grid { grid-template-columns:1fr; } }

/* Event floor plan lightbox. */
body.event-map-open { overflow:hidden; }
.event-map-dialog {
  width:min(96vw,1280px);
  max-width:none;
  max-height:94vh;
  margin:auto;
  padding:0;
  overflow:visible;
  color:var(--ink);
  border:0;
  border-radius:25px;
  background:transparent;
}
.event-map-dialog::backdrop { background:rgba(3,14,35,.88); backdrop-filter:blur(7px); }
.event-map-dialog[open] { animation:event-map-arrive .22s ease-out both; }
.event-map-panel {
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  max-height:94vh;
  overflow:hidden;
  border:3px solid var(--ink);
  border-radius:25px;
  background:var(--white);
  box-shadow:0 12px 0 rgba(0,0,0,.4),0 30px 80px rgba(0,0,0,.45);
}
.event-map-header { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:20px 24px; color:var(--white); background:var(--blue-dark); }
.event-map-header .eyebrow { margin:0 0 5px; }
.event-map-header h2 { margin:0; color:var(--yellow); font-family:var(--display); font-size:clamp(26px,4vw,42px); line-height:.95; }
.event-map-header > div > p:last-child { margin:7px 0 0; color:rgba(255,255,255,.74); font-size:12px; font-weight:700; }
.event-map-close { flex:0 0 auto; display:grid; place-items:center; width:48px; height:48px; padding:0; color:var(--ink); border:2px solid var(--ink); border-radius:50%; background:var(--yellow); box-shadow:0 4px 0 #000; font-size:31px; line-height:1; cursor:pointer; }
.event-map-close:hover { background:var(--white); transform:translateY(-1px); }
.event-map-scroll { overflow:auto; overscroll-behavior:contain; background:#f6f6f6; outline-offset:-4px; }
.event-map-scroll img { display:block; width:100%; height:auto; }
.event-map-footer { display:flex; align-items:center; justify-content:space-between; gap:22px; padding:15px 20px; border-top:2px solid var(--ink); background:#eef5ff; }
.event-map-footer p { margin:0; color:#596579; font-size:12px; font-weight:700; line-height:1.5; }
.event-map-footer .button { flex:0 0 auto; padding:13px 18px; }
@keyframes event-map-arrive { from { opacity:0; transform:translateY(12px) scale(.985); } to { opacity:1; transform:none; } }

@media (max-width:700px) {
  .event-map-dialog { width:96vw; max-height:92vh; }
  .event-map-panel { max-height:92vh; border-radius:19px; }
  .event-map-header { padding:16px; }
  .event-map-header .eyebrow { display:none; }
  .event-map-header > div > p:last-child { font-size:10px; }
  .event-map-close { width:42px; height:42px; }
  .event-map-scroll img { width:820px; max-width:none; }
  .event-map-footer { align-items:stretch; flex-direction:column; gap:10px; padding:12px 14px 14px; }
  .event-map-footer .button { width:100%; }
}

@media (prefers-reduced-motion:reduce) { .event-map-dialog[open] { animation:none; } }

/* Homepage event layouts adapt to one, two or three published events. */
.events-showcase { margin-top:55px; }
.events-showcase .events-grid { margin-top:0; }
.events-showcase.is-single {
  display:grid;
  grid-template-columns:minmax(500px,.94fr) minmax(430px,1.06fr);
  align-items:stretch;
  gap:clamp(28px,3.2vw,60px);
}
.events-showcase.is-single .events-grid { grid-template-columns:minmax(0,1fr); }
.events-count-0 { grid-template-columns:1fr; }
.events-count-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.events-count-1 .event-trading-card { height:100%; }

.single-event-companion {
  position:relative;
  display:grid;
  min-width:0;
  overflow:hidden;
  border:4px solid var(--ink);
  border-radius:28px;
  background:var(--cream);
  box-shadow:0 12px 0 var(--yellow),0 18px 0 var(--ink),0 34px 62px rgba(7,27,62,.17);
}
.single-event-companion-top {
  position:relative;
  display:grid;
  align-content:end;
  min-height:285px;
  padding:clamp(30px,4vw,54px);
  overflow:hidden;
  color:var(--white);
  background:radial-gradient(circle at 86% 20%,rgba(35,136,255,.75),transparent 34%),linear-gradient(135deg,var(--blue-dark),var(--blue));
}
.single-event-companion-top::before,
.single-event-companion-top::after {
  content:"";
  position:absolute;
  border:1px solid rgba(255,255,255,.18);
  border-radius:50%;
  pointer-events:none;
}
.single-event-companion-top::before { top:-170px; right:-100px; width:390px; height:390px; box-shadow:0 0 0 62px rgba(255,255,255,.035); }
.single-event-companion-top::after { bottom:-180px; left:-130px; width:330px; height:330px; }
.single-event-companion-top > * { position:relative; z-index:1; }
.single-event-companion-top .eyebrow { margin:0 0 22px; }
.single-event-companion-top h3 { max-width:690px; margin:0; font-family:var(--display); font-size:clamp(43px,4.35vw,73px); font-weight:900; line-height:.88; letter-spacing:-3px; }
.single-event-companion-top h3 em { color:var(--yellow); font-style:normal; }
.single-event-companion-top > p:last-child { max-width:670px; margin:22px 0 0; color:rgba(255,255,255,.76); font-size:13px; line-height:1.7; }
.single-event-number { position:absolute; z-index:1; top:27px; right:34px; color:rgba(255,255,255,.16); font-family:var(--display); font-size:72px; font-weight:900; line-height:1; }

.single-event-facts { display:grid; grid-template-columns:1.05fr 1fr .9fr; border-bottom:3px solid var(--ink); background:var(--yellow); }
.single-event-facts > div { display:grid; align-content:start; gap:7px; min-width:0; padding:23px 21px; border-right:2px solid rgba(18,26,39,.2); }
.single-event-facts > div:last-child { border-right:0; }
.single-event-facts span { color:var(--blue-dark); font-size:8px; font-weight:900; letter-spacing:1.35px; }
.single-event-facts strong { overflow-wrap:anywhere; font-size:11px; line-height:1.45; }

.single-event-vendors { display:grid; align-content:start; padding:clamp(26px,3.1vw,42px); background:var(--white); }
.single-event-vendors-heading { display:flex; align-items:end; justify-content:space-between; gap:20px; margin-bottom:18px; }
.single-event-vendors-heading > div { display:grid; gap:5px; }
.single-event-vendors-heading small { color:var(--blue); font-size:8px; font-weight:900; letter-spacing:1.35px; }
.single-event-vendors-heading strong { font-family:var(--display); font-size:clamp(22px,2vw,31px); line-height:1; }
.single-event-vendors-heading > a { flex:none; color:var(--blue); font-size:8px; font-weight:900; letter-spacing:.8px; }
.single-event-vendor-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); border:2px solid var(--ink); border-radius:17px; overflow:hidden; }
.single-event-vendor-list > a { display:grid; grid-template-columns:34px minmax(0,1fr) 15px; align-items:center; gap:10px; min-height:72px; padding:11px 13px; border-right:1px solid rgba(18,26,39,.18); border-bottom:1px solid rgba(18,26,39,.18); background:#fff; transition:color .2s ease,background .2s ease; }
.single-event-vendor-list > a:nth-child(2n) { border-right:0; }
.single-event-vendor-list > a:nth-last-child(-n+2) { border-bottom:0; }
.single-event-vendor-list > a:hover,
.single-event-vendor-list > a:focus-visible { color:var(--blue); background:#eef5ff; }
.single-event-vendor-list > a > span { display:grid; width:31px; height:31px; border:2px solid var(--ink); border-radius:50%; color:var(--ink); background:var(--yellow); font-size:8px; font-weight:900; place-items:center; }
.single-event-vendor-list > a > div { display:grid; min-width:0; gap:4px; }
.single-event-vendor-list strong,
.single-event-vendor-list small { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.single-event-vendor-list strong { font-family:var(--display); font-size:12px; }
.single-event-vendor-list small { color:#687386; font-size:7px; font-weight:800; letter-spacing:.55px; }
.single-event-vendor-list i { color:var(--blue); font-style:normal; }

.single-event-actions { display:flex; flex-wrap:wrap; align-items:center; gap:22px; padding:24px clamp(26px,3.1vw,42px) 30px; border-top:1px solid rgba(18,26,39,.14); background:var(--cream); }
.single-event-actions .button { flex:1 1 240px; justify-content:space-between; width:auto; }
.single-event-actions .text-link { flex:none; }

@media (max-width:1180px) {
  .events-showcase.is-single { grid-template-columns:1fr; width:min(100%,820px); margin-inline:auto; }
  .single-event-companion-top { min-height:255px; }
  .single-event-companion-top h3 { font-size:clamp(45px,7vw,68px); }
}
@media (min-width:821px) and (max-width:1180px) {
  .events-count-2 { width:min(100%,920px); margin-inline:auto; }
}
@media (max-width:720px) {
  .events-showcase { margin-top:50px; }
  .events-showcase.is-single { width:min(100%,430px); }
  .single-event-companion { border-radius:22px; box-shadow:0 9px 0 var(--yellow),0 14px 0 var(--ink),0 28px 46px rgba(7,27,62,.16); }
  .single-event-companion-top { min-height:270px; padding:30px 24px; }
  .single-event-companion-top h3 { font-size:43px; letter-spacing:-2px; }
  .single-event-number { top:24px; right:22px; font-size:52px; }
  .single-event-facts { grid-template-columns:1fr; }
  .single-event-facts > div { padding:16px 22px; border-right:0; border-bottom:1px solid rgba(18,26,39,.2); }
  .single-event-facts > div:last-child { border-bottom:0; }
  .single-event-vendors { padding:27px 20px; }
  .single-event-vendors-heading { align-items:start; flex-direction:column; gap:9px; }
  .single-event-vendor-list { grid-template-columns:1fr; }
  .single-event-vendor-list > a { border-right:0; }
  .single-event-vendor-list > a:nth-last-child(2) { border-bottom:1px solid rgba(18,26,39,.18); }
  .single-event-actions { align-items:stretch; flex-direction:column; padding:22px 20px 28px; }
  .single-event-actions .button { flex:auto; width:100%; }
  .single-event-actions .text-link { align-self:flex-start; }
}

/* Compact homepage event feature: keep the full story without a multi-screen card. */
.event-section-home.section-pad { padding-top:64px; padding-bottom:78px; }
.event-section-home .event-intro { align-items:center; }
.event-section-home .event-intro .eyebrow { margin-top:0; }
.event-section-home .event-intro h2 { font-size:clamp(48px,4.8vw,72px); line-height:.88; }
.event-section-home .event-intro-action { max-width:440px; }
.events-showcase { margin-top:32px; }
.events-showcase.is-single {
  grid-template-columns:minmax(470px,.88fr) minmax(520px,1.12fr);
  align-items:start;
  gap:clamp(24px,2.5vw,46px);
}
.events-count-1 .event-trading-card,
.events-count-2 .event-trading-card { min-height:0; }
.events-count-1 .event-trading-card .event-tile-top,
.events-count-2 .event-trading-card .event-tile-top { min-height:96px; padding:15px 17px 14px; }
.events-count-1 .event-card-heading,
.events-count-2 .event-card-heading { gap:8px; }
.events-count-1 .event-card-heading h3,
.events-count-2 .event-card-heading h3 { font-size:clamp(23px,2vw,31px); }
.events-count-1 .event-card-art,
.events-count-2 .event-card-art { aspect-ratio:2.05 / 1; }
.events-count-1 .event-trading-card .event-tile-body,
.events-count-2 .event-trading-card .event-tile-body { min-height:235px; padding:18px 20px 20px; }
.events-count-1 .event-trading-card .event-label,
.events-count-2 .event-trading-card .event-label { min-height:0; margin:0 0 8px; }
.events-count-1 .event-trading-card .event-tile-body > p:not(.event-label),
.events-count-2 .event-trading-card .event-tile-body > p:not(.event-label) { min-height:38px; margin:0; -webkit-line-clamp:2; }
.events-count-1 .event-trading-card .event-meta,
.events-count-2 .event-trading-card .event-meta { gap:6px; margin:12px 0 14px; padding:10px 0; }
.events-count-1 .event-trading-card .event-meta div,
.events-count-2 .event-trading-card .event-meta div { grid-template-columns:54px 1fr; gap:7px; }
.events-count-1 .event-trading-card .button,
.events-count-2 .event-trading-card .button { min-height:46px; padding-block:12px; }

.single-event-companion { align-self:start; }
.single-event-companion-top { min-height:220px; padding:28px clamp(30px,3vw,44px); }
.single-event-companion-top .eyebrow { margin-bottom:14px; }
.single-event-companion-top h3 { font-size:clamp(40px,3.45vw,58px); line-height:.88; letter-spacing:-2.5px; }
.single-event-companion-top > p:last-child { margin-top:13px; font-size:12px; line-height:1.55; }
.single-event-number { top:22px; right:28px; font-size:58px; }
.single-event-facts > div { padding:15px 17px; }
.single-event-vendors { padding:22px clamp(25px,2.7vw,38px); }
.single-event-vendors-heading { margin-bottom:13px; }
.single-event-vendors-heading strong { font-size:clamp(20px,1.65vw,27px); }
.single-event-vendor-list > a { min-height:58px; padding:8px 11px; }
.single-event-vendor-list > a > span { width:28px; height:28px; }
.single-event-actions { gap:18px; padding:17px clamp(25px,2.7vw,38px) 21px; }
.single-event-actions .button { min-height:48px; padding-block:12px; }

@media (max-width:1180px) {
  .event-section-home.section-pad { padding-top:58px; padding-bottom:70px; }
  .events-showcase.is-single { grid-template-columns:1fr; width:min(100%,760px); }
}
@media (max-width:720px) {
  .event-section-home.section-pad { padding-top:45px; padding-bottom:62px; }
  .event-section-home .event-intro h2 { font-size:46px; }
  .events-showcase { margin-top:27px; }
  .events-showcase.is-single { width:min(100%,430px); }
  .events-count-1 .event-card-art,
  .events-count-2 .event-card-art { aspect-ratio:1.75 / 1; }
  .events-count-1 .event-trading-card .event-tile-body,
  .events-count-2 .event-trading-card .event-tile-body { min-height:225px; padding:17px 18px 19px; }
  .single-event-companion-top { min-height:205px; padding:26px 22px; }
  .single-event-companion-top h3 { font-size:39px; }
  .single-event-facts { grid-template-columns:1fr 1fr; }
  .single-event-facts > div { padding:13px 16px; border-right:1px solid rgba(18,26,39,.2); }
  .single-event-facts > div:nth-child(2) { border-right:0; }
  .single-event-facts > div:last-child { grid-column:1/-1; border-right:0; }
  .single-event-vendors { padding:22px 18px; }
  .single-event-vendor-list > a { min-height:54px; }
  .single-event-vendor-list > a:nth-child(n+3) { display:none; }
  .single-event-vendor-list > a:nth-child(2) { border-bottom:0; }
  .single-event-actions { padding:17px 18px 21px; }
}

/* Account-linked enquiries and the member inbox */
.account-linked-note { display:grid; gap:5px; padding:18px 20px; border:2px solid var(--blue); border-radius:14px; background:#eef5ff; }
.account-linked-note small { color:var(--blue); font-size:8px; font-weight:900; letter-spacing:1.15px; }
.account-linked-note strong { font-family:var(--display); font-size:22px; }
.account-linked-note p { margin:0; color:#536174; font-size:12px; }
.account-linked-note a,.text-button { width:max-content; margin-top:5px; border:0; color:var(--blue); background:none; font:inherit; font-size:10px; font-weight:900; cursor:pointer; }
.text-button:hover,.account-linked-note a:hover { color:var(--ink); text-decoration:underline; }
.member-inbox-list { display:grid; }
.member-inbox-item { display:flex; justify-content:space-between; gap:25px; padding:22px 0; border-top:1px solid var(--line); }
.member-inbox-item:first-child { border-top:0; }
.member-inbox-item.is-unread { margin-inline:-12px; padding-inline:12px; border-radius:14px; background:#f1f7ff; }
.member-inbox-copy { display:grid; gap:7px; min-width:0; }
.member-inbox-copy > div { display:flex; align-items:center; gap:9px; }
.member-inbox-copy small { color:var(--blue); font-size:8px; font-weight:900; letter-spacing:1px; }
.member-inbox-copy h3 { margin:0; font-family:var(--display); font-size:22px; }
.member-inbox-copy p { margin:0; color:#596578; font-size:12px; line-height:1.6; }
.member-inbox-copy time { color:#798495; font-size:9px; font-weight:800; }
.inbox-unread { padding:4px 7px; border-radius:999px; color:var(--ink); background:var(--yellow); font-size:7px; font-weight:900; letter-spacing:.8px; }
.member-inbox-actions { display:flex; flex:0 0 auto; flex-direction:column; align-items:flex-end; gap:10px; }
.member-inbox-actions .button { margin:0; min-height:42px; padding:10px 13px; font-size:9px; }
.enquiry-conversion-card { align-self:start; }
.enquiry-conversion-card > p { color:#5b6676; line-height:1.6; }
/* Shared rebrand layout: keep the logo inside the fixed navigation row. */
.site-header, .site-header.is-scrolled {
  height: 96px;
  grid-template-rows: minmax(0, 1fr);
  padding-inline: max(6vw, 24px);
  background: #0060d1;
}
.site-header > .brand { min-width: 0; height: 100%; max-width: 100%; }
.site-header .brand-logo { width: 200px; height: 64px; max-width: 100%; object-fit: contain; object-position: left center; }
.site-header .header-actions { min-width: 0; align-self: center; }
.site-header .desktop-nav { align-self: center; gap: clamp(16px, 1.6vw, 32px); }
.site-header .header-cta { white-space: nowrap; }
.event-countdown-bar { padding-inline: max(6vw, 24px); }
body:not(.inner-page) .hero-content { width: min(1100px, 100%); min-width: 0; }
body:not(.inner-page) .hero h1, body:not(.inner-page) .hero-welcome { max-width: 1100px; font-size: clamp(42px, 5vw, 86px); line-height: 1.02; letter-spacing: -.045em; }
body:not(.inner-page) .hero-welcome { margin: 0 0 clamp(28px, 3vw, 48px); color: var(--white); font-family: var(--display); font-size: clamp(42px, 4.2vw, 78px); font-weight: 900; text-transform: uppercase; text-shadow: 0 4px 0 rgba(6,25,66,.24); white-space: nowrap; }
body:not(.inner-page) .hero-welcome span { color: var(--yellow); }
body:not(.inner-page) .hero h1 .hero-brand-line { color: var(--white); font-size: 1em; line-height: 1.02; letter-spacing: inherit; }
body:not(.inner-page) .hero-lead { max-width: 650px; }
body:not(.inner-page) .about .section-heading { grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: 24px 5vw; }
body:not(.inner-page) .about .section-heading h2 { font-size: clamp(36px, 4vw, 68px); overflow-wrap: break-word; }
.section-heading > *, .page-hero-copy, .experience-copy { min-width: 0; }
.about-universe-copy { min-width: 0; }
.about-universe h2 { font-size: clamp(36px, 4.2vw, 64px); overflow-wrap: break-word; }
@media (max-width: 1320px) {
  .site-header { grid-template-columns: minmax(0, 1fr) auto; gap: 16px; }
}
@media (max-width: 820px) {
  .site-header, .site-header.is-scrolled { height: 78px; padding-inline: 24px; }
  .site-header .brand-logo { width: 160px; height: 58px; }
  body:not(.inner-page) .hero h1, body:not(.inner-page) .hero-welcome { font-size: clamp(40px, 7.8vw, 62px); }
  body:not(.inner-page) .hero-welcome { white-space: normal; }
  body:not(.inner-page) .about .section-heading { display: block; }
}
@media (max-width: 620px) {
  .site-header, .site-header.is-scrolled { padding-inline: 12px; gap: 8px; }
  .site-header .brand-logo { width: clamp(100px, 32vw, 155px); height: 52px; }
  .event-countdown-bar { padding-inline: 12px; }
  body:not(.inner-page) .hero h1, body:not(.inner-page) .hero-welcome { font-size: clamp(34px, 8.8vw, 52px); }
  body:not(.inner-page) .hero { min-height: 700px; }
}
@media (max-width:620px) {
  .member-inbox-item { display:grid; gap:16px; }
  .member-inbox-actions { align-items:flex-start; }
  .member-inbox-item.is-unread { margin-inline:-5px; padding-inline:10px; }
}
