
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Manrope:wght@500;600;700;800&family=Playfair+Display:ital,wght@0,700;1,700&display=swap');

:root{
  --navy:#081a36;
  --navy2:#0b274f;
  --blue:#245f9f;
  --blue2:#4c9bd8;
  --cyan:#74d9f2;
  --gold:#ffc85a;
  --gold2:#ffdf8f;
  --violet:#8d7bff;
  --green:#5bd0a4;
  --paper:#f5f7fb;
  --paper2:#eef3f8;
  --white:#ffffff;
  --ink:#15213a;
  --muted:#6f7b8e;
  --line:#e3e9f2;
  --shadow:0 25px 70px rgba(9,32,66,.14);
  --shadow2:0 14px 34px rgba(9,32,66,.10);
  --radius:26px;
  --container:1240px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:#fff;
  color:var(--ink);
  font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
  line-height:1.6;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
button,input,textarea{font:inherit}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
.container{width:min(var(--container),calc(100% - 32px));margin:auto}
.hidden{display:none!important}
.cursor-orb{
  position:fixed;
  width:220px;height:220px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(84,164,232,.12),rgba(84,164,232,0) 70%);
  pointer-events:none;
  z-index:1;
  transform:translate(-50%,-50%);
  transition:width .2s,height .2s;
}

/* top */
.utility{
  position:relative;z-index:30;
  background:linear-gradient(90deg,#07162e,#0b2347,#07162e);
  color:#cfe0f1;
  font-size:11px;
}
.utility .container{
  min-height:35px;
  display:flex;align-items:center;justify-content:space-between;gap:20px
}
.utility-right{display:flex;gap:18px}
.utility a:hover{color:#fff}

/* header */
.header{
  position:sticky;top:0;z-index:80;
  background:rgba(255,255,255,.80);
  backdrop-filter:blur(22px);
  border-bottom:1px solid rgba(227,233,242,.82);
}
.nav{min-height:78px;display:flex;align-items:center;gap:22px}
.brand{
  margin-right:auto;
  display:flex;align-items:center;gap:11px;
  cursor:pointer;
}
.brand-badge{
  width:50px;height:50px;border-radius:15px;
  background:rgba(255,255,255,.96);
  border:1px solid rgba(227,233,242,.95);
  display:grid;place-items:center;
  padding:3px;overflow:hidden;
  box-shadow:0 10px 26px rgba(18,69,121,.12);
  flex:none;
}
.brand-badge img{width:100%;height:100%;object-fit:contain;display:block}
.brand b{
  display:block;
  font:800 14px/1.1 Manrope,sans-serif;
  color:var(--navy);
  letter-spacing:-.02em;
}
.brand small{
  display:block;margin-top:3px;
  color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.07em
}
.main-nav{
  display:flex;align-items:center;gap:7px;
  padding:5px;
  border:1px solid rgba(227,233,242,.95);
  border-radius:999px;
  background:rgba(255,255,255,.72);
  box-shadow:0 8px 24px rgba(13,42,76,.05);
}
.main-nav button{
  border:0;background:transparent;color:#536078;
  padding:9px 12px;border-radius:999px;
  font-size:12px;font-weight:800;transition:.18s
}
.main-nav button:hover{background:#f1f6fb;color:var(--blue)}
.main-nav button.active{
  background:linear-gradient(135deg,var(--blue),var(--navy2));
  color:#fff;
  box-shadow:0 8px 20px rgba(36,95,159,.18);
}
.nav-actions{display:flex;align-items:center;gap:9px}
.menu-btn{
  display:none;width:44px;height:44px;border-radius:14px;
  background:#fff;border:1px solid var(--line);color:var(--navy);font-size:20px
}
.mobile-nav{
  display:none;padding:9px 16px 18px;background:#fff;border-top:1px solid var(--line)
}
.mobile-nav.open{display:grid}
.mobile-nav button{
  border:0;background:none;text-align:left;padding:12px 2px;border-bottom:1px solid var(--line);
  color:var(--ink);font-weight:800
}

.academy-link{cursor:pointer}
.academy-link:hover{box-shadow:0 0 0 1px rgba(255,200,90,.30),0 18px 40px rgba(8,26,54,.16)}
.academy-nav{position:relative}

/* buttons */
.btn{
  min-height:44px;padding:0 18px;border-radius:13px;border:1px solid transparent;
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-size:12px;font-weight:800;transition:.2s ease
}
.btn:hover{transform:translateY(-2px)}
.btn-primary{
  background:linear-gradient(135deg,var(--blue),var(--navy2));color:#fff;
  box-shadow:0 12px 25px rgba(36,95,159,.20)
}
.btn-glass{
  background:rgba(255,255,255,.10);color:#fff;border-color:rgba(255,255,255,.16);
  backdrop-filter:blur(12px)
}
.btn-light{background:#fff;border-color:var(--line);color:var(--blue)}
.btn-gold{background:linear-gradient(135deg,var(--gold),var(--gold2));color:#443005;box-shadow:0 12px 26px rgba(255,200,90,.24)}
.btn-link{border:0;background:none;padding:0;color:var(--blue);font-weight:800}

/* HERO: asymmetric */
.hero{
  position:relative;
  min-height:690px;
  overflow:hidden;
  background:
    radial-gradient(circle at 76% 18%,rgba(114,217,242,.23),transparent 27%),
    radial-gradient(circle at 95% 76%,rgba(141,123,255,.19),transparent 30%),
    linear-gradient(135deg,#07172f 0%,#0b274f 56%,#123e6d 100%);
  color:#fff;
}
.hero-grid-lines{
  position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:55px 55px;
  mask-image:linear-gradient(90deg,#000 0%,rgba(0,0,0,.85) 55%,transparent 100%);
}
.blob{position:absolute;border-radius:50%;filter:blur(1px);opacity:.7;animation:floatBlob 9s ease-in-out infinite alternate}
.blob.one{width:340px;height:340px;background:radial-gradient(circle,rgba(78,159,224,.38),rgba(78,159,224,0) 68%);right:8%;top:5%}
.blob.two{width:300px;height:300px;background:radial-gradient(circle,rgba(255,200,90,.21),rgba(255,200,90,0) 70%);right:30%;bottom:-70px;animation-delay:1.5s}
.blob.three{width:260px;height:260px;background:radial-gradient(circle,rgba(141,123,255,.22),rgba(141,123,255,0) 70%);left:-80px;bottom:0;animation-delay:2.7s}
@keyframes floatBlob{from{transform:translate3d(-10px,-10px,0) scale(.96)}to{transform:translate3d(18px,16px,0) scale(1.04)}}

.hero-inner{
  position:relative;z-index:3;
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:40px;
  min-height:690px;
  align-items:center;
  padding:78px 0 84px;
}
.hero-copy-block{position:relative;z-index:4}
.hero-kicker{
  display:inline-flex;align-items:center;gap:9px;
  padding:7px 11px;border:1px solid rgba(255,255,255,.15);
  border-radius:999px;background:rgba(255,255,255,.07);
  color:#dce9f7;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.09em;
  backdrop-filter:blur(10px)
}
.hero-kicker:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 6px rgba(255,200,90,.10)}
.hero h1{
  margin:19px 0 22px;
  max-width:800px;
  font:800 clamp(46px,5.9vw,78px)/.99 Manrope,sans-serif;
  letter-spacing:-.055em;
}
.hero h1 em{
  font-family:"Playfair Display",serif;
  font-style:italic;
  color:#ffdd86;
  font-weight:700;
}
.hero-copy{
  max-width:670px;
  color:#c6d4e6;
  font-size:17px;
  line-height:1.72;
}
.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:27px}
.hero-micro{
  margin-top:28px;
  display:flex;align-items:center;gap:18px;flex-wrap:wrap;
  color:#9fb2c9;font-size:11px
}
.hero-micro span{display:flex;align-items:center;gap:7px}
.hero-micro i{width:7px;height:7px;border-radius:50%;background:var(--cyan);box-shadow:0 0 0 5px rgba(116,217,242,.08)}

/* floating collage */
.hero-collage{
  position:relative;
  min-height:520px;
  perspective:1200px;
}
.glass-card{
  position:absolute;
  border:1px solid rgba(255,255,255,.15);
  background:linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.07));
  box-shadow:0 25px 60px rgba(0,0,0,.20);
  backdrop-filter:blur(18px);
  color:#fff;
  overflow:hidden;
}
.glass-card.main{
  width:76%;right:4%;top:18%;
  border-radius:28px;padding:23px;
  transform:rotate(3deg);
}
.glass-card.small-a{
  width:43%;left:0;top:5%;
  border-radius:23px;padding:18px;
  transform:rotate(-7deg);
}
.glass-card.small-b{
  width:46%;left:6%;bottom:4%;
  border-radius:23px;padding:18px;
  transform:rotate(5deg);
}
.glass-card.small-c{
  width:34%;right:1%;bottom:3%;
  border-radius:23px;padding:17px;
  transform:rotate(-5deg);
}
.glass-head{display:flex;justify-content:space-between;gap:14px;align-items:center;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.11)}
.glass-head b{font-size:13px}
.live{display:flex;align-items:center;gap:6px;font-size:9px;color:#b7c7da;text-transform:uppercase;letter-spacing:.08em}
.live:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 5px rgba(91,208,164,.10)}
.activity-stack{display:grid;gap:9px;margin-top:13px}
.activity{
  display:grid;grid-template-columns:34px 1fr auto;gap:10px;align-items:center;
  padding:10px;border-radius:14px;background:rgba(255,255,255,.07)
}
.activity-icon{
  width:34px;height:34px;border-radius:11px;display:grid;place-items:center;
  background:rgba(255,255,255,.10);color:#ffdd86;font-weight:900;font-size:11px
}
.activity b{display:block;font-size:11px}.activity small{display:block;color:#aebfd4;font-size:9px;margin-top:2px}.activity span{font-size:9px;color:#cbd7e6}
.mini-stat{font:800 30px Manrope,sans-serif;line-height:1;color:#fff}
.mini-label{margin-top:8px;color:#b3c4d9;font-size:10px}
.progress{margin-top:13px;height:7px;border-radius:999px;background:rgba(255,255,255,.10);overflow:hidden}.progress i{display:block;height:100%;width:74%;background:linear-gradient(90deg,var(--gold),var(--cyan));border-radius:999px}
.float-chip{display:inline-flex;padding:6px 9px;border-radius:999px;background:rgba(255,255,255,.08);font-size:9px;color:#dce6f2}

/* marquee */
.marquee{
  position:relative;z-index:10;
  overflow:hidden;
  border-top:1px solid rgba(255,255,255,.07);
  border-bottom:1px solid rgba(255,255,255,.07);
  background:#0a213f;
  color:#cfe0f1;
}
.marquee-track{
  display:flex;gap:42px;
  min-width:max-content;
  padding:13px 0;
  animation:marquee 24s linear infinite;
  font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.09em
}
.marquee-track span:before{content:"✦";color:var(--gold);margin-right:42px}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* sections */
.section{padding:88px 0;position:relative}
.section-soft{background:var(--paper)}
.section-wash{
  background:
    radial-gradient(circle at 10% 20%,rgba(76,155,216,.11),transparent 23%),
    radial-gradient(circle at 90% 85%,rgba(141,123,255,.09),transparent 25%),
    #fff;
}
.heading{max-width:760px;margin-bottom:34px}
.heading-row{display:grid;grid-template-columns:.85fr 1.15fr;gap:45px;align-items:end;margin-bottom:38px}
.heading h2,.heading-row h2{
  margin:12px 0 10px;
  font:800 clamp(34px,4.3vw,50px)/1.05 Manrope,sans-serif;
  letter-spacing:-.04em;color:var(--navy)
}
.heading p,.heading-row p{margin:0;color:var(--muted)}
.eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  padding:7px 10px;border-radius:999px;
  background:#eaf4ff;border:1px solid #d7eafd;color:var(--blue);
  font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.07em
}
.eyebrow:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--gold)}

/* BENTO irregular */
.bento{
  display:grid;
  grid-template-columns:1.15fr .85fr .85fr;
  grid-template-rows:230px 230px;
  gap:16px;
}
.bento-card{
  position:relative;
  overflow:hidden;
  border-radius:26px;
  padding:25px;
  border:1px solid var(--line);
  background:#fff;
  transition:.25s ease;
}
.bento-card:hover{transform:translateY(-5px) rotate(.2deg);box-shadow:var(--shadow2)}
.bento-card h3{margin:15px 0 8px;font:800 20px/1.18 Manrope,sans-serif;color:var(--navy)}
.bento-card p{margin:0;color:var(--muted);font-size:12px;max-width:440px}
.bento-card.tall{
  grid-row:1/3;
  background:
    radial-gradient(circle at 85% 15%,rgba(255,200,90,.18),transparent 26%),
    linear-gradient(180deg,#fff,#f5f8fb)
}
.bento-card.tall h3{font-size:31px;margin-top:25px;max-width:440px}
.bento-card.dark{
  background:linear-gradient(145deg,#0c2e58,#091b38);
  border-color:transparent;color:#fff
}
.bento-card.dark h3{color:#fff}.bento-card.dark p{color:#b8c9dd}
.bento-card.gradient{
  background:linear-gradient(135deg,#7f6ef7,#4f94d1);
  border-color:transparent;color:#fff
}
.bento-card.gradient h3{color:#fff}.bento-card.gradient p{color:#eef2ff}
.bento-card.gold{
  background:linear-gradient(145deg,#ffd66f,#ffbf3e);
  border-color:transparent
}
.bento-card.gold p{color:#5e4814}
.decor-ring{
  position:absolute;width:220px;height:220px;border-radius:50%;border:1px solid rgba(17,50,86,.08);
  right:-80px;bottom:-110px;box-shadow:0 0 0 45px rgba(17,50,86,.02),0 0 0 90px rgba(17,50,86,.015)
}

/* numbers/stats */
.stats-ribbon{
  display:grid;grid-template-columns:repeat(4,1fr);gap:12px;
  margin-top:18px
}
.big-stat{
  position:relative;overflow:hidden;
  min-height:135px;padding:20px;border-radius:22px;
  background:#fff;border:1px solid var(--line)
}
.big-stat strong{
  display:block;font:800 38px/1 Manrope,sans-serif;color:var(--navy)
}
.big-stat span{display:block;margin-top:8px;color:var(--muted);font-size:11px}
.big-stat:after{
  content:"";position:absolute;width:80px;height:80px;border-radius:50%;
  right:-30px;top:-30px;background:rgba(76,155,216,.10)
}

/* spotlight events */
.spotlight{
  display:grid;grid-template-columns:1.05fr .95fr;gap:18px
}
.spot-main{
  min-height:400px;
  padding:30px;
  border-radius:30px;
  color:#fff;
  background:
    radial-gradient(circle at 85% 18%,rgba(255,200,90,.17),transparent 26%),
    linear-gradient(145deg,#0b2c55,#123e6e);
  position:relative;overflow:hidden
}
.spot-main h3{margin:20px 0 12px;font:800 32px/1.1 Manrope,sans-serif;max-width:580px}
.spot-main p{color:#c6d5e6;max-width:580px}
.spot-date{
  position:absolute;right:26px;bottom:22px;
  width:110px;height:110px;border-radius:26px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.08);backdrop-filter:blur(10px);
  display:grid;place-items:center;text-align:center
}
.spot-date b{font:800 34px/1 Manrope}.spot-date small{display:block;color:#b6c6da;text-transform:uppercase;font-size:9px;letter-spacing:.08em}
.spot-side{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.spot-card{
  border-radius:26px;padding:24px;border:1px solid var(--line);background:#fff;min-height:190px
}
.spot-card:nth-child(2){background:linear-gradient(145deg,#eef5ff,#fff)}
.spot-card:nth-child(3){grid-column:1/3;background:linear-gradient(145deg,#fff4d3,#fff);min-height:190px}
.spot-card h3{font-size:17px;margin:15px 0 8px;color:var(--navy)}.spot-card p{font-size:12px;color:var(--muted);margin:0}

/* publications horizontal */
.pub-wrap{position:relative}
.pub-scroll{
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:minmax(280px,360px);
  gap:14px;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  padding:4px 2px 14px;
  scrollbar-width:none;
}
.pub-scroll::-webkit-scrollbar{display:none}
.pub-card{
  scroll-snap-align:start;
  min-height:320px;
  border-radius:26px;
  padding:24px;
  border:1px solid var(--line);
  background:#fff;
  position:relative;
  overflow:hidden;
  transition:.24s
}
.pub-card:hover{transform:translateY(-5px);box-shadow:var(--shadow2)}
.pub-cover{
  height:120px;border-radius:18px;margin-bottom:18px;
  background:
    radial-gradient(circle at 80% 20%,rgba(255,255,255,.25),transparent 24%),
    linear-gradient(135deg,#245f9f,#0b274f);
  position:relative;overflow:hidden
}
.pub-cover.violet{background:linear-gradient(135deg,#7b69f1,#4f95d1)}
.pub-cover.gold{background:linear-gradient(135deg,#ffc85a,#f39d32)}
.pub-cover.green{background:linear-gradient(135deg,#5bd0a4,#2d7f7d)}
.pub-cover:after{
  content:"";position:absolute;right:-40px;bottom:-55px;width:130px;height:130px;border-radius:50%;
  border:1px solid rgba(255,255,255,.3);box-shadow:0 0 0 30px rgba(255,255,255,.05)
}
.pub-card h3{font-size:17px;margin:0 0 8px;color:var(--navy)}
.pub-card p{font-size:12px;color:var(--muted);margin:0}
.meta{display:flex;gap:6px;flex-wrap:wrap;margin-top:14px}
.meta span{padding:5px 7px;border-radius:8px;background:#f0f4f9;color:#647188;font-size:9px;font-weight:800}
.scroll-controls{display:flex;gap:8px;justify-content:flex-end;margin-bottom:12px}
.icon-btn{
  width:40px;height:40px;border-radius:12px;border:1px solid var(--line);background:#fff;color:var(--navy);font-weight:900
}
.icon-btn:hover{background:#f4f8fc}

/* page hero internal */
.page-hero{
  position:relative;overflow:hidden;
  padding:62px 0 52px;
  background:
    radial-gradient(circle at 86% 15%,rgba(76,155,216,.16),transparent 25%),
    linear-gradient(180deg,#f5faff,#fff);
  border-bottom:1px solid var(--line)
}
.page-hero:after{
  content:"";position:absolute;right:-150px;top:-200px;width:380px;height:380px;border-radius:50%;
  border:1px solid rgba(36,95,159,.08);box-shadow:0 0 0 55px rgba(36,95,159,.02)
}
.breadcrumbs{display:flex;gap:8px;flex-wrap:wrap;color:#7b8799;font-size:10px;font-weight:800}
.page-hero h1{
  max-width:900px;margin:18px 0 10px;
  font:800 clamp(38px,5vw,58px)/1.03 Manrope,sans-serif;letter-spacing:-.045em;color:var(--navy)
}
.page-hero p{max-width:800px;margin:0;color:var(--muted);font-size:15px}

/* generic cards/internal */
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.card{
  background:#fff;border:1px solid var(--line);border-radius:22px;padding:23px;transition:.22s
}
.card:hover{box-shadow:var(--shadow2);transform:translateY(-3px)}
.card-icon{
  width:42px;height:42px;border-radius:13px;background:#eaf4ff;color:var(--blue);
  display:grid;place-items:center;font-weight:900
}
.card h3{margin:16px 0 8px;color:var(--navy);font-size:17px}
.card p{margin:0;color:var(--muted);font-size:12px}
.card-link{display:inline-flex;margin-top:17px;border:0;background:none;color:var(--blue);padding:0;font-size:11px;font-weight:800}
.tag{
  display:inline-flex;padding:5px 8px;border-radius:999px;background:#f0f4f8;color:#667287;
  font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.05em
}
.person{display:flex;gap:16px;align-items:flex-start}
.avatar{
  width:60px;height:60px;border-radius:18px;background:linear-gradient(145deg,#e7f2ff,#fff);
  border:1px solid #dbe8f5;color:var(--blue);display:grid;place-items:center;font:800 16px Manrope;flex:none
}
.role{font-size:10px;font-weight:800;color:var(--blue);text-transform:uppercase;letter-spacing:.05em}
.timeline{display:grid;gap:14px}
.timeline-row{display:grid;grid-template-columns:44px 1fr;gap:12px}
.step{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,var(--blue),var(--navy2));color:#fff;font-weight:900}

/* publication filters */
.toolbar{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:18px}
.search{flex:1;min-width:250px;min-height:44px;border:1px solid var(--line);border-radius:13px;background:#fff;display:flex;align-items:center;gap:8px;padding:0 13px}
.search input{width:100%;border:0;outline:0;background:transparent}
.filters{display:flex;gap:7px;flex-wrap:wrap}
.filter{border:1px solid var(--line);background:#fff;color:#5e6a7e;border-radius:999px;padding:8px 11px;font-size:10px;font-weight:800}
.filter.active{background:linear-gradient(135deg,var(--blue),var(--navy2));border-color:transparent;color:#fff}

/* auth */
.auth-wrap{
  min-height:calc(100vh - 150px);display:grid;place-items:center;padding:56px 16px;
  background:
    radial-gradient(circle at 76% 18%,rgba(76,155,216,.16),transparent 26%),
    radial-gradient(circle at 22% 82%,rgba(141,123,255,.10),transparent 24%),
    var(--paper)
}
.auth-card{
  width:min(485px,100%);padding:29px;border-radius:28px;background:rgba(255,255,255,.90);
  border:1px solid var(--line);box-shadow:var(--shadow);backdrop-filter:blur(14px)
}
.auth-card h1{font:800 29px Manrope;color:var(--navy);margin:12px 0 7px}
.auth-card p{font-size:12px;color:var(--muted)}
.field{display:grid;gap:6px;margin:14px 0}
.field label{font-size:10px;font-weight:800;color:#526078;text-transform:uppercase;letter-spacing:.05em}
.field input,.field textarea,.field select{
  width:100%;padding:12px 13px;border:1px solid var(--line);border-radius:13px;outline:0;background:#fff
}
.field input:focus,.field textarea:focus,.field select:focus{border-color:#9ebada;box-shadow:0 0 0 3px #eaf4ff}
.note{margin:12px 0;padding:11px 12px;border:1px solid #f4e2aa;border-radius:12px;background:#fff7df;color:#6c5518;font-size:10px}

/* dashboard */
.dashboard{min-height:calc(100vh - 150px);padding:36px 0 64px;background:#f4f7fb}
.dash-head{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:18px}
.dash-head h1{margin:0;font:800 29px Manrope;color:var(--navy)}
.profile{
  display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;
  background:linear-gradient(145deg,#fff,#f9fbfd)
}
.profile-avatar{
  width:60px;height:60px;border-radius:18px;background:linear-gradient(145deg,var(--blue),var(--navy2));color:#fff;
  display:grid;place-items:center;font-weight:900
}
.dash-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0}
.dash-stat{padding:17px;border:1px solid var(--line);border-radius:18px;background:#fff}
.dash-stat span{font-size:10px;color:var(--muted)}.dash-stat b{display:block;margin-top:8px;font:800 21px Manrope;color:var(--navy)}
.dash-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:16px}

/* footer */
.footer{padding:50px 0 24px;background:#06162d;color:#aebfd2}
.footer-grid{display:grid;grid-template-columns:1.3fr repeat(3,.7fr);gap:32px}
.footer .brand b{color:#fff}.footer .brand small{color:#8fa5be}
.footer p{font-size:11px;max-width:420px}
.footer-col b{display:block;color:#fff;font-size:11px;text-transform:uppercase;letter-spacing:.06em}
.footer-col button{display:block;border:0;background:none;color:#aebfd2;padding:0;margin:9px 0;font-size:11px}
.footer-col button:hover{color:#fff}
.footer-bottom{margin-top:34px;padding-top:18px;border-top:1px solid rgba(255,255,255,.09);display:flex;justify-content:space-between;gap:20px;font-size:9px;color:#7188a2}

/* motion */
.reveal{opacity:0;transform:translateY(22px) scale(.99);transition:opacity .7s ease,transform .7s ease}
.reveal.visible{opacity:1;transform:none}
.tilt{transform-style:preserve-3d;will-change:transform}
.tilt > *{transform:translateZ(18px)}

@media(max-width:1100px){
  .main-nav{display:none}.menu-btn{display:block}
  .hero-inner{grid-template-columns:1fr;min-height:auto}.hero-collage{min-height:500px;max-width:760px}
  .bento{grid-template-columns:1fr 1fr;grid-template-rows:auto}.bento-card.tall{grid-row:auto}
  .heading-row{grid-template-columns:1fr;gap:16px}
  .stats-ribbon{grid-template-columns:1fr 1fr}
  .spotlight{grid-template-columns:1fr}
  .grid-4{grid-template-columns:1fr 1fr}.grid-3{grid-template-columns:1fr 1fr}
  .footer-grid{grid-template-columns:1.1fr 1fr 1fr}.footer-col:last-child{grid-column:2/4}
  .dash-grid{grid-template-columns:1fr}
}
@media(max-width:720px){
  .cursor-orb{display:none}
  .container{width:min(100% - 22px,var(--container))}
  .utility .container{justify-content:center;text-align:center}.utility-right{display:none}
  .nav{min-height:70px;gap:8px}.brand-badge{width:43px;height:43px}.brand b{font-size:12px}.brand small{display:none}
  .nav-actions .btn{display:none}
  .hero{min-height:auto}.hero-inner{padding:50px 0 64px;gap:28px}.hero h1{font-size:46px}.hero-copy{font-size:15px}
  .hero-collage{min-height:465px}.glass-card.main{width:88%;right:0;top:18%;transform:rotate(2deg)}
  .glass-card.small-a{width:52%;left:0}.glass-card.small-b{width:55%;left:2%}.glass-card.small-c{width:43%;right:0}
  .section{padding:66px 0}.heading h2,.heading-row h2{font-size:39px}
  .bento,.grid-4,.grid-3,.grid-2{grid-template-columns:1fr}
  .stats-ribbon{grid-template-columns:1fr 1fr}
  .spot-side{grid-template-columns:1fr}.spot-card:nth-child(3){grid-column:auto}
  .page-hero{padding:45px 0 38px}.page-hero h1{font-size:41px}
  .footer-grid{grid-template-columns:1fr}.footer-col:last-child{grid-column:auto}.footer-bottom{flex-direction:column}
  .dash-stats{grid-template-columns:1fr 1fr}.profile{grid-template-columns:auto 1fr}
}

/* V2.2 — real content from the current public site */
.clickable{cursor:pointer}
.activity.clickable:hover{background:rgba(255,255,255,.12);transform:translateX(3px)}

.monograph-feature{
  display:grid;grid-template-columns:minmax(230px,340px) 1fr;gap:42px;align-items:center;
  padding:32px;border:1px solid var(--line);border-radius:32px;
  background:
    radial-gradient(circle at 88% 12%,rgba(76,155,216,.14),transparent 26%),
    radial-gradient(circle at 8% 88%,rgba(255,200,90,.10),transparent 24%),
    linear-gradient(145deg,#fff,#f7f9fc);
  box-shadow:var(--shadow2);overflow:hidden;position:relative
}
.monograph-feature:after{
  content:"";position:absolute;right:-90px;bottom:-130px;width:320px;height:320px;border-radius:50%;
  border:1px solid rgba(36,95,159,.07);box-shadow:0 0 0 55px rgba(36,95,159,.018),0 0 0 110px rgba(36,95,159,.012)
}
.monograph-cover-wrap{position:relative;z-index:2;display:grid;place-items:center}
.monograph-cover-wrap img{
  width:min(100%,300px);aspect-ratio:660/940;object-fit:cover;border-radius:8px 18px 18px 8px;
  box-shadow:0 28px 55px rgba(5,31,65,.22);transform:rotate(-2deg);transition:.25s
}
.monograph-cover-wrap img:hover{transform:rotate(0) translateY(-4px)}
.monograph-copy{position:relative;z-index:2;max-width:720px}
.monograph-copy h3{margin:16px 0 10px;font:800 clamp(28px,3.4vw,44px)/1.08 Manrope,sans-serif;letter-spacing:-.035em;color:var(--navy)}
.monograph-copy p{color:var(--muted);margin:6px 0}.monograph-copy .monograph-author{font-size:16px;color:var(--ink);font-weight:800}
.monograph-meta{margin-top:18px}.monograph-meta span{font-size:10px;padding:7px 9px}

.governance-photo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.governance-photo-card{
  background:#fff;border:1px solid var(--line);border-radius:26px;overflow:hidden;box-shadow:0 10px 28px rgba(8,31,63,.07);transition:.24s
}
.governance-photo-card:hover{transform:translateY(-6px);box-shadow:var(--shadow2)}
.governance-photo{height:310px;background:linear-gradient(145deg,#e8f1fa,#f9fbfd);overflow:hidden;position:relative}
.governance-photo:after{content:"";position:absolute;inset:auto 0 0 0;height:34%;background:linear-gradient(180deg,transparent,rgba(7,25,47,.12));pointer-events:none}
.governance-photo img{width:100%;height:100%;object-fit:cover;object-position:center 30%;transition:transform .35s ease}
.governance-photo-card:hover .governance-photo img{transform:scale(1.035)}
.governance-photo-copy{padding:19px 19px 21px}.governance-photo-copy h3{margin:7px 0 0;font:800 16px/1.28 Manrope,sans-serif;color:var(--navy)}
.governance-photo-copy p{margin:10px 0 0;color:var(--muted);font-size:11px}.governance-full .governance-photo{height:390px}
.center-action{display:flex;justify-content:center;margin-top:22px}

.partner-band{
  display:grid;grid-template-columns:.95fr 1.3fr auto;gap:28px;align-items:center;
  padding:30px;border-radius:30px;color:#fff;
  background:
    radial-gradient(circle at 83% 22%,rgba(255,200,90,.15),transparent 26%),
    linear-gradient(135deg,#0b2d56,#102d55 55%,#173d6e);
  box-shadow:var(--shadow)
}
.partner-band h3{margin:12px 0 8px;font:800 28px/1.1 Manrope,sans-serif}.partner-band p{margin:0;color:#c3d1e2;font-size:11px}
.partner-pills{display:grid;gap:10px}.partner-pill{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:center;padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12)}
.partner-pill>span{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:rgba(255,200,90,.16);color:var(--gold);font-weight:900}
.partner-pill b{display:block;font-size:10px;line-height:1.35}.partner-pill small{display:block;margin-top:3px;color:#9fb2c8;font-size:8px}
.partner-cta{display:flex;justify-content:center;margin-top:22px}.partner-card .role{display:block;margin-top:15px}

.publication-hero-card{
  display:grid;grid-template-columns:210px 1fr;gap:28px;align-items:center;padding:28px;border-radius:28px;border:1px solid var(--line);
  background:linear-gradient(145deg,#fff,#f6f9fc);box-shadow:var(--shadow2)
}
.publication-hero-cover img{width:100%;max-width:190px;border-radius:7px 15px 15px 7px;box-shadow:0 18px 38px rgba(8,31,63,.20);display:block;margin:auto}
.publication-hero-card h2{margin:12px 0 10px;font:800 34px/1.08 Manrope,sans-serif;letter-spacing:-.035em;color:var(--navy)}
.publication-hero-card p{color:var(--muted);font-size:12px}
.real-image-cover{background:#eef4fa!important;height:175px!important;display:grid;place-items:center}.real-image-cover:after{display:none}.real-image-cover img{height:100%;max-width:100%;object-fit:contain;filter:drop-shadow(0 10px 17px rgba(8,31,63,.18))}

@media(max-width:1100px){
  .governance-photo-grid{grid-template-columns:1fr 1fr}.partner-band{grid-template-columns:1fr 1fr}.partner-band>.btn{grid-column:1/3;justify-self:start}
}
@media(max-width:720px){
  .monograph-feature{grid-template-columns:1fr;padding:22px;gap:28px}.monograph-cover-wrap img{width:220px}.monograph-copy h3{font-size:31px}
  .governance-photo-grid{grid-template-columns:1fr 1fr;gap:10px}.governance-photo{height:240px}.governance-full .governance-photo{height:270px}.governance-photo-copy{padding:14px}.governance-photo-copy h3{font-size:13px}.governance-photo-copy p{display:none}
  .partner-band{grid-template-columns:1fr;padding:23px}.partner-band>.btn{grid-column:auto}.partner-band h3{font-size:25px}
  .publication-hero-card{grid-template-columns:1fr;padding:22px}.publication-hero-cover img{max-width:170px}.publication-hero-card h2{font-size:28px}
}


/* V2.3 — events, membership, conference archive, board profiles */
.profile-more{display:inline-flex;margin-top:12px;color:var(--blue);font-size:10px;font-weight:800}
.governance-photo-card.clickable{cursor:pointer}

.modal-open{overflow:hidden}
.profile-modal{position:fixed;inset:0;z-index:999;display:grid;place-items:center;padding:18px}
.profile-modal-backdrop{position:absolute;inset:0;background:rgba(3,16,35,.72);backdrop-filter:blur(9px)}
.profile-modal-card{position:relative;z-index:2;width:min(980px,100%);max-height:min(820px,calc(100vh - 36px));overflow:auto;background:#fff;border-radius:30px;box-shadow:0 35px 100px rgba(0,0,0,.32);border:1px solid rgba(255,255,255,.5)}
.profile-modal-close{position:absolute;right:15px;top:15px;z-index:4;width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:rgba(255,255,255,.9);color:var(--navy);font-size:25px;line-height:1}
.profile-modal-grid{display:grid;grid-template-columns:340px 1fr}
.profile-modal-photo{min-height:520px;background:#eaf1f8}.profile-modal-photo img{width:100%;height:100%;min-height:520px;object-fit:cover;object-position:center 25%}
.profile-modal-copy{padding:42px 40px}.profile-modal-copy h2{margin:8px 0 10px;font:800 34px/1.08 Manrope;color:var(--navy);letter-spacing:-.035em}.profile-modal-copy p{color:var(--muted);font-size:13px}.profile-modal-copy .profile-title{color:var(--ink);font-weight:700}.profile-modal-copy h4{margin:24px 0 9px;color:var(--navy)}
.profile-focus{display:flex;gap:7px;flex-wrap:wrap}.profile-focus span{padding:7px 9px;border-radius:999px;background:#edf5fd;color:var(--blue);font-size:9px;font-weight:800}

.announcement-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:17px}
.announcement-card{border:1px solid var(--line);border-radius:28px;background:#fff;padding:26px;box-shadow:0 12px 34px rgba(8,31,63,.08);transition:.22s}
.announcement-card:hover{transform:translateY(-4px);box-shadow:var(--shadow2)}
.announcement-primary{display:grid;grid-template-columns:190px 1fr;gap:24px;align-items:center;background:radial-gradient(circle at 90% 15%,rgba(255,200,90,.13),transparent 26%),linear-gradient(145deg,#fff,#f7f9fc)}
.announcement-art img{width:100%;max-height:260px;object-fit:contain;border-radius:8px;filter:drop-shadow(0 15px 25px rgba(8,31,63,.16))}
.announcement-card h3{margin:12px 0 8px;font:800 23px/1.12 Manrope;color:var(--navy);letter-spacing:-.025em}.announcement-card p{color:var(--muted);font-size:12px}
.announcement-meta{display:flex;gap:7px;flex-wrap:wrap;margin:13px 0}.announcement-meta span{font-size:9px;font-weight:800;background:#eef3f8;border-radius:999px;padding:6px 8px}
.event-status{display:inline-flex;padding:6px 9px;border-radius:999px;background:#eaf4ff;color:var(--blue);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.event-status.active{background:#fff0c7;color:#795804}.event-status.archived{background:#edf0f4;color:#5d6879}

.event-list{display:grid;gap:18px}
.event-feature{display:grid;grid-template-columns:170px 1fr;gap:28px;padding:27px;border:1px solid var(--line);border-radius:30px;background:#fff;box-shadow:0 12px 30px rgba(8,31,63,.07);align-items:center}
.event-badge-column{min-height:190px;border-radius:23px;background:linear-gradient(145deg,#7d6cf6,#3d81bd);color:#fff;display:grid;place-items:center;align-content:center;gap:14px}.event-badge-column b{font:800 66px/1 Manrope}.event-badge-column .event-status{background:rgba(255,255,255,.15);color:#fff}
.event-cover-column{display:grid;place-items:center}.event-cover-column img{width:135px;max-height:190px;object-fit:contain;border-radius:5px 12px 12px 5px;box-shadow:0 15px 30px rgba(8,31,63,.20)}
.event-feature-copy h2{margin:10px 0 9px;font:800 28px/1.1 Manrope;color:var(--navy);letter-spacing:-.03em}.event-feature-copy p{color:var(--muted);font-size:12px}

.membership-actions{display:grid;grid-template-columns:1fr 1fr;gap:16px}.membership-actions>div{padding:25px;border-radius:25px;border:1px solid var(--line);background:#fff}.membership-actions h3{margin:11px 0 7px;font:800 23px Manrope;color:var(--navy)}.membership-actions p{color:var(--muted);font-size:12px}

.members-privacy{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;padding:30px;border-radius:30px;background:radial-gradient(circle at 88% 18%,rgba(76,155,216,.14),transparent 25%),linear-gradient(145deg,#fff,#f6f9fc);border:1px solid var(--line)}
.members-privacy h2{margin:12px 0 8px;font:800 33px/1.08 Manrope;color:var(--navy)}.members-privacy p{max-width:820px;color:var(--muted);font-size:12px}.members-privacy-actions{display:grid;gap:9px;min-width:180px}

.join-intro{display:grid;grid-template-columns:1fr .8fr;gap:26px;align-items:center;padding:28px;border:1px solid var(--line);border-radius:30px;background:linear-gradient(145deg,#fff,#f7f9fc)}
.join-intro h2{margin:12px 0 8px;font:800 34px/1.08 Manrope;color:var(--navy)}.join-intro p{color:var(--muted);font-size:12px}
.join-mini-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.join-mini-cards div{padding:17px 12px;border-radius:17px;background:#fff;border:1px solid var(--line)}.join-mini-cards b{display:block;font:800 22px Manrope;color:var(--blue)}.join-mini-cards span{font-size:9px;color:var(--muted)}
.form-embed-wrap{margin-top:24px;border:1px solid var(--line);border-radius:26px;background:#fff;padding:10px;box-shadow:var(--shadow2);overflow:hidden}.form-embed-wrap iframe{width:100%;min-height:1250px;border:0;border-radius:18px}

.conference-archive{background:var(--paper)}
.conference-hero-card{display:grid;grid-template-columns:300px 1fr;gap:35px;align-items:center;padding:30px;border:1px solid var(--line);border-radius:32px;background:#fff;box-shadow:var(--shadow2)}
.conference-cover{display:grid;place-items:center}.conference-cover img{width:min(100%,260px);border-radius:7px 16px 16px 7px;box-shadow:0 24px 45px rgba(8,31,63,.20)}
.conference-copy h2{margin:13px 0 9px;font:800 35px/1.08 Manrope;color:var(--navy);letter-spacing:-.035em}.conference-copy p{color:var(--muted);font-size:12px}
.conference-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:18px 0}.conference-facts div{padding:14px;border-radius:15px;background:#f3f7fb}.conference-facts b{display:block;color:var(--navy);font:800 18px Manrope}.conference-facts span{font-size:9px;color:var(--muted)}
.conference-sections{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.conference-sections .card{min-height:155px}.conference-people .card{min-height:160px}

.current-event-card{padding:34px;border-radius:30px;color:#fff;background:radial-gradient(circle at 90% 20%,rgba(255,200,90,.16),transparent 28%),linear-gradient(145deg,#0b2d56,#173d70);box-shadow:var(--shadow)}
.current-event-card h2{margin:13px 0 9px;font:800 36px/1.08 Manrope}.current-event-card p{max-width:900px;color:#c5d4e5;font-size:13px}.current-event-card .event-status{background:rgba(255,255,255,.12);color:#fff}

.monograph-call-section{background:var(--paper)}
.monograph-call-hero{display:grid;grid-template-columns:280px 1fr;gap:36px;align-items:center;padding:30px;border:1px solid var(--line);border-radius:32px;background:#fff;box-shadow:var(--shadow2)}
.monograph-call-cover{display:grid;place-items:center}.monograph-call-cover img{width:min(100%,235px);border-radius:7px;box-shadow:0 20px 40px rgba(8,31,63,.16)}
.monograph-call-hero h2{margin:13px 0 8px;font:800 35px/1.08 Manrope;color:var(--navy);letter-spacing:-.035em}.monograph-call-hero p{font-size:12px;color:var(--muted)}
.call-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:18px 0}.call-facts div{padding:13px;border-radius:15px;background:#f3f7fb}.call-facts b{display:block;color:var(--navy);font:800 17px Manrope}.call-facts span{font-size:8px;color:var(--muted)}
.monograph-call-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:22px}.monograph-call-card{padding:24px;border:1px solid var(--line);border-radius:23px;background:#fff}.monograph-call-card h3{margin:12px 0 8px;font:800 18px/1.18 Manrope;color:var(--navy)}.monograph-call-card p{font-size:11px;color:var(--muted)}
.submission-note{display:grid;grid-template-columns:auto 1fr;gap:12px;margin-top:17px;padding:16px 18px;border-radius:16px;background:#fff7df;border:1px solid #f2dfaa;color:#644d13;font-size:10px}

.news-feature-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:16px}
.news-feature-card{padding:25px;border:1px solid var(--line);border-radius:26px;background:#fff;box-shadow:0 10px 26px rgba(8,31,63,.06);transition:.22s}.news-feature-card:hover{transform:translateY(-4px);box-shadow:var(--shadow2)}
.news-feature-card.main{grid-row:1/3;display:grid;grid-template-columns:220px 1fr;gap:24px;align-items:center;background:linear-gradient(145deg,#fff,#f8fafc)}
.news-feature-image img{width:100%;max-height:330px;object-fit:contain;filter:drop-shadow(0 14px 22px rgba(8,31,63,.14))}
.news-feature-card h2{margin:12px 0 8px;font:800 30px/1.08 Manrope;color:var(--navy)}.news-feature-card h3{margin:12px 0 8px;color:var(--navy)}.news-feature-card p{font-size:11px;color:var(--muted)}

@media(max-width:1100px){
 .announcement-grid{grid-template-columns:1fr}.event-feature{grid-template-columns:150px 1fr}
 .conference-sections{grid-template-columns:1fr 1fr}.call-facts{grid-template-columns:1fr 1fr}.monograph-call-grid{grid-template-columns:1fr}.news-feature-grid{grid-template-columns:1fr}.news-feature-card.main{grid-row:auto}
}
@media(max-width:720px){
 .profile-modal{padding:8px}.profile-modal-grid{grid-template-columns:1fr}.profile-modal-photo{min-height:300px;height:300px}.profile-modal-photo img{min-height:300px}.profile-modal-copy{padding:25px 20px}.profile-modal-copy h2{font-size:27px}
 .announcement-primary,.event-feature,.conference-hero-card,.monograph-call-hero,.join-intro,.members-privacy,.news-feature-card.main{grid-template-columns:1fr}
 .announcement-art img{max-height:230px}.event-badge-column{min-height:130px}.event-cover-column img{width:150px}
 .membership-actions{grid-template-columns:1fr}.join-mini-cards{grid-template-columns:1fr 1fr 1fr}.form-embed-wrap iframe{min-height:1450px}
 .conference-facts,.conference-sections,.call-facts{grid-template-columns:1fr 1fr}.conference-copy h2,.monograph-call-hero h2,.current-event-card h2{font-size:29px}
 .members-privacy-actions{min-width:0}.news-feature-card.main{gap:15px}.news-feature-image img{max-height:260px}
}

/* V2.3.1 hotfix */
.center-action{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
@media (min-width:1101px) and (max-width:1450px){
  .nav{gap:12px}
  .main-nav{gap:3px}
  .main-nav button{padding:8px 8px;font-size:10px}
  .nav-actions .btn-light{display:none}
}


/* V2.3.3 — real members catalogue */
.members-catalog-section{
  background:
    radial-gradient(circle at 8% 10%,rgba(76,155,216,.10),transparent 23%),
    radial-gradient(circle at 92% 78%,rgba(141,123,255,.08),transparent 24%),
    #f7f9fc;
}
.members-summary{
  display:grid;
  grid-template-columns:1fr auto;
  gap:28px;
  align-items:center;
  padding:29px;
  border-radius:30px;
  border:1px solid var(--line);
  background:linear-gradient(145deg,#fff,#f5f9fd);
  box-shadow:0 14px 38px rgba(8,31,63,.07);
}
.members-summary h2{
  margin:11px 0 8px;
  font:800 34px/1.08 Manrope,sans-serif;
  letter-spacing:-.035em;
  color:var(--navy)
}
.members-summary p{margin:0;max-width:860px;color:var(--muted);font-size:12px}
.members-summary-actions{display:grid;gap:9px;min-width:180px}

.members-stats{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:11px;
  margin:16px 0;
}
.members-stats>div{
  min-height:104px;
  padding:17px 18px;
  border-radius:20px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:0 8px 20px rgba(8,31,63,.04);
}
.members-stats b{
  display:block;
  font:800 29px/1 Manrope,sans-serif;
  color:var(--navy)
}
.members-stats span{display:block;margin-top:8px;color:var(--muted);font-size:9px}

.members-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  margin-top:24px;
  padding:13px;
  border:1px solid var(--line);
  border-radius:20px;
  background:rgba(255,255,255,.88);
  backdrop-filter:blur(10px);
  position:sticky;
  top:94px;
  z-index:25;
  box-shadow:0 10px 28px rgba(8,31,63,.07)
}
.members-search{
  flex:1;
  min-width:300px;
  height:46px;
  border:1px solid #d9e3ed;
  border-radius:14px;
  display:flex;
  align-items:center;
  gap:9px;
  padding:0 13px;
  background:#fff;
}
.members-search span{color:var(--blue);font-size:18px}
.members-search input{width:100%;border:0;outline:0;background:transparent;color:var(--ink)}
.member-filters{display:flex;gap:6px;flex-wrap:wrap}
.member-filter{
  min-height:38px;
  padding:0 11px;
  border:1px solid var(--line);
  border-radius:999px;
  background:#fff;
  color:#586579;
  font-size:9px;
  font-weight:800;
  transition:.18s;
}
.member-filter:hover{border-color:#bfd2e6;color:var(--blue)}
.member-filter.active{
  color:#fff;
  border-color:transparent;
  background:linear-gradient(135deg,var(--blue),var(--navy2));
  box-shadow:0 8px 18px rgba(36,95,159,.16)
}
.members-result-line{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:15px 2px 12px;
  color:var(--muted);
  font-size:10px;
  font-weight:700
}

.members-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
}
.member-card{
  min-height:330px;
  display:flex;
  flex-direction:column;
  padding:20px;
  border-radius:24px;
  border:1px solid var(--line);
  background:#fff;
  box-shadow:0 9px 23px rgba(8,31,63,.055);
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
  cursor:pointer;
}
.member-card:hover{
  transform:translateY(-5px);
  box-shadow:0 18px 40px rgba(8,31,63,.11);
  border-color:#c9dbea;
}
.member-card-top{display:flex;gap:13px;align-items:flex-start}
.member-avatar{
  width:57px;height:57px;border-radius:18px;flex:none;
  display:grid;place-items:center;
  color:#fff;
  font:800 16px Manrope,sans-serif;
  background:
    radial-gradient(circle at 25% 20%,rgba(255,255,255,.22),transparent 34%),
    linear-gradient(145deg,#2b76ba,#0b315e);
  box-shadow:0 10px 22px rgba(21,79,138,.18)
}
.member-identity{min-width:0}
.member-type{
  display:inline-flex;
  padding:4px 7px;
  border-radius:999px;
  color:var(--blue);
  background:#eaf4ff;
  font-size:8px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.05em
}
.member-identity h3{
  margin:7px 0 4px;
  color:var(--navy);
  font:800 16px/1.18 Manrope,sans-serif
}
.member-identity p{margin:0;color:#59677b;font-size:9px;line-height:1.45}
.member-work{
  margin-top:16px;
  padding:12px 13px;
  border-radius:15px;
  background:#f6f9fc;
  border:1px solid #edf1f5;
}
.member-work span{display:block;color:#8a96a7;font-size:7px;text-transform:uppercase;font-weight:800;letter-spacing:.07em}
.member-work b{display:block;margin-top:4px;color:#314057;font-size:9px;line-height:1.42}
.member-location{margin-top:11px;color:#6b788b;font-size:9px}
.member-degree{margin-top:8px;color:#173d67;font-size:9px;font-weight:800}
.member-tags{display:flex;gap:5px;flex-wrap:wrap;margin-top:12px}
.member-tags span{
  padding:5px 7px;
  border-radius:8px;
  background:#eef4fa;
  color:#607087;
  font-size:7px;
  font-weight:700
}
.member-card-footer{
  margin-top:auto;
  padding-top:15px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  border-top:1px solid #edf1f5;
  color:#7b8798;
  font-size:8px;
  font-weight:800
}
.member-open{border:0;background:none;color:var(--blue);padding:0;font-size:9px;font-weight:800}
.members-empty{
  padding:55px 20px;
  text-align:center;
  border:1px dashed #cbd8e5;
  border-radius:24px;
  background:rgba(255,255,255,.65)
}
.members-empty-icon{font-size:30px;color:var(--blue)}
.members-empty h3{margin:10px 0 5px;color:var(--navy)}
.members-empty p{margin:0;color:var(--muted);font-size:10px}

/* member profile modal */
.member-modal{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:18px}
.member-modal-backdrop{position:absolute;inset:0;background:rgba(3,16,35,.74);backdrop-filter:blur(10px)}
.member-modal-card{
  position:relative;
  z-index:2;
  width:min(990px,100%);
  max-height:min(840px,calc(100vh - 36px));
  overflow:auto;
  border-radius:30px;
  border:1px solid rgba(255,255,255,.6);
  background:#fff;
  box-shadow:0 38px 110px rgba(0,0,0,.34)
}
.member-modal-close{
  position:absolute;right:15px;top:15px;z-index:3;
  width:42px;height:42px;border-radius:50%;
  border:1px solid var(--line);background:#fff;
  color:var(--navy);font-size:24px
}
.member-profile-head{
  display:flex;
  gap:18px;
  align-items:center;
  padding:34px 70px 28px 34px;
  color:#fff;
  background:
    radial-gradient(circle at 85% 10%,rgba(255,200,90,.20),transparent 28%),
    linear-gradient(145deg,#0b315e,#081a36)
}
.member-profile-avatar{
  width:82px;height:82px;border-radius:24px;flex:none;
  display:grid;place-items:center;
  font:800 23px Manrope,sans-serif;
  color:#0a315d;background:linear-gradient(145deg,#fff,#e5f1fc);
  box-shadow:0 16px 34px rgba(0,0,0,.18)
}
.member-profile-label{
  display:inline-flex;padding:5px 8px;border-radius:999px;
  color:#ffe09a;background:rgba(255,255,255,.10);
  font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.06em
}
.member-profile-head h2{margin:7px 0 5px;font:800 31px/1.06 Manrope,sans-serif;letter-spacing:-.03em}
.member-profile-head p{margin:0;color:#c4d3e3;font-size:11px}
.member-profile-body{display:grid;grid-template-columns:1fr 255px;gap:24px;padding:30px 34px 34px}
.member-profile-main{display:grid;gap:18px}
.member-profile-main section{padding-bottom:17px;border-bottom:1px solid #edf1f5}
.member-profile-main section:last-child{border-bottom:0}
.profile-kicker{display:block;margin-bottom:7px;color:#7b8797;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}
.member-profile-main h3{margin:0;color:var(--navy);font-size:16px}.member-profile-main p{margin:0;color:#5f6c7f;font-size:11px}
.member-profile-tags{display:flex;gap:6px;flex-wrap:wrap}
.member-profile-tags span{padding:6px 8px;border-radius:9px;background:#edf5fd;color:#245f9f;font-size:8px;font-weight:800}
.member-profile-list{display:grid;gap:8px}
.member-profile-list>div{display:grid;grid-template-columns:22px 1fr;gap:7px;align-items:start;color:#58677b;font-size:10px}
.member-profile-list i{width:20px;height:20px;border-radius:7px;background:#e9f7f1;color:#167c55;display:grid;place-items:center;font-style:normal;font-weight:900}
.member-profile-aside{display:grid;align-content:start;gap:10px}
.member-document-card{
  padding:20px;border-radius:20px;
  background:linear-gradient(145deg,#f7faff,#eef5fb);
  border:1px solid #dce8f2
}
.member-document-card b{display:block;margin:8px 0;color:var(--navy);font:800 17px Manrope,sans-serif}
.member-document-card p{color:#6f7c8e;font-size:9px}

@media(max-width:1100px){
  .members-stats{grid-template-columns:repeat(3,1fr)}
  .members-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:720px){
  .members-summary{grid-template-columns:1fr}
  .members-summary-actions{grid-template-columns:1fr 1fr;min-width:0}
  .members-stats{grid-template-columns:1fr 1fr}
  .members-toolbar{position:static}
  .members-search{min-width:100%}
  .members-grid{grid-template-columns:1fr}
  .member-modal{padding:7px}
  .member-profile-head{padding:28px 55px 24px 22px;align-items:flex-start}
  .member-profile-avatar{width:62px;height:62px;border-radius:19px;font-size:18px}
  .member-profile-head h2{font-size:24px}
  .member-profile-body{grid-template-columns:1fr;padding:24px 20px 28px}
}


/* V2.4 — promotion hub + NDR */
.promo-hub{background:linear-gradient(180deg,#f7f9fc,#eef3f8);padding-top:72px}
.promo-hub-head{display:grid;grid-template-columns:.95fr 1.05fr;gap:38px;align-items:end;margin-bottom:28px}
.promo-hub-head h2{margin:10px 0 0;font:800 clamp(34px,4vw,48px)/1.05 Manrope;color:var(--navy);letter-spacing:-.04em}
.promo-hub-head p{margin:0;color:var(--muted);font-size:13px}
.promo-hub-grid{display:grid;grid-template-columns:1.05fr 1.05fr .9fr;gap:16px}
.promo-super-card{position:relative;overflow:hidden;min-height:390px;border-radius:30px;padding:25px;color:#fff;box-shadow:0 22px 55px rgba(8,31,63,.18);border:1px solid rgba(255,255,255,.18);transition:.24s}
.promo-super-card:hover{transform:translateY(-6px);box-shadow:0 28px 70px rgba(8,31,63,.24)}
.promo-super-card:after{content:"";position:absolute;width:240px;height:240px;border-radius:50%;right:-100px;bottom:-120px;border:1px solid rgba(255,255,255,.18);box-shadow:0 0 0 45px rgba(255,255,255,.035),0 0 0 90px rgba(255,255,255,.02)}
.promo-super-card.conference{background:radial-gradient(circle at 90% 10%,rgba(255,205,104,.22),transparent 26%),linear-gradient(145deg,#092a55,#154f87)}
.promo-super-card.monographs{background:radial-gradient(circle at 85% 15%,rgba(255,255,255,.14),transparent 24%),linear-gradient(145deg,#6f57df,#356eae)}
.promo-super-card.academy{background:radial-gradient(circle at 82% 14%,rgba(116,217,242,.22),transparent 25%),linear-gradient(145deg,#0f6b73,#123c64)}
.promo-super-top{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center}
.promo-live{display:inline-flex;padding:7px 10px;border-radius:999px;background:rgba(91,208,164,.16);border:1px solid rgba(91,208,164,.3);color:#c8ffe9;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.promo-live.warm{background:rgba(255,216,117,.15);border-color:rgba(255,216,117,.3);color:#ffe8a8}.promo-live.academy-live{background:rgba(116,217,242,.15);border-color:rgba(116,217,242,.3);color:#d6f8ff}
.promo-number{font:800 46px/1 Manrope;color:#ffdc87}.promo-icon{width:50px;height:50px;border-radius:16px;background:rgba(255,255,255,.10);display:grid;place-items:center;font:800 17px Manrope}
.promo-super-copy{position:relative;z-index:2;margin-top:52px}.promo-kicker{display:block;color:#c8d8e9;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.promo-super-copy h3{margin:11px 0 9px;font:800 28px/1.08 Manrope;letter-spacing:-.03em}.promo-super-copy p{color:#cbd9e7;font-size:12px}
.promo-tags,.audience-grid{display:flex;gap:7px;flex-wrap:wrap;margin:15px 0}.promo-tags span,.audience-grid span{padding:6px 8px;border-radius:999px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.12);font-size:9px;font-weight:800}
.audience-grid{display:grid;grid-template-columns:repeat(3,1fr)}.audience-grid span{text-align:center;padding:10px 6px;border-radius:12px}
.promo-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}

.ndr-home-strip{padding:38px 0 74px;background:#eef3f8}
.ndr-home-card{display:grid;grid-template-columns:210px 1fr;gap:30px;align-items:center;padding:30px;border-radius:30px;background:radial-gradient(circle at 92% 18%,rgba(255,200,90,.16),transparent 25%),linear-gradient(145deg,#fff,#f8fafc);border:1px solid var(--line);box-shadow:var(--shadow2)}
.ndr-home-mark{min-height:170px;border-radius:24px;background:linear-gradient(145deg,#0b2e58,#123f70);color:#fff;display:grid;place-items:center;align-content:center;gap:8px;text-align:center}.ndr-home-mark span{font-size:12px;font-weight:800;color:#ffdb81}.ndr-home-mark b{font:800 21px Manrope}
.ndr-home-copy h2{margin:11px 0 7px;font:800 31px/1.08 Manrope;color:var(--navy);letter-spacing:-.03em}.ndr-home-copy p{font-size:12px;color:var(--muted)}

.ndr-page{background:var(--paper)}
.ndr-main-card{display:grid;grid-template-columns:270px 1fr;gap:32px;padding:30px;border:1px solid var(--line);border-radius:32px;background:#fff;box-shadow:var(--shadow2)}
.ndr-reg{border-radius:24px;background:linear-gradient(145deg,#0b2e58,#123f70);color:#fff;padding:24px;display:grid;align-content:center;gap:12px}.ndr-reg .eyebrow{width:max-content}.ndr-reg strong{font:800 30px Manrope;color:#ffdb81}.ndr-reg>span:not(.eyebrow){font-size:10px;color:#c5d4e5}
.ndr-main-copy h2{margin:13px 0 9px;font:800 34px/1.08 Manrope;color:var(--navy);letter-spacing:-.035em}.ndr-main-copy>p{font-size:12px;color:var(--muted)}
.ndr-meta-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-top:18px}.ndr-meta-grid div{padding:14px;border-radius:15px;background:#f3f7fb}.ndr-meta-grid b{display:block;font:800 15px Manrope;color:var(--navy)}.ndr-meta-grid span{font-size:9px;color:var(--muted)}
.ndr-details .card{min-height:180px}.ndr-orcid{margin-top:18px;padding:22px 24px;border-radius:23px;background:#fff;border:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:20px}.ndr-orcid h3{margin:9px 0 4px;color:var(--navy)}.ndr-orcid p{margin:0;color:var(--muted);font-size:11px}

@media(max-width:1100px){
 .promo-hub-grid{grid-template-columns:1fr 1fr}.promo-super-card.academy{grid-column:1/3;min-height:330px}
 .promo-hub-head{grid-template-columns:1fr;gap:12px}
}
@media(max-width:720px){
 .promo-hub-grid{grid-template-columns:1fr}.promo-super-card.academy{grid-column:auto}.promo-super-card{min-height:350px}.promo-super-copy{margin-top:36px}
 .ndr-home-card,.ndr-main-card{grid-template-columns:1fr}.ndr-home-mark{min-height:120px}.ndr-meta-grid{grid-template-columns:1fr}.audience-grid{grid-template-columns:1fr}.ndr-orcid{align-items:flex-start;flex-direction:column}
}


/* V2.4.1 — partner application */
.partner-actions{display:flex;gap:8px;flex-wrap:wrap}
.partner-cta{margin-top:22px;padding:28px;border-radius:28px;background:radial-gradient(circle at 88% 15%,rgba(255,200,90,.16),transparent 26%),linear-gradient(145deg,#0b2e58,#153f70);color:#fff;display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;box-shadow:var(--shadow2)}
.partner-cta .eyebrow{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.15);color:#fff}.partner-cta h2{margin:12px 0 8px;font:800 31px/1.08 Manrope}.partner-cta p{max-width:800px;color:#c7d5e5;font-size:12px}.partner-cta-actions{display:grid;gap:9px;min-width:220px}
.partner-application-section{background:var(--paper)}
.partner-application-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:22px;align-items:start}
.partner-application-intro{padding:30px;border-radius:30px;background:radial-gradient(circle at 86% 14%,rgba(255,200,90,.16),transparent 24%),linear-gradient(145deg,#0b2e58,#133f70);color:#fff;position:sticky;top:105px}
.partner-application-intro .eyebrow{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.15);color:#fff}.partner-application-intro h2{margin:13px 0 9px;font:800 34px/1.08 Manrope}.partner-application-intro>p{color:#c8d7e7;font-size:12px}
.partner-benefits{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:24px}.partner-benefits>div{padding:16px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(255,255,255,.07)}.partner-benefits span{display:inline-grid;place-items:center;width:31px;height:31px;border-radius:10px;background:rgba(255,216,117,.14);color:#ffdc81;font-weight:900;font-size:10px}.partner-benefits b{display:block;margin-top:10px;font-size:11px}.partner-benefits p{margin:5px 0 0;color:#b9c9da;font-size:9px}
.partner-form-card{padding:28px;border:1px solid var(--line);border-radius:28px;background:#fff;box-shadow:var(--shadow2)}
.form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.partner-form-card select{width:100%;padding:12px 13px;border:1px solid var(--line);border-radius:13px;background:#fff;color:var(--ink);outline:0}.partner-form-card select:focus{border-color:#9ebada;box-shadow:0 0 0 3px #eaf4ff}
.consent-row{display:flex;gap:9px;align-items:flex-start;margin:15px 0;color:var(--muted);font-size:9px;line-height:1.45}.consent-row input{margin-top:2px}.partner-form-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:12px}
@media(max-width:900px){.partner-cta,.partner-application-layout{grid-template-columns:1fr}.partner-application-intro{position:relative;top:auto}.partner-cta-actions{min-width:0}}
@media(max-width:620px){.form-grid-2,.partner-benefits{grid-template-columns:1fr}.partner-form-actions{display:grid}.partner-form-actions .btn{width:100%}}


/* V2.7 — live membership applications + certificate verification */
.join-status-line{display:flex;gap:9px;flex-wrap:wrap;align-items:center;margin-top:16px;color:#31506f;font-size:10px;font-weight:800}
.membership-form-shell{margin-top:24px;padding:30px;border:1px solid var(--line);border-radius:30px;background:linear-gradient(145deg,#fff,#f8fafc);box-shadow:var(--shadow2)}
.membership-form-head{display:flex;justify-content:space-between;gap:24px;align-items:center;padding-bottom:20px;margin-bottom:8px;border-bottom:1px solid var(--line)}
.membership-form-head h2{margin:10px 0 5px;font:800 31px/1.08 Manrope;color:var(--navy);letter-spacing:-.03em}
.membership-form-head p{margin:0;color:var(--muted);font-size:11px}
.membership-form-badge{width:96px;height:96px;flex:0 0 96px;border-radius:28px;background:linear-gradient(145deg,var(--navy),var(--blue));color:#fff;display:grid;place-items:center;align-content:center;box-shadow:0 14px 30px rgba(8,31,63,.18)}
.membership-form-badge b{font:900 27px Manrope}.membership-form-badge span{font-size:7px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;opacity:.8}
.membership-form{max-width:980px}
.membership-form .field textarea{resize:vertical;min-height:100px}
.membership-consents{margin-top:6px;padding:15px 17px;border-radius:18px;background:#f4f7fb;border:1px solid #e1e8f0}
.membership-consents .consent-row{margin:9px 0;font-size:10px}
.membership-submit-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:18px}
.membership-submit-hint{font-size:9px;color:var(--muted)}
.membership-submit:disabled{opacity:.6;cursor:wait;transform:none}
.hp-field{position:absolute!important;left:-99999px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.note.success{background:#edf9f3;border-color:#bfe7d2;color:#215d42}
.note.error{background:#fff0f0;border-color:#f1c5c5;color:#853737}

.verify-section{background:radial-gradient(circle at 85% 15%,rgba(76,155,216,.10),transparent 27%),var(--paper)}
.verify-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:20px;align-items:stretch}
.verify-search-card,.verify-result-wrap{min-height:390px;border:1px solid var(--line);border-radius:30px;background:#fff;box-shadow:0 12px 32px rgba(8,31,63,.07)}
.verify-search-card{padding:30px}
.verify-search-card h2{margin:11px 0 8px;font:800 31px/1.08 Manrope;color:var(--navy)}
.verify-search-card>p{color:var(--muted);font-size:12px;line-height:1.6}
.verify-form{margin-top:22px}
.verify-form .btn{width:100%}
.verify-micro{margin-top:18px;padding-top:15px;border-top:1px solid var(--line);color:#8995a5;font-size:9px}
.verify-result-wrap{padding:26px;display:grid;place-items:center;background:linear-gradient(145deg,#fff,#f8fafc)}
.verify-placeholder,.verify-loading{text-align:center;max-width:430px}
.verify-placeholder>span{width:62px;height:62px;margin:0 auto 15px;border-radius:20px;background:#eef5fb;color:var(--blue);display:grid;place-items:center;font:900 27px Manrope}
.verify-placeholder h3{margin:0 0 7px;font:800 25px Manrope;color:var(--navy)}.verify-placeholder p,.verify-loading p{color:var(--muted);font-size:11px}
.verify-loading{display:grid;place-items:center}.verify-loading b{margin-top:14px;color:var(--navy)}
.verify-spinner{width:48px;height:48px;border:4px solid #dce8f3;border-top-color:var(--blue);border-radius:50%;animation:verifySpin .75s linear infinite}
@keyframes verifySpin{to{transform:rotate(360deg)}}
.verify-status-card{width:100%;padding:10px 6px 4px;text-align:center}
.verify-status-icon{width:62px;height:62px;margin:0 auto 12px;border-radius:21px;display:grid;place-items:center;font:900 30px Manrope}
.verify-status-card.valid .verify-status-icon{background:#e8f8ef;color:#1f7b50}
.verify-status-card.invalid .verify-status-icon{background:#fff0f0;color:#a83d3d}
.verify-status-card.inactive .verify-status-icon{background:#fff5da;color:#8a6512}
.verify-status-label{display:inline-flex;padding:6px 9px;border-radius:999px;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.verify-status-card.valid .verify-status-label{background:#e8f8ef;color:#1f7b50}
.verify-status-card.invalid .verify-status-label{background:#fff0f0;color:#a83d3d}
.verify-status-card.inactive .verify-status-label{background:#fff5da;color:#8a6512}
.verify-status-card h2{margin:11px 0 8px;font:800 29px/1.08 Manrope;color:var(--navy)}
.verify-status-card>p{max-width:520px;margin:0 auto;color:var(--muted);font-size:11px}
.verify-person{margin:12px 0 20px;font:800 22px/1.2 Manrope;color:#244568}
.verify-details{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;text-align:left}
.verify-details div{padding:13px 14px;border:1px solid var(--line);border-radius:15px;background:#fff}
.verify-details span{display:block;margin-bottom:5px;color:#8a96a5;font-size:7px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.verify-details b{font-size:10px;color:var(--navy)}
.verify-actions{display:flex;justify-content:center;gap:9px;flex-wrap:wrap;margin-top:19px}

@media(max-width:820px){
  .verify-layout{grid-template-columns:1fr}
  .verify-search-card,.verify-result-wrap{min-height:auto}
}
@media(max-width:620px){
  .membership-form-shell{padding:20px}
  .membership-form-head{align-items:flex-start}
  .membership-form-badge{display:none}
  .membership-form-head h2{font-size:26px}
  .membership-submit-row{display:grid}
  .membership-submit-row .btn{width:100%}
  .verify-search-card,.verify-result-wrap{padding:20px}
  .verify-details{grid-template-columns:1fr}
}

/* Membership verification V3.0 — server-rendered Apps Script embed */
.verify-embed-shell{width:100%;display:flex;flex-direction:column;align-items:stretch;gap:8px}
.verify-embed-frame{display:block;width:100%;height:395px;border:0;background:transparent;border-radius:20px}
.verify-embed-fallback{align-self:center;color:#6d7f94;font-size:9px;text-decoration:none;padding:4px 8px;border-radius:8px}
.verify-embed-fallback:hover{color:var(--blue);text-decoration:underline}
@media(max-width:620px){.verify-embed-frame{height:520px}.verify-embed-fallback{font-size:8px}}

/* Membership dropdowns */
.membership-form .field select{
  width:100%;
  min-height:52px;
  padding:0 46px 0 16px;
  border:1px solid var(--line);
  border-radius:14px;
  background-color:#fff;
  color:var(--ink);
  font:inherit;
  appearance:none;
  -webkit-appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23073367' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 16px center;
  cursor:pointer;
}
.membership-form .field select:invalid{color:#718096}
.membership-form .select-other-input{margin-top:10px}

/* Membership multi-select dropdowns V3.5 */
.multi-select{position:relative;width:100%}
.multi-select-trigger{width:100%;min-height:52px;padding:12px 48px 12px 16px;border:1px solid var(--line);border-radius:14px;background:#fff;color:#718096;text-align:left;font:inherit;cursor:pointer;position:relative;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}
.multi-select-trigger:hover{border-color:#b9cce1}
.multi-select-trigger:focus{outline:none;border-color:#9ebada;box-shadow:0 0 0 3px #eaf4ff}
.multi-select-trigger.has-value{color:var(--ink);font-weight:650}
.multi-select-chevron{position:absolute;right:17px;top:50%;width:10px;height:10px;border-right:2px solid #073367;border-bottom:2px solid #073367;transform:translateY(-68%) rotate(45deg);transition:transform .18s ease}
.multi-select.open .multi-select-chevron{transform:translateY(-28%) rotate(225deg)}
.multi-select-menu{position:absolute;left:0;right:0;top:calc(100% + 8px);z-index:40;display:none;max-height:300px;overflow:auto;padding:8px;background:#fff;border:1px solid #d9e3ef;border-radius:16px;box-shadow:0 18px 50px rgba(7,51,103,.15)}
.multi-select.open .multi-select-menu{display:block}
.multi-select-option{display:flex;align-items:center;gap:10px;padding:10px 11px;border-radius:10px;color:var(--ink);font-size:11px;line-height:1.25;cursor:pointer;transition:background .15s ease,color .15s ease}
.multi-select-option:hover{background:#f1f6fc}
.multi-select-option input{width:17px!important;height:17px!important;min-height:auto!important;margin:0!important;padding:0!important;accent-color:#0a4f93;box-shadow:none!important;flex:0 0 auto}
.multi-select-option input:checked+span{font-weight:800;color:#073367}
.multi-select-other-option{border-top:1px solid #edf1f6;margin-top:5px;padding-top:12px}
.multi-select-other{margin-top:10px!important}
.multi-select-chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}
.multi-select-chips.hidden{display:none}
.multi-select-chips span{display:inline-flex;align-items:center;min-height:27px;padding:5px 9px;border:1px solid #d6e4f3;border-radius:999px;background:#eef6ff;color:#0b4f91;font-size:9px;font-weight:750;line-height:1.2}
@media(max-width:620px){
  .multi-select-menu{max-height:260px}
  .multi-select-option{font-size:10px;padding:10px}
  .multi-select-trigger{font-size:11px}
}

/* V4.0: cleaner content rhythm */
.governance-clean{padding-top:52px}
@media (max-width:700px){.governance-clean{padding-top:38px}}

/* V4.2 — native II conference page */
.conference2-native{background:linear-gradient(180deg,#f7faff 0%,#eef4fb 100%)}
.conference2-lead{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:26px;align-items:stretch;padding:34px;border:1px solid var(--line);border-radius:30px;background:#fff;box-shadow:var(--shadow2)}
.conference2-lead-copy h2{max-width:760px;margin:15px 0 13px;font:800 clamp(30px,4vw,50px)/1.03 Manrope;color:var(--navy);letter-spacing:-.045em}.conference2-lead-copy p{max-width:780px;color:var(--muted);font-size:13px;line-height:1.75}
.conference2-facts{display:grid;grid-template-columns:1fr 1fr;gap:12px}.conference2-facts div{padding:22px 18px;border-radius:20px;background:linear-gradient(145deg,#0b315f,#185a96);color:#fff;min-height:120px;display:flex;flex-direction:column;justify-content:flex-end}.conference2-facts span{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:#bcd1e6}.conference2-facts b{margin-top:7px;font:800 20px/1.15 Manrope}
.conference2-heading{margin-top:46px}.conference2-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.conference2-steps .card{min-height:180px}
.conference2-payment{margin-top:28px;display:grid;grid-template-columns:1fr 1fr;gap:28px;padding:28px;border-radius:26px;background:#082b55;color:#fff;box-shadow:var(--shadow2)}.conference2-payment h3{margin:8px 0 6px;font:800 32px Manrope}.conference2-payment p{color:#c1d0df;font-size:11px}.conference2-payment .eyebrow{color:#ffd36b}.conference2-bank{display:grid;gap:8px;padding:18px;border-radius:18px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12)}.conference2-bank span{font-size:8px;text-transform:uppercase;letter-spacing:.08em;color:#9eb7cf}.conference2-bank b{font-size:11px;line-height:1.45}
.conference2-registration{margin-top:34px;padding:34px;border:1px solid var(--line);border-radius:30px;background:#fff;box-shadow:var(--shadow2);scroll-margin-top:110px}.conference2-form-head{max-width:760px;margin-bottom:24px}.conference2-form-head h2{margin:8px 0;font:800 34px/1.08 Manrope;color:var(--navy);letter-spacing:-.035em}.conference2-form-head p{color:var(--muted);font-size:11px}.conference2-form .field{margin-bottom:15px}.conference2-form .field label small{font-weight:500;color:var(--muted)}.conference2-files{display:grid;grid-template-columns:1fr 1fr;gap:18px}.conference2-form input[type=file]{padding:14px;background:#f8fbff}.conference2-consent{display:flex;gap:10px;align-items:flex-start;margin:8px 0 20px;padding:14px;border-radius:15px;background:#f5f8fc;color:var(--muted);font-size:9px;line-height:1.55}.conference2-consent input{margin-top:2px}.conference2-submit{min-width:190px}
@media(max-width:900px){.conference2-lead,.conference2-payment{grid-template-columns:1fr}.conference2-steps{grid-template-columns:1fr 1fr}.conference2-files{grid-template-columns:1fr}}
@media(max-width:620px){.conference2-lead,.conference2-registration{padding:22px}.conference2-facts,.conference2-steps{grid-template-columns:1fr}.conference2-form-head h2{font-size:29px}}

/* V4.3 release candidate */
.conference-member-check{display:flex;gap:10px;align-items:stretch}.conference-member-check input{flex:1}.conference-member-check .btn{white-space:nowrap}.note.success{background:#edf9f1;border-color:#b8e2c6;color:#17653a}.note.error{background:#fff1f1;border-color:#f1c2c2;color:#a52a2a}@media(max-width:700px){.conference-member-check{flex-direction:column}}


/* V4.4 — Firebase member cabinets */
.cabinet-nav-btn{border-color:#cad9e8!important;background:linear-gradient(145deg,#fff,#f4f8fc)!important;color:var(--navy)!important}
.auth-card-wide{width:min(620px,100%)}
.auth-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:15px}
.auth-links{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-top:14px}
.auth-divider{display:flex;align-items:center;gap:12px;color:#9aa8b9;font-size:9px;text-transform:uppercase;letter-spacing:.08em;margin:17px 0}
.auth-divider:before,.auth-divider:after{content:"";height:1px;background:var(--line);flex:1}
.activation-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:20px 0 14px}
.activation-steps span{display:flex;align-items:center;gap:8px;padding:10px;border:1px solid var(--line);border-radius:13px;background:#f9fbfd;color:#5d6a7e;font-size:9px;font-weight:800}
.activation-steps b{width:24px;height:24px;border-radius:8px;display:grid;place-items:center;background:#eaf3fd;color:var(--blue)}
.auth-card button:disabled{opacity:.6;cursor:wait}
.cabinet-loading{width:min(520px,100%);margin:70px auto;padding:34px;text-align:center;background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow)}
.cabinet-loading b{display:block;margin:14px 0 4px;color:var(--navy);font:800 18px Manrope}.cabinet-loading p{margin:0;color:var(--muted);font-size:11px}
.spinner{display:inline-block;width:30px;height:30px;border:3px solid #dce8f4;border-top-color:var(--blue);border-radius:50%;animation:cabspin .8s linear infinite}@keyframes cabspin{to{transform:rotate(360deg)}}
.dash-head-actions{display:flex;gap:8px;flex-wrap:wrap}
.cabinet-profile .profile-email{font-size:10px;color:var(--muted);margin-top:4px;overflow-wrap:anywhere}
.profile-badges{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
.status-pill{display:inline-flex;padding:5px 8px;border-radius:999px;background:#eef2f7;color:#5f6d80;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.status-pill.active{background:#e8f8ef;color:#23714d}.status-pill.admin{background:#fff2cf;color:#7a5a0a}
.dash-member-number{font-size:15px!important;overflow-wrap:anywhere}
.cabinet-actions-list{display:grid;gap:8px;margin-top:14px}.cabinet-actions-list button{display:flex;justify-content:space-between;gap:12px;align-items:center;width:100%;border:1px solid var(--line);border-radius:13px;background:#fbfdff;padding:12px 13px;color:#2b4566;text-align:left;font-size:10px;font-weight:800}.cabinet-actions-list button:hover{border-color:#b8cde4;background:#f4f9ff}
.document-status{display:flex;align-items:center;gap:11px;padding:13px;border-radius:15px;margin:14px 0;background:#fff7e1;color:#775b17}.document-status>span{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:#fff;font-weight:900}.document-status b,.document-status small{display:block}.document-status small{font-size:9px;margin-top:3px;opacity:.72}.document-status.active{background:#eaf8f0;color:#236c49}
.verify-email-card{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:start}.verify-mail-icon{width:58px;height:58px;border-radius:18px;background:#eaf3fd;color:var(--blue);display:grid;place-items:center;font-size:24px}.verify-email-card h3{margin-top:4px}
.link-member-card{max-width:700px;margin-top:18px}
.admin-panel{margin-top:22px;padding:24px;border-radius:24px;background:linear-gradient(135deg,#071c38,#0d3563);color:#fff;box-shadow:0 18px 50px rgba(6,28,56,.17)}
.admin-panel-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.admin-panel .eyebrow{color:#f7ce65}.admin-panel h2{font:800 26px Manrope;margin:7px 0 5px}.admin-panel p{margin:0;color:#aac0d9;font-size:11px}.admin-shield{padding:8px 10px;border:1px solid rgba(255,255,255,.18);border-radius:10px;background:rgba(255,255,255,.08);font-size:9px;font-weight:900;letter-spacing:.12em}
.admin-tools{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:20px}.admin-tools button{min-height:105px;padding:15px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(255,255,255,.07);color:#fff;text-align:left}.admin-tools button:hover{background:rgba(255,255,255,.12)}.admin-tools b,.admin-tools span{display:block}.admin-tools b{font-size:11px}.admin-tools span{margin-top:9px;color:#9eb7d2;font-size:9px;line-height:1.5}
@media(max-width:900px){.admin-tools{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.activation-steps{grid-template-columns:1fr}.auth-links{align-items:flex-start;flex-direction:column}.dash-head{align-items:flex-start;flex-direction:column}.dash-head-actions{width:100%}.cabinet-profile{grid-template-columns:auto 1fr}.cabinet-profile>.btn{grid-column:1/-1;width:100%}.verify-email-card{grid-template-columns:1fr}.admin-panel-head{flex-direction:column}.admin-tools{grid-template-columns:1fr}.auth-actions .btn{flex:1}.dash-stats{grid-template-columns:1fr 1fr}}
@media(max-width:460px){.dash-stats{grid-template-columns:1fr}.auth-card{padding:23px 18px;border-radius:22px}}

/* V4.4.7 — admin member registry */
.admin-registry{margin-top:18px;padding:24px;overflow:hidden}
.admin-registry-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}
.admin-registry-head h2{font:800 25px Manrope;margin:7px 0 5px;color:var(--navy)}
.admin-registry-head p{margin:0;color:var(--muted);font-size:10px;line-height:1.55}
.admin-registry-loading,.admin-registry-error{min-height:160px;display:flex;align-items:center;justify-content:center;gap:15px;text-align:left;color:var(--navy)}
.admin-registry-loading b,.admin-registry-error b{display:block;font:800 16px Manrope}
.admin-registry-loading p,.admin-registry-error p{margin:4px 0 0;color:var(--muted);font-size:10px}
.admin-registry-error{flex-direction:column;text-align:center}
.admin-registry-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:18px 0}
.admin-registry-stats>div{padding:14px;border:1px solid var(--line);border-radius:15px;background:#f8fbff}
.admin-registry-stats span{display:block;color:var(--muted);font-size:9px}.admin-registry-stats b{display:block;margin-top:6px;color:var(--navy);font:800 22px Manrope}
.admin-registry-toolbar{display:flex;gap:14px;align-items:flex-end;justify-content:space-between;padding:14px;border:1px solid var(--line);border-radius:16px;background:#fbfdff}
.admin-search{min-width:280px;flex:1}.admin-search span{display:block;margin-bottom:6px;color:#627187;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.admin-search input{width:100%;border:1px solid #d9e4ef;border-radius:12px;padding:11px 12px;background:#fff;color:var(--navy);outline:none}.admin-search input:focus{border-color:#91b8df;box-shadow:0 0 0 3px rgba(69,136,201,.1)}
.admin-filters{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.admin-filter{border:1px solid #d7e2ed;border-radius:999px;padding:8px 10px;background:#fff;color:#53647a;font-size:9px;font-weight:850}.admin-filter.active{background:#0d3563;color:#fff;border-color:#0d3563}
.admin-registry-meta{margin:11px 2px 8px;color:var(--muted);font-size:9px}.admin-registry-meta b{color:var(--navy)}
.admin-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:16px;background:#fff}
.admin-members-table{width:100%;min-width:1120px;border-collapse:collapse;font-size:9px}
.admin-members-table th{position:sticky;top:0;z-index:1;padding:11px 12px;background:#f3f7fb;color:#66758a;text-align:left;text-transform:uppercase;letter-spacing:.04em;font-size:8px;border-bottom:1px solid var(--line)}
.admin-members-table td{padding:11px 12px;border-bottom:1px solid #edf2f7;color:#41526a;vertical-align:middle}.admin-members-table tr:last-child td{border-bottom:0}.admin-members-table tbody tr:hover{background:#f9fbfd}
.admin-member-name b,.admin-member-name small{display:block}.admin-member-name b{color:var(--navy);font-size:10px}.admin-member-name small{margin-top:3px;color:#8b98a9;font-size:8px}
.admin-cert{font-weight:850;color:#143f70;white-space:nowrap}.admin-email{white-space:nowrap;color:#52647a}
.admin-registry-status,.admin-cabinet-state{display:inline-flex;align-items:center;padding:5px 7px;border-radius:999px;font-size:8px;font-weight:850;white-space:nowrap;background:#eef2f6;color:#657387}
.admin-registry-status.active,.admin-cabinet-state.active{background:#e8f8ef;color:#23714d}.admin-registry-status.inactive{background:#fff0f0;color:#a83b3b}.admin-registry-status.pending{background:#fff7df;color:#7c6217}
.admin-row-actions{display:flex;gap:5px;flex-wrap:wrap}.admin-row-action{border:1px solid #d9e4ef;border-radius:8px;padding:6px 7px;background:#fff;color:#174d85;font-size:8px;font-weight:850;white-space:nowrap}.admin-row-action:hover{background:#edf5fd;border-color:#b8cfe7}
.admin-empty{padding:28px;text-align:center;color:var(--muted)}
@media(max-width:900px){.admin-registry-stats{grid-template-columns:1fr 1fr}.admin-registry-toolbar{align-items:stretch;flex-direction:column}.admin-search{min-width:0}.admin-filters{justify-content:flex-start}}
@media(max-width:600px){.admin-registry{padding:18px}.admin-registry-head{flex-direction:column}.admin-registry-head .btn{width:100%}.admin-registry-stats{grid-template-columns:1fr 1fr}.admin-filter{flex:1}.admin-filters{display:grid;grid-template-columns:1fr 1fr}}
@media(max-width:430px){.admin-registry-stats{grid-template-columns:1fr}.admin-filters{grid-template-columns:1fr}}

/* V4.4.10 — unified membership entry */
.membership-choice-actions{align-items:stretch}
.membership-choice-card{position:relative;overflow:hidden;box-shadow:0 16px 42px rgba(8,31,63,.08)}
.membership-choice-card:before{content:"";position:absolute;width:180px;height:180px;border-radius:50%;right:-70px;top:-80px;pointer-events:none}
.membership-choice-new:before{background:rgba(255,196,72,.13)}
.membership-choice-existing:before{background:rgba(25,103,181,.10)}
.membership-choice-meta{display:flex;gap:8px;flex-wrap:wrap;margin:15px 0 18px}
.membership-choice-meta span{display:inline-flex;padding:7px 9px;border-radius:999px;background:#f2f6fa;color:#31506f;font-size:9px;font-weight:800}
.membership-choice-card .btn{position:relative;z-index:1}
.membership-verify-link{display:inline-flex;margin-left:10px;margin-top:10px;color:var(--blue);font-weight:800}
.membership-process-note{margin-top:18px;padding:15px 18px;border:1px solid #d9e6f3;border-radius:17px;background:#f7fbff;color:#31506f;font-size:11px}
.membership-process-note b{color:var(--navy)}
@media(max-width:760px){.membership-verify-link{margin-left:0;display:flex}.membership-choice-meta{margin-bottom:15px}}


/* V4.4.11 — reliable membership application via embedded Google Form */
.membership-google-form-shell{overflow:hidden}
.membership-form-safety-note{margin:0 28px 18px;padding:14px 16px;border-radius:14px;background:#fff8e7;border:1px solid rgba(207,157,46,.28);color:#173a5e;line-height:1.55}
.membership-google-form-wrap{margin:0 18px 18px;border-radius:18px;overflow:hidden;background:#f7f9fc;border:1px solid rgba(18,62,105,.10)}
.membership-google-form{display:block;width:100%;min-height:2250px;border:0;background:#fff}
.membership-form-fallback{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 28px 28px;padding-top:6px;color:#48647f}
@media(max-width:760px){.membership-form-safety-note{margin:0 16px 14px}.membership-google-form-wrap{margin:0 8px 14px;border-radius:14px}.membership-google-form{min-height:2450px}.membership-form-fallback{margin:0 16px 20px;align-items:flex-start;flex-direction:column}}
