/* WAVO Global site styles: ported from the revamp design (index.html). */
:root{
    --ink:#0E1B33;
    --ink2:#16294A;
    --paper:#F6F6F1;
    --card:#FFFFFF;
    --line:#E4E1D6;
    --accent:#c7dcff;
    --accent-dark:#7790bb;
    --muted:#5C6B85;
    --radius:10px;
    --maxw:1280px;
    --header-h:130px;
  }
  *{box-sizing:border-box; margin:0; padding:0;}
  html{scroll-behavior:smooth;}
  body{font-family:'DM Sans',sans-serif; background:var(--paper); color:var(--ink); line-height:1.65; -webkit-font-smoothing:antialiased;}
    body {
    background-image: url(https://www.wavoglobal.org/img/global-network-connectivity-modern-city-skyline-sunset-65.jpg);
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    background-attachment: fixed;
}
section{background-color: rgba(255, 255, 255, 0.8);
    background-repeat: no-repeat;
    background-size: auto;}
  img{max-width:100%; display:block;}
  a{color:inherit; text-decoration:none;}
  ul{list-style:none;}
  .wrap{max-width:var(--maxw); margin:0 auto; padding:0 32px;}
  h1,h2,h3,h4{font-family:'Mona Sans',sans-serif; font-weight:800; line-height:1.12; letter-spacing:-0.02em;}
  .eyebrow{display:inline-flex; align-items:center; gap:10px; font-weight:700; font-size:13px; text-transform:uppercase; letter-spacing:.06em; color:var(--accent-dark); margin-bottom:16px;}
  .eyebrow img{width:20px; height:20px;}
  .btn{display:inline-flex; align-items:center; gap:10px; padding:15px 28px; font-weight:700; font-size:14px; border-radius:100px; border:1px solid transparent; cursor:pointer; transition:all .25s ease;}
  .btn-accent{background:var(--accent); color:var(--ink);}
  .btn-accent:hover{background:var(--accent-dark);}
  .btn-dark{background:var(--ink); color:#fff;}
  .btn-dark:hover{background:var(--ink2);}
  .btn-outline{border-color:var(--ink); color:var(--ink);}
  .btn-outline:hover{background:var(--ink); color:#fff;}
  .btn-outline-light{border-color:rgba(255,255,255,.4); color:#fff;}
  .btn-outline-light:hover{background:#fff; color:var(--ink);}
  section{padding:100px 0;}
  .section-head{display:flex; justify-content:space-between; align-items:flex-end; gap:40px; margin-bottom:52px; flex-wrap:wrap;}
  .section-head h2{font-size:clamp(28px,3.6vw,44px); max-width:600px;}
  .section-head p{max-width:380px; color:var(--muted); font-size:15px;}
  .pill-note{font-size:12.5px; color:var(--muted); border:1px dashed var(--line); border-radius:8px; padding:8px 14px; display:inline-block;}

  /* ===== HEADER ===== */
  .topbar{background:var(--ink); color:#B9C3D6; font-size:13px;}
  .topbar .wrap{display:flex; justify-content:space-between; padding:10px 32px; flex-wrap:wrap; gap:6px;}
  .topbar-left{display:flex; gap:24px; flex-wrap:wrap;}
  .topbar a:hover{color:var(--accent);}
  header.site{position:sticky; top:0; z-index:50; background:rgba(246,246,241,.94); backdrop-filter:blur(8px); border-bottom:1px solid var(--line);}
  .navrow{display:flex; align-items:center; justify-content:space-between; padding:18px 32px; gap:20px; position:relative;}
  .logo{display:flex; align-items:center; gap:10px; font-family:'Mona Sans'; font-weight:900; font-size:22px;}
  .logo .dot{width:10px; height:10px; border-radius:50%; background:var(--accent);}
  nav.primary{display:flex; gap:30px; align-items:center;}
  nav.primary a{font-size:14.5px; font-weight:600;}
  nav.primary a:hover{color:var(--accent-dark);}
  .nav-cta{display:flex; gap:12px; align-items:center;}
  .nav-cta .btn{padding:12px 22px; font-size:13.5px;}

  .hamburger{display:none; flex-direction:column; justify-content:center; gap:5px; width:38px; height:38px; background:none; border:none; cursor:pointer; padding:0; flex:none;}
  .hamburger span{display:block; width:100%; height:2px; background:var(--ink); border-radius:2px; transition:transform .25s ease, opacity .25s ease;}
  .hamburger.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
  .hamburger.is-open span:nth-child(2){opacity:0;}
  .hamburger.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

  .has-dropdown{position:relative; display:flex; flex-wrap:wrap; align-items:center; gap:2px;}
  .dropdown-toggle{background:none; border:none; padding:4px; cursor:pointer; display:flex; align-items:center; color:inherit;}
  .has-dropdown .caret{font-size:20px; transition:transform .2s ease; color:var(--muted);}
  .has-dropdown:hover .caret, .has-dropdown.open .caret{transform:rotate(180deg); color:var(--accent-dark);}
  .dropdown-menu{position:absolute; top:100%; left:0; margin-top:0px; background:var(--card); border:1px solid var(--line); border-radius:var(--radius); box-shadow:0 24px 48px -24px rgba(14,27,51,.3); min-width:250px; padding:10px; opacity:0; visibility:hidden; transform:translateY(6px); transition:opacity .2s ease, transform .2s ease; z-index:60;}
  .has-dropdown:hover .dropdown-menu, .has-dropdown.open .dropdown-menu{opacity:1; visibility:visible; transform:translateY(0);}
  .dropdown-menu a{display:block; padding:10px 14px; border-radius:8px; font-size:14px; font-weight:600; white-space:nowrap;}
  .dropdown-menu a:hover, .dropdown-menu a.current{background:var(--paper); color:var(--accent-dark);}

  /* ===== HERO ===== */
  .hero{position:relative; overflow:hidden; display:flex; align-items:center; min-height:100vh; min-height:calc(100vh - var(--header-h)); min-height:calc(100svh - var(--header-h)); padding:0px; box-sizing:border-box;}
  .hero > .wrap{width:100%;}
  .hero-shape{position:absolute; top:-60px; right:-80px; width:520px; opacity:.5; z-index:0; pointer-events:none;}
  .hero-follow{display:flex; align-items:center; gap:14px; margin-bottom:26px; font-size:12.5px; font-weight:700; letter-spacing:.08em; color:var(--muted); text-transform:uppercase;}
  .hero-follow .line{width:34px; height:1px; background:var(--ink);}
  .hero-grid{position:relative; z-index:1; display:grid; grid-template-columns:1.05fr .8fr; gap:50px; align-items:end; padding-bottom:56px;margin-top:20px;}
  .hero h1{font-size:clamp(40px,5.4vw,55px);}
  .hero h1 span{color:var(--accent-dark);}
  .hero p.lead{font-size:17px; color:var(--muted); max-width:100%; margin:22px 0 32px;}
  .hero-side{border-left:1px solid var(--line); padding-left:36px;}
  .hero-side p{font-size:14.5px; color:var(--muted); margin-bottom:20px;}
  .hero-about-grid{position:relative; z-index:1; display:grid; grid-template-columns:1fr 1fr; gap:60px; padding-bottom:56px; animation:heroUp .8s cubic-bezier(.22,.61,.36,1) both;}
  .hero-about-grid p{font-size:17px; color:var(--ink2); line-height:1.6;}
  @media (max-width:760px){ .hero-about-grid{grid-template-columns:1fr; gap:20px;} }

  /* ===== HERO VIDEO (slide 1 background, right side, gradient blend) ===== */
  .hero-video-media{position:absolute; top:0; right:0; bottom:0; width:60%; z-index:0; overflow:hidden; pointer-events:none;}
  .hero-video-media video{width:100%; height:100%; object-fit:cover; display:block;}
  .hero-video-fade{position:absolute; inset:0; background:linear-gradient(90deg, var(--paper) 0%, var(--paper) 8%, rgba(246,246,241,.92) 20%, rgba(246,246,241,.55) 34%, rgba(246,246,241,0) 52%); }
  .hero-video-fade::after{content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(246,246,241,.35) 0%, rgba(246,246,241,0) 18%, rgba(246,246,241,0) 78%, rgba(246,246,241,.5) 100%);}
  .hero-text-col{position:relative; z-index:1; max-width:640px;}
  @media (max-width:980px){
    .hero-video-mediae1213312{position:relative; width:100%; height:280px; top:auto; right:auto; bottom:auto; order:-1; margin-bottom:28px; border-radius:var(--radius);}
    .hero-video-media{width:100%;}
    .hero-video-fade{background:linear-gradient(0deg, var(--paper) 0%, rgba(246,246,241,.5) 22%, rgba(246,246,241,0) 55%);}
    .hero-video-fade::after{display:none;}
    .hero-text-col{max-width:100%;}
	.mobile-bg-white{
	background-color:rgb(255,255,255,0.9);padding: 10px;border-radius: 15px;
  }
  }
  @media (prefers-reduced-motion: reduce){ .hero-video-media video{display:none;} .hero-video-media{background:var(--paper);} }

  .marquee{background:var(--accent); overflow:hidden; padding:20px 0; position:relative; z-index:1;}
  .marquee-track{display:flex; width:max-content; animation:tick 46s linear infinite;}
  @keyframes tick{ from{transform:translateX(0);} to{transform:translateX(-50%);} }
  .marquee-item{display:flex; align-items:center; gap:18px; padding:0 26px; color:var(--ink); font-family:'Mona Sans'; font-weight:700; font-size:16px; white-space:nowrap;}
  .marquee-item img{width:20px; height:20px; opacity:.85;}
  @media (prefers-reduced-motion:reduce){ .marquee-track{animation:none;} }

  /* ===== ABOUT ===== */
  .about{position:relative; overflow:hidden;}
  .about-shape{position:absolute; left:-120px; bottom:-80px; width:420px; opacity:.5; z-index:0;}
  .about-grid{position:relative; z-index:1; display:grid; grid-template-columns:.9fr 1.1fr; gap:64px; align-items:center;}
  .about-media{position:relative;}
  .about-media .stack{    display: grid;
    grid-template-columns: 1fr;
    gap: 53px;}
  .about-media img{border-radius:var(--radius);}
  .about-badge{position:absolute; left:-24px; bottom:-24px; background:var(--card); border:1px solid var(--line); border-radius:var(--radius); padding:18px 22px; display:flex; align-items:center; gap:14px; box-shadow:0 20px 40px -20px rgba(14,27,51,.25);}
  .about-badge img{width:34px; height:34px;}
  .about-badge .num{font-family:'Mona Sans'; font-weight:900; font-size:22px;}
  .about-badge .lbl{font-size:12px; color:var(--muted);}
  .about-body h2{font-size:clamp(28px,3.4vw,40px); margin-bottom:20px;}
  .about-body p{color:var(--muted); margin-bottom:16px; max-width:600px;}
  .about-quote{margin-top:32px; background:var(--ink); color:#fff; border-radius:var(--radius); padding:28px 30px; display:flex; gap:18px; align-items:flex-start;}
  .about-quote img{width:36px;}
  .about-quote blockquote{font-family:'Mona Sans'; font-weight:600; font-size:17px; line-height:1.4;}
  .about-quote cite{display:block; margin-top:10px; font-family:'DM Sans'; font-style:normal; font-size:12.5px; color:#9FB0CC;}

  /* ===== SERVICES / PILLARS ===== */
  .services-top{display:flex; justify-content:space-between; align-items:flex-end; gap:30px; flex-wrap:wrap; margin-bottom:44px;}
  .badge-network{display:inline-flex; align-items:center; gap:12px; background:var(--card); border:1px solid var(--line); border-radius:100px; padding:8px 18px 8px 8px;}
  .badge-network img{width:34px; height:34px; border-radius:50%;}
  .badge-network span{font-size:13px; font-weight:700;}
  .pillar-list{display:flex; flex-direction:column; border-top:1px solid var(--line);}
  .pillar-row{display:grid; grid-template-columns:90px 1.4fr 1fr; gap:36px; align-items:center; padding:38px 20px; border-bottom:1px solid var(--line);background-color: rgb(255,255,255,.6);}
  .pillar-row .idx{font-family:'Mona Sans'; font-weight:900; font-size:34px; color:#8d8d8c;}
  .pillar-row h3{font-size:23px; margin-bottom:10px;}
  .pillar-row p{color:var(--ink); font-size:14.5px; max-width:460px;}
  .pillar-tags{display:flex; gap:10px; margin-top:14px; flex-wrap:wrap;}
  .pillar-tags span{display:inline-flex; align-items:center; gap:6px; font-size:12.5px; font-weight:600; color:var(--ink2); background:var(--paper); border:1px solid var(--line); border-radius:100px; padding:6px 12px;}
  .pillar-tags img{width:14px; height:14px;}
  .pillar-row .rlink{justify-self:end; font-weight:700; font-size:13.5px; color:var(--accent-dark); display:inline-flex; gap:6px;}

  /* ===== STAT BAND ===== */
  .stat-band{background:var(--ink); color:#fff;}
  .stat-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:#22375C;}
  .stat-cell{background:var(--ink); padding:40px 30px; text-align:center;}
  .stat-cell .num{font-family:'Mona Sans'; font-weight:900; font-size:38px; color:var(--accent);}
  .stat-cell .lbl{font-size:13px; color:#AAB6CC; margin-top:8px;}

  /* ===== VIDEO ===== */
  .video-sec{padding:0;}
  .video-wrap{position:relative; max-width:var(--maxw); margin:0 auto; border-radius:0; overflow:hidden;}
  .video-wrap video{width:100%; display:block; max-height:560px; object-fit:cover; background:#000;}
  .video-label{position:absolute; left:36px; bottom:32px; color:#fff; font-family:'Mona Sans'; font-weight:800; font-size:20px; text-shadow:0 2px 12px rgba(0,0,0,.5);}

  /* ===== FEATURES ===== */
  .feat-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:var(--line); border:1px solid var(--line); margin-bottom:56px;}
  .feat-cell{background:var(--card); padding:34px 26px;}
  .feat-cell img{width:38px; height:38px; margin-bottom:18px;}
  .feat-cell h4{font-size:16.5px; margin-bottom:10px;}
  .feat-cell p{font-size:13.5px; color:var(--muted);}
  .contact-strip{display:flex; justify-content:space-between; align-items:center; background:var(--ink); color:#fff; border-radius:var(--radius); padding:26px 36px; flex-wrap:wrap; gap:16px;}
  .contact-strip .who{display:flex; align-items:center; gap:16px;}
  .contact-strip img{width:40px; height:40px;}
  .contact-strip .lbl{font-size:12.5px; color:#9FB0CC;}
  .contact-strip .val{font-family:'Mona Sans'; font-weight:800; font-size:19px;}
  .partner-strip{display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:30px; margin-top:56px; padding-top:40px; border-top:1px solid var(--line);}
  .partner-strip span{font-family:'Mona Sans'; font-weight:800; font-size:17px; color:#9AA5B8; letter-spacing:.02em;}

  /* ===== PROJECTS / CONGRESSES ===== */
  .tabs{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:8px;}
  .tab{padding:10px 20px; border-radius:100px; border:1px solid var(--line); font-size:13.5px; font-weight:600; cursor:pointer; background:var(--card);}
  .tab.active{background:var(--ink); color:#fff; border-color:var(--ink);}
  .proj-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:24px; margin-top:36px;}
  .proj-card{position:relative; border-radius:var(--radius); overflow:hidden; aspect-ratio:3/4; display:none;}
  .proj-card.show{display:block;}
  .proj-card img{width:100%; height:100%; object-fit:cover;}
  .proj-card .ov{position:absolute; inset:0; background:linear-gradient(0deg, rgba(14,27,51,.92), rgba(14,27,51,.05) 55%); display:flex; flex-direction:column; justify-content:flex-end; padding:22px;}
  .proj-card .cat{color:var(--accent); font-size:11.5px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; margin-bottom:8px;}
  .proj-card h4{color:#fff; font-size:16.5px; font-weight:700; font-family:'Mona Sans';}

  /* ===== WHY CHOOSE ===== */
  .choose-grid{display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:center;}
  .choose-list{display:grid; grid-template-columns:1fr 1fr; gap:14px; margin:26px 0 30px;}
  .choose-list li{display:flex; gap:10px; align-items:flex-start; font-size:14.5px; font-weight:600;}
  .choose-list li img{width:18px; margin-top:2px;}
  .choose-gauge{display:flex; align-items:center; gap:16px; margin-bottom:30px;}
  .ring{position:relative; width:70px; height:70px;}
  .ring svg{transform:rotate(-90deg);}
  .ring .bg{stroke:var(--line); fill:none; stroke-width:6;}
  .ring .fg{stroke:var(--accent); fill:none; stroke-width:6; stroke-linecap:round;}
  .ring .val{position:absolute; inset:0; display:flex; align-items:center; justify-content:center; font-family:'Mona Sans'; font-weight:900; font-size:16px;}
  .choose-media{position:relative;}
  .choose-media img{border-radius:var(--radius);}
  .choose-callout{position:absolute; right:-20px; bottom:-24px; background:var(--card); border:1px solid var(--line); border-radius:var(--radius); padding:20px 22px; max-width:260px; box-shadow:0 20px 40px -20px rgba(14,27,51,.25); display:flex; gap:14px;}
  .choose-callout img{width:20px; height:20px; border-radius:0;}
  .choose-callout p{font-size:13px; font-weight:600; line-height:1.4;}

  /* ===== SPOTLIGHT ===== */
  .spot{background:var(--ink); color:#fff; position:relative; overflow:hidden;}
  .spot-shape{position:absolute; right:-100px; top:-100px; width:400px; opacity:.35;}
  .spot .eyebrow{color:var(--accent);}
  .spot h2{color:#fff;}
  .spot-track{display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin-top:44px; position:relative; z-index:1;}
  .spot-card{background:#152747; border:1px solid #22375C; border-radius:var(--radius); padding:30px;}
  .spot-card img.avatar{width: 100%;
    height: 250px;
    border-radius: 15px;
    object-fit: contain;
    margin-bottom: 18px;
    background-color: white;}
  .spot-card .tag{font-size:11.5px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; color:var(--accent); margin-bottom:12px;}
  .spot-card h4{font-size:17px; margin-bottom:10px; font-family:'Mona Sans';}
  .spot-card p{font-size:13.5px; color:#B9C3D6;}
  .spot-card a{display:inline-block; margin-top:14px; font-size:12.5px; font-weight:700; color:var(--accent);}

/* NETWORK (org cards, replaces fake team members) */ 	   
  .net-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:22px;}
  .region-group{margin-bottom:48px;}
  .region-group:last-child{margin-bottom:0;}
  .region-heading{font-family:'Mona Sans'; font-weight:800; font-size:22px; color:var(--ink); padding-bottom:12px; margin-bottom:26px; border-bottom:2px solid var(--accent-dark); display:inline-block;}
  .net-card{background:#fff; border:1px solid var(--line); border-radius:var(--radius); padding:10px; text-align:center;}
  .net-card .mark{width:140px; height:90px; border-radius:50%; background:var(--soft); display:flex; align-items:center; justify-content:center; margin:0 auto 25px; font-family:'Jost'; font-weight:800; color:var(--accent);}
																																			  
  .net-card h4{font-size:15.5px; margin-bottom:8px;}
												
  .net-card p{font-size:12.5px; color:var(--ink);}
  /* ===== NEWS ===== */
  .news-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:28px;}
  .news-card{background:var(--card); border:1px solid var(--line); border-radius:var(--radius); overflow:hidden;}
  .news-card .thumb{position:relative; aspect-ratio:16/10;}
  .news-card .thumb img{width:100%; height:100%; object-fit:cover;background-color:white;}
  .news-card .date{position:absolute; left:16px; top:16px; background:var(--card); border-radius:8px; padding:8px 12px; text-align:center; font-family:'Mona Sans'; font-weight:800; font-size:15px; line-height:1.1;}
  .news-card .date small{display:block; font-family:'DM Sans'; font-weight:600; font-size:10px; color:var(--muted);}
  .news-body{padding:24px;}
  .news-body .cat{font-size:11.5px; font-weight:700; color:var(--accent-dark); text-transform:uppercase; letter-spacing:.05em; margin-bottom:10px;}
  .news-body h3{font-size:18px; margin-bottom:12px;}
  .news-body a{font-size:13px; font-weight:700; color:var(--ink)}

  /* ===== FAQ ===== */
  .faq-grid{display:grid; grid-template-columns:.85fr 1.15fr; gap:60px;}
  .faq-contacts{margin-top:22px; display:flex; flex-direction:column; gap:14px;}
  .faq-contacts a{font-family:'Mona Sans'; font-weight:800; font-size:18px;}
  .faq-item{border-bottom:1px solid var(--line);}
  .faq-q{padding:22px 0; display:flex; justify-content:space-between; align-items:center; cursor:pointer; font-weight:700; font-size:16px;}
  .faq-q .plus{font-family:'Mona Sans'; font-size:20px; color:var(--accent-dark); transition:transform .25s; flex:none; margin-left:20px;}
  .faq-item.open .plus{transform:rotate(45deg);}
  .faq-a{max-height:0; overflow:hidden; transition:max-height .3s ease;}
  .faq-item.open .faq-a{max-height:200px;}
  .faq-a p{padding-bottom:22px; color:var(--muted); font-size:14.5px; max-width:520px;}

  /* ===== CTA MARQUEE ===== */
  .cta-marquee{background:var(--accent); overflow:hidden; padding:26px 0;}
  .cta-track{display:flex; width:max-content; animation:tick 34s linear infinite;}
  .cta-item{display:flex; align-items:center; gap:16px; padding:0 30px; white-space:nowrap;}
  .cta-item img{width:64px; height:44px; object-fit:cover; border-radius:8px;}
  .cta-item span{font-family:'Mona Sans'; font-weight:800; font-size:19px; color:var(--ink);}

  /* ===== FOOTER ===== */
  footer{background:var(--ink); color:#AEB8C9;}
  .foot-strip{display:flex; justify-content:space-between; flex-wrap:wrap; gap:26px; padding:34px 0; border-bottom:1px solid #22375C; font-size:13.5px;}
  .foot-strip .grp b{display:block; color:#fff; font-family:'Mona Sans'; font-size:12px; text-transform:uppercase; letter-spacing:.05em; margin-bottom:6px;}
  .foot-grid{display:grid; grid-template-columns:1.5fr .8fr .9fr 1fr; gap:50px; padding:64px 0 50px; border-bottom:1px solid #22375C;}
  footer h4{color:#fff; font-family:'Mona Sans'; font-size:13px; letter-spacing:.05em; text-transform:uppercase; margin-bottom:22px;}
  .foot-logo{font-family:'Mona Sans'; font-weight:900; font-size:22px; color:#fff; margin-bottom:16px; display:flex; align-items:center; gap:10px;}
  .foot-logo .dot{width:10px;height:10px;border-radius:50%;background:var(--accent);}
  footer p.desc{font-size:14px; max-width:280px; margin-bottom:22px;}
  footer li{margin-bottom:12px; font-size:14px;}
  footer li a:hover{color:var(--accent);}
  .foot-form{display:flex; margin-top:6px; border:1px solid #2E4468; border-radius:100px; overflow:hidden;}
  .foot-form input{flex:1; background:transparent; border:none; padding:13px 18px; color:#fff; font-size:13px; font-family:'DM Sans';}
  .foot-form input::placeholder{color:#7C8AA3;}
  .foot-form button{background:var(--accent); color:var(--ink); border:none; padding:0 20px; font-weight:700; cursor:pointer;}
  .foot-agree{font-size:11.5px; color:#7C8AA3; margin-top:10px;}
  .foot-bottom{display:flex; justify-content:space-between; padding:26px 0; font-size:12.5px; flex-wrap:wrap; gap:10px;}
  .foot-bottom a{margin-left:20px;}

  @media (max-width:980px){
    .hamburger{display:flex;}
    nav.primary{
      position:absolute; top:100%; left:0; right:0; z-index:55;
      flex-direction:column; align-items:stretch; gap:0;
      background:var(--card); border-bottom:1px solid var(--line);
      max-height:0; overflow:hidden; opacity:0;
      transition:max-height .35s ease, opacity .25s ease;
    }
    header.site.nav-open nav.primary{max-height:80vh; opacity:1; overflow-y:auto;}
    nav.primary > a{padding:18px 32px; border-bottom:1px solid var(--line);}
    .has-dropdown{flex-wrap:wrap; border-bottom:1px solid var(--line);}
    .has-dropdown > a{flex:1 1 auto; padding:18px 0 18px 32px;}
    .dropdown-toggle{flex:0 0 auto; padding:14px 24px 14px 10px;}
    .dropdown-menu{
      flex:1 1 100%; width:100%;
      position:static; opacity:1; visibility:visible; transform:none;
      box-shadow:none; border:none; border-radius:0; margin:0; padding:0;
      max-height:0; overflow:hidden; transition:max-height .3s ease;
    }
    .has-dropdown.open .dropdown-menu{max-height:220px;}
    .dropdown-menu a{padding:14px 32px 14px 46px; border-radius:0; border-top:1px solid var(--line);}
    .nav-cta .btn:first-child{display:none;}
    .hero-grid, .about-grid, .choose-grid, .faq-grid{grid-template-columns:1fr;}
    .hero-side{border-left:none; padding-left:0; border-top:1px solid var(--line); padding-top:24px;}
    .stat-grid, .feat-grid{grid-template-columns:repeat(2,1fr);}
    .pillar-row{grid-template-columns:1fr; text-align:left;}
    .pillar-row .rlink{justify-self:start;}
    .foot-grid{grid-template-columns:1fr 1fr;}
  .net-grid{grid-template-columns:repeat(3,1fr);}
  }
  @media (max-width:600px){
    .wrap{padding:0 20px;}
    section{padding:64px 0;}
    .stat-grid, .feat-grid,  
    .foot-grid{grid-template-columns:1fr;}
	.nav-cta .btn{font-size:10px;}
  .net-grid{grid-template-columns:repeat(2,1fr);}
  .net-card {padding: 10px 10px;}
  }
  :focus-visible{outline:2px solid var(--accent-dark); outline-offset:2px;}

  /* ===== ANIMATION / TRANSITION EFFECTS ===== */
  /* Page fade-in on load */
  body{opacity:0; transition:opacity .5s ease;}
  body.loaded{opacity:1;}

  /* Scroll-reveal: JS adds .reveal only when it's running, so content is
     always visible with no JS (safe for SEO/no-JS/reduced-motion users) */
  .reveal{opacity:0; transform:translateY(28px); transition:opacity .7s cubic-bezier(.22,.61,.36,1), transform .7s cubic-bezier(.22,.61,.36,1);}
  .reveal.in-view{opacity:1; transform:translateY(0);}
  .reveal-stagger > *{opacity:0; transform:translateY(22px); transition:opacity .6s ease, transform .6s ease;}
  .reveal-stagger.in-view > *{opacity:1; transform:translateY(0);}
  .reveal-stagger.in-view > *:nth-child(1){transition-delay:.05s;}
  .reveal-stagger.in-view > *:nth-child(2){transition-delay:.14s;}
  .reveal-stagger.in-view > *:nth-child(3){transition-delay:.23s;}
  .reveal-stagger.in-view > *:nth-child(4){transition-delay:.32s;}
  .reveal-stagger.in-view > *:nth-child(5){transition-delay:.41s;}
  .reveal-stagger.in-view > *:nth-child(6){transition-delay:.5s;}
  .reveal-stagger.in-view > *:nth-child(n+7){transition-delay:.58s;}

  /* Nav link underline sweep */
  nav.primary > a, .has-dropdown > a{position:relative;}
  nav.primary > a::after, .has-dropdown > a::after{content:""; position:absolute; left:0; bottom:-4px; width:0; height:2px; background:var(--accent-dark); transition:width .25s ease;}
  nav.primary > a:hover::after, .has-dropdown > a:hover::after{width:100%;}

  /* Button + card lift on hover (layered on top of each element's own transition) */
  .btn:hover{transform:translateY(-2px);}
  .btn:active{transform:translateY(0);}
  .serv-card, .net-card, .spot-card, .news-card, .team-card, .committee-card, .pillar-row{transition:transform .3s ease, box-shadow .3s ease, background-color .3s ease;}
  .net-card:hover, .pillar-row:hover{transform:translateY(-4px); box-shadow:0 24px 50px -30px rgba(14,27,51,.25);}

  /* Stat counters: number ticks up via JS, this just smooths any repaint */
  .stat-cell .num{transition:color .3s ease;}

  /* Hero entrance (runs once on load, independent of scroll) */
  .hero-grid > div{animation:heroUp .8s cubic-bezier(.22,.61,.36,1) both;}
  .hero-grid > div:nth-child(2){animation-delay:.15s;}
  @keyframes heroUp{ from{opacity:0; transform:translateY(18px);} to{opacity:1; transform:translateY(0);} }

  @media (prefers-reduced-motion: reduce){
    body{opacity:1 !important; transition:none !important;}
    .reveal, .reveal-stagger > *{opacity:1 !important; transform:none !important; transition:none !important;}
    .hero-grid > div{animation:none !important;}
  }

  /* ===== HERO CAROUSEL ===== */
  .hero{position:relative; overflow:hidden; box-sizing:border-box;}
  .hero-slides{position:relative; width:100%;}
  .hero-slide{position:absolute; inset:0; display:flex; align-items:center; padding:0px; opacity:0; visibility:hidden; transition:opacity .8s ease; box-sizing:border-box;}
  .hero-slide.active{position:relative; opacity:1; visibility:visible; min-height:100vh; min-height:calc(100vh - var(--header-h)); min-height:calc(100svh - var(--header-h));}
  .hero-slide > .wrap{width:100%;}
  .hero-nav{position:absolute; left:0; right:0; bottom:26px; display:flex; align-items:center; justify-content:center; gap:20px; z-index:6;}
  .hero-dots{display:flex; gap:10px;}
  .hero-dot{width:10px; height:10px; border-radius:50%; border:none; background:var(--line); cursor:pointer; padding:0; transition:background .25s ease, transform .25s ease;}
  .hero-dot.active{background:var(--accent-dark); transform:scale(1.35);}
  .hero-arrow{background:var(--card); border:1px solid var(--line); width:44px; height:44px; border-radius:50%; cursor:pointer; font-size:19px; display:flex; align-items:center; justify-content:center; color:var(--ink); position:absolute; top:50%; transform:translateY(-50%); z-index:6; transition:background .2s ease, color .2s ease;}
  .hero-arrow:hover{background:var(--ink); color:#fff;}
  .hero-arrow.prev{left:20px;}
  .hero-arrow.next{right:20px;}
  @media (max-width:760px){ .hero-arrow{display:none;} }

  /* Education slide specifics */
  .edu-slide-badge{display:inline-flex; align-items:center; gap:8px; background:var(--accent); color:var(--ink); font-family:'Mona Sans'; font-weight:800; font-size:12.5px; padding:8px 16px; border-radius:100px; margin-bottom:20px; animation:eduPulse 2.4s ease-in-out infinite;}
  @keyframes eduPulse{ 0%,100%{box-shadow:0 0 0 0 rgba(199,220,255,.55);} 50%{box-shadow:0 0 0 10px rgba(199,220,255,0);} }
  .edu-course-card{position:relative; border-radius:var(--radius); overflow:hidden; border:1px solid var(--line); box-shadow:0 30px 60px -30px rgba(14,27,51,.35);}
  .edu-course-card img{width:100%; display:block; aspect-ratio:16/10; object-fit:contain;}
  .edu-course-card .cap{background:var(--card); padding:16px 20px;}
  .edu-course-card .cap .tag{font-size:11px; font-weight:700; color:var(--accent-dark); text-transform:uppercase; letter-spacing:.05em;}
  .edu-course-card .cap h4{font-size:14.5px; margin-top:6px; line-height:1.3;}
  .edu-float-badge{position:absolute; right:-18px; bottom:-18px; background:var(--ink); color:#fff; border-radius:var(--radius); padding:14px 18px; font-family:'Mona Sans'; font-weight:800; font-size:13px; box-shadow:0 20px 40px -16px rgba(14,27,51,.5); animation:eduFloat 3s ease-in-out infinite;}
  @keyframes eduFloat{ 0%,100%{transform:translateY(0);} 50%{transform:translateY(-8px);} }
  @media (prefers-reduced-motion: reduce){
    .edu-slide-badge{animation:none;}
    .edu-float-badge{animation:none;}
  }

  /* ===== EDUCATION HUB SECTION ===== */
  .edu-hub{background:var(--ink); color:#fff; position:relative; overflow:hidden;}
  .edu-hub .eyebrow{color:var(--accent);}
  .edu-hub .section-head h2{color:#fff;}
  .edu-hub .section-head p{color:#AAB6CC;}
  .edu-hub .news-card{background:#152747; border-color:#22375C;}
  .edu-hub .news-card .date{background:#152747; color:#fff;}
  .edu-hub .news-body h3 a{color:#fff;}
  .edu-hub .news-body .cat{color:var(--accent);}
  .edu-hub .news-body a{color:var(--accent);}
  .edu-hub .about-quote{background:#152747; border:1px solid #22375C;}
  .edu-course-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:28px;}
  .swipe-dots{display:none; justify-content:center; gap:9px; margin-top:20px;}
  .swipe-dots .dot{width:8px; height:8px; border-radius:50%; background:var(--line); border:none; padding:0; cursor:pointer; transition:background .25s ease, transform .25s ease;}
  .swipe-dots .dot.active{background:var(--accent-dark); transform:scale(1.4);}
  .edu-hub .swipe-dots .dot, .spot .swipe-dots .dot{background:#3A4E75;}
  .edu-hub .swipe-dots .dot.active, .spot .swipe-dots .dot.active{background:var(--accent);}
  @media (max-width:980px){
    .edu-course-grid, .proj-grid, .spot-track, .news-grid{
      display:flex; flex-wrap:nowrap; gap:18px;
      overflow-x:auto; scroll-snap-type:x mandatory;
      -webkit-overflow-scrolling:touch; scrollbar-width:none;
      padding-bottom:4px;
    }
    .edu-course-grid::-webkit-scrollbar, .proj-grid::-webkit-scrollbar,
    .spot-track::-webkit-scrollbar, .news-grid::-webkit-scrollbar{display:none;}
    .edu-course-grid > .news-card,
    .proj-grid > .proj-card,
    .spot-track > .spot-card,
    .news-grid > .news-card{flex:0 0 100%; scroll-snap-align:start;}
    .swipe-dots{display:flex;}
  }
  .edu-course-flag{position:absolute;width: 50px !important;
    height: 50px !important;
    object-position: left !important; right:12px; top:12px; width:26px; height:26px; border-radius:50%; border:2px solid #fff; box-shadow:0 2px 8px rgba(0,0,0,.35); object-fit:cover; z-index:2;}
  .edu-partners{display:flex; flex-wrap:wrap; align-items:center; gap:26px; justify-content:center; margin-top:56px; padding-top:40px; border-top:1px solid #22375C;}
  .edu-partners img{height:34px; width:auto; max-width:110px; object-fit:contain; opacity:.85; filter:grayscale(1) brightness(1.6); transition:opacity .25s ease, filter .25s ease;}
  .edu-partners img:hover{opacity:1; filter:none;}

  /* ===== HISTORY & MILESTONES ===== */
  .history-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:var(--line); border:1px solid var(--line);}
  .history-cell{background:var(--card); padding:34px 26px; transition:background-color .3s ease, transform .3s ease;}
  .history-cell:hover{background:var(--paper);}
  .history-cell .year{font-family:'Mona Sans'; font-weight:900; font-size:26px; color:var(--accent-dark);}
  .history-cell h4{font-size:14.5px; margin-top:8px; line-height:1.3;}
  .history-cell p{font-size:12.5px; color:var(--muted); margin-top:8px; line-height:1.5;}
  .history-note{display:flex; align-items:center; gap:18px; background:var(--ink); color:#fff; border-radius:var(--radius); padding:24px 28px; margin-top:28px; flex-wrap:wrap;}
  .history-note i{font-size:22px; color:var(--accent); flex:none;}
  .history-note p{color:#B9C3D6; font-size:13.5px; margin:0; flex:1; min-width:240px;}
  .history-note strong{color:#fff;}
  @media (max-width:980px){
    .history-grid{grid-template-columns:repeat(2,1fr);}
  }
  @media (max-width:600px){
    .history-grid{grid-template-columns:1fr;}
  }

  /* ===== MISSION & OBJECTIVES ===== */
  .obj-grid{display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:start;}
  .mission-bullets{display:flex; flex-direction:column; gap:14px; margin:22px 0 8px;}
  .mission-bullets li{display:flex; gap:12px; align-items:flex-start; font-size:16px; color:var(--ink2); line-height:1.5;}
  .mission-bullets li i{color:var(--accent-dark); margin-top:4px; flex:none;}
  .obj-list{display:flex; flex-direction:column; margin-top:24px; border-top:1px solid var(--line);}
  .obj-item{display:flex; gap:20px; align-items:flex-start; padding:20px 0; border-bottom:1px solid var(--line);}
  .obj-item .num{font-family:'Mona Sans'; font-weight:900; font-size:22px; color:#c9cbcd; flex:none; width:34px;}
  .obj-item p{font-size:16px; color:var(--ink2); margin:0; line-height:1.5;}
  @media (max-width:980px){
    .obj-grid{grid-template-columns:1fr;}
  }

/* ===== INNER PAGES (added for the MVC site) ===== */
.page-title{background:var(--ink); color:#fff; padding:50px 0; position:relative; overflow:hidden;}
.page-title::before{content:""; position:absolute; inset:0; background:radial-gradient(600px 300px at 85% -20%, rgba(199,220,255,.18), transparent 70%);}
.page-title .wrap{position:relative; z-index:1;}
.page-title .eyebrow{color:var(--accent);}
.page-title h1{color:#fff; font-size:clamp(32px,4.4vw,52px); max-width:850px;}
.page-title p.lead, .page-title .lead{color:#B9C3D6; max-width:640px; margin-top:16px; font-size:15.5px;}
.crumb{margin-top:22px; font-size:13px; color:#8FA0BF; display:flex; gap:8px; align-items:center; flex-wrap:wrap;}
.crumb a:hover{color:var(--accent);}
.crumb .here{color:#fff;}
.page-body{padding:70px 0 100px;}
.page-body .meta{font-size:13px; font-weight:700; color:var(--accent-dark); text-transform:uppercase; letter-spacing:.05em; margin-bottom:18px;}
.page-cover{border-radius:var(--radius); margin-bottom:36px; max-height:520px; width:100%; object-fit:contain; background:#fff;}

/* Rich-text content entered in the CMS */
.prose{max-width:880px; font-size:16px; color:var(--ink2);}
.prose > *:first-child{margin-top:0;}
.prose h2{font-size:clamp(24px,2.6vw,32px); margin:44px 0 16px;}
.prose h3{font-size:20px; margin:32px 0 12px;}
.prose p{margin:0 0 16px;}
.prose ul, .prose ol{margin:0 0 18px; padding-left:22px;}
.prose ul{list-style:disc;}
.prose ol{list-style:decimal;}
.prose li{margin-bottom:8px;}
.prose a{color:var(--accent-dark); font-weight:600; text-decoration:underline; text-underline-offset:3px;}
.prose a.btn{text-decoration:none; color:inherit;}
.prose a.btn-dark{color:#fff;}
.prose a.btn-accent{color:var(--ink);}
.prose img{border-radius:var(--radius); margin:20px 0;}
.prose blockquote{border-left:3px solid var(--accent-dark); padding:6px 0 6px 20px; margin:24px 0; font-family:'Mona Sans'; font-weight:600; font-size:18px;}
.prose table{width:100%; border-collapse:collapse; margin:20px 0 28px; font-size:14.5px; background:var(--card);}
.prose th, .prose td{border:1px solid var(--line); padding:10px 14px; text-align:left; vertical-align:top;}
.prose th{background:var(--paper); font-weight:700;}
.prose .note{background:var(--card); border:1px solid var(--line); border-radius:var(--radius); padding:20px 24px; margin:24px 0;}
.prose .doc-list{list-style:none; padding:0; display:grid; gap:10px;}
.prose .doc-list li{background:var(--card); border:1px solid var(--line); border-radius:8px; padding:14px 18px; margin:0;}
.prose .doc-list li i{color:var(--accent-dark); margin-right:10px;}

/* Committee cards (used inside CMS page content) */
.committee-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:22px; margin:28px 0;}
.committee-card{background:var(--card); border:1px solid var(--line); border-radius:var(--radius); padding:26px 20px; text-align:center;}
.committee-card img{width:120px; height:120px; border-radius:50%; object-fit:cover; margin:0 auto 18px; background:var(--paper);}
.prose .committee-card img{margin:0 auto 18px;}
.committee-card h4{font-size:16px; margin-bottom:6px; font-family:'Mona Sans';}
.committee-card p{font-size:13px; color:var(--muted); margin:0;}
.committee-card:hover{transform:translateY(-4px); box-shadow:0 24px 50px -30px rgba(14,27,51,.25);}

/* Contact cards (used inside CMS page content) */
.contact-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:22px; margin:28px 0;}
.contact-card{background:var(--card); border:1px solid var(--line); border-radius:var(--radius); padding:26px;}
.contact-card .lbl{font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; color:var(--accent-dark); margin-bottom:8px;}
.contact-card .val{font-family:'Mona Sans'; font-weight:800; font-size:18px; color:var(--ink);}
.contact-card p{margin:6px 0 0; font-size:14.5px;}

/* News listing pager / empty states */
.empty-state{background:var(--card); border:1px dashed var(--line); border-radius:var(--radius); padding:40px; text-align:center; color:var(--muted);}

@media (max-width:980px){
  .committee-grid{grid-template-columns:repeat(2,1fr);}
  .page-title{padding:40px 0;}
  .page-body{padding:50px 0 70px;}
  /* listing pages show every card, not a one-at-a-time swipe track */
  .news-list.news-grid{display:grid; grid-template-columns:repeat(2,1fr); overflow:visible;}
}
@media (max-width:600px){
  .committee-grid, .contact-grid, .news-list.news-grid{grid-template-columns:1fr;}
}

/* =====================================================================
   EVENTS LISTING (from design v6/events.html)
   ===================================================================== */
/* ===== EVENTS TOOLBAR ===== */
  .events-toolbar{display:flex; justify-content:space-between; align-items:center; gap:20px; flex-wrap:wrap; margin-bottom:34px;}
  .tabs{display:flex; gap:10px; flex-wrap:wrap;}
  .tab{padding:10px 20px; border-radius:100px; border:1px solid var(--line); font-size:13.5px; font-weight:600; cursor:pointer; background:var(--card);}
  .tab.active{background:var(--ink); color:#fff; border-color:var(--ink);}
  .toolbar-right{display:flex; align-items:center; gap:14px;}
  .search-box{position:relative;}
  .search-box input{border:1px solid var(--line); border-radius:100px; padding:11px 18px 11px 40px; font-family:'DM Sans'; font-size:13.5px; background:var(--card); min-width:220px;}
  .search-box i{position:absolute; left:16px; top:50%; transform:translateY(-50%); color:var(--muted); font-size:13px;}
  .view-toggle{display:flex; border:1px solid var(--line); border-radius:100px; overflow:hidden; background:var(--card);}
  .view-toggle button{border:none; background:transparent; padding:10px 16px; cursor:pointer; color:var(--muted); font-size:14px; display:flex; align-items:center; gap:8px;}
  .view-toggle button.active{background:var(--ink); color:#fff;}

  .events-meta{font-size:13px; color:var(--muted); margin-bottom:24px;}

  /* GRID VIEW */
  .events-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:26px;}
  .ev-card{background:var(--card); border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; display:flex; flex-direction:column; transition:transform .3s ease, box-shadow .3s ease;}
  .ev-card:hover{transform:translateY(-4px); box-shadow:0 24px 50px -30px rgba(14,27,51,.28);}
  .ev-card .thumb{position:relative; aspect-ratio:16/10; overflow:hidden; background-color: var(--paper);}
  .ev-card .thumb img{width:100%; height:100%; object-fit:contain; transition:transform .5s ease;}
  .ev-card:hover .thumb img{transform:scale(1.06);}
  .ev-card .date-badge{position:absolute; left:14px; top:14px; background:#fff; border-radius:8px; padding:8px 12px; text-align:center; font-family:'Mona Sans'; font-weight:800; font-size:14px; line-height:1.1;}
  .ev-card .date-badge small{display:block; font-family:'DM Sans'; font-weight:600; font-size:9.5px; color:var(--muted);}
  .ev-card .cat-badge{position:absolute; right:14px; top:14px; background:var(--ink); color:var(--paper); font-size:10.5px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; padding:6px 12px; border-radius:100px;}
  .ev-body{padding:22px; display:flex; flex-direction:column; flex:1;}
  .ev-body .loc{font-size:12px; color:var(--accent-dark); font-weight:700; margin-bottom:8px; display:flex; align-items:center; gap:6px;}
  .ev-body h3{font-size:17px; margin-bottom:10px; flex:1;}
  .ev-body p{font-size:13px; color:var(--muted); margin-bottom:16px;}
  .ev-body a.ev-link{font-size:12.5px; font-weight:700; color:var(--ink); display:inline-flex; align-items:center; gap:6px; margin-top:auto;}
  .ev-body a.ev-link:hover{color:var(--accent-dark);}

  /* LIST VIEW */
  .events-list{display:none; flex-direction:column; gap:16px;}
  .events-wrap.list-mode .events-grid{display:none;}
  .events-wrap.list-mode .events-list{display:flex;}
  .ev-row{display:grid; grid-template-columns:200px 1fr auto; gap:26px; align-items:center; background:var(--card); border:1px solid var(--line); border-radius:var(--radius); padding:18px; transition:transform .3s ease, box-shadow .3s ease;}
  .ev-row:hover{transform:translateY(-3px); box-shadow:0 20px 44px -28px rgba(14,27,51,.25);}
  .ev-row .thumb{aspect-ratio:4/3; border-radius:8px; overflow:hidden;}
  .ev-row .thumb img{width:100%; height:100%; object-fit:cover;}
  .ev-row-body .cat-badge{display:inline-block; background:var(--paper); border:1px solid var(--line); color:var(--ink2); font-size:10.5px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; padding:5px 11px; border-radius:100px; margin-bottom:10px;}
  .ev-row-body h3{font-size:17px; margin-bottom:6px;}
  .ev-row-body .loc{font-size:12.5px; color:var(--muted); display:flex; gap:16px; flex-wrap:wrap;}
  .ev-row-cta{text-align:right;}
  .ev-row-cta a{font-size:12.5px; font-weight:700; color:var(--ink); white-space:nowrap;}
  .ev-row-cta a:hover{color:var(--accent-dark);}

  .no-results{display:none; text-align:center; padding:60px 20px; color:var(--muted); font-size:14px;}
.events-wrap .events-grid > [hidden], .events-wrap .events-list > [hidden]{display:none !important;}

/* =====================================================================
   EVENT DETAILS (from design v6/events-details.html)
   ===================================================================== */
.event-page section{padding:50px 0;}
.event-page .section-head h2{font-size:clamp(26px,3.2vw,38px); max-width:850px;}
/* ===== EVENT HERO ===== */
  .event-hero{position:relative; padding:0; background:var(--ink); overflow:hidden;}
  .event-hero .hero-media{position:relative; height:56vh; min-height:420px; max-height:620px;}
  .event-hero .hero-media img{width:100%; height:100%; object-fit:contain; opacity:1;}
  .event-hero .hero-media::after{content:""; position:absolute; inset:0; background:linear-gradient(0deg, var(--ink) 5%, rgba(14,27,51,.35) 55%, rgba(14,27,51,.15) 100%);}
  .event-hero-content{position:absolute; left:0; right:0; bottom:0; padding:52px 0 46px; z-index:2;}
  .event-hero-content .crumb{font-size:12.5px; color:#9FB0CC; display:flex; gap:8px; align-items:center; margin-bottom:18px;}
  .event-hero-content .crumb a:hover{color:var(--accent);}
  .event-hero-content .cat-pill{display:inline-block; background:var(--accent); color:var(--ink); font-size:11.5px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; padding:7px 16px; border-radius:100px; margin-bottom:18px;}
  .event-hero-content h1{color:#fff; font-size:clamp(30px,4.6vw,54px); max-width:820px;}
  .event-meta-row{display:flex; gap:34px; flex-wrap:wrap; margin-top:26px;}
  .event-meta-row .item{display:flex; gap:10px; align-items:center; color:#DCE4F3; font-size:13.5px; font-weight:600;}
  .event-meta-row .item i{color:var(--accent); font-size:15px;}

  /* ===== HIGHLIGHT SLIDER (Swiper) ===== */
  .highlight-slider-sec{padding:64px 0 20px;}
  .swiper{border-radius:var(--radius); overflow:hidden; background-color:rgba(0,0,0,0.9);}
  .swiper-slide{aspect-ratio:16/8;}
  .swiper-slide img{width:100%; height:100%; object-fit:contain;}
  .swiper-slide .cap{position:absolute; left:0; right:0; bottom:0; padding:20px 26px; background:linear-gradient(0deg, rgba(14,27,51,.85), transparent); color:#fff; font-size:13.5px; font-weight:600;}
  .swiper-button-next, .swiper-button-prev{color:#fff; background:rgba(14,27,51,.55); width:42px !important; height:42px !important; border-radius:50%; backdrop-filter:blur(4px);}
  .swiper-button-next:after, .swiper-button-prev:after{font-size:15px !important; font-weight:900;}
  .swiper-pagination-bullet{background:#fff; opacity:.6;}
  .swiper-pagination-bullet-active{background:var(--accent); opacity:1;}

  /* ===== ARTICLE LAYOUT ===== */
  .article-sec{padding-top:20px;}
  .article-grid{display:grid; grid-template-columns:1fr 340px; gap:64px; align-items:start;}
  .article-body h2{font-size:clamp(22px,2.6vw,30px); margin:34px 0 16px;}
  .article-body h2:first-child{margin-top:0;}
  .article-body p{color:var(--ink); font-size:15.5px; margin-bottom:18px; max-width:680px;}
  .article-body .theme-line{font-family:'Mona Sans'; font-weight:800; font-size:19px; color:var(--ink2); border-left:3px solid var(--accent); padding-left:18px; margin:24px 0; max-width:680px;}
  .committee-box{background:var(--card); border:1px solid var(--line); border-radius:var(--radius); padding:26px 28px; margin:26px 0; max-width:680px;}
  .committee-box h4{font-size:14px; text-transform:uppercase; letter-spacing:.05em; margin-bottom:16px; color:var(--accent-dark);}
  .committee-box ul{display:flex; flex-direction:column; gap:10px;}
  .committee-box li{font-size:14px; display:flex; justify-content:space-between; gap:14px; flex-wrap:wrap; border-bottom:1px dashed var(--line); padding-bottom:10px;}
  .committee-box li:last-child{border-bottom:none; padding-bottom:0;}
  .committee-box li b{font-weight:700;}
  .committee-box li span{color:var(--muted); font-size:13px;}
  .article-downloads{display:flex; gap:14px; flex-wrap:wrap; margin:30px 0;}
  .article-downloads a{display:inline-flex; align-items:center; gap:10px; padding:14px 22px; border-radius:var(--radius); border:1px solid var(--line); background:var(--card); font-size:13.5px; font-weight:700;}
  .article-downloads a:hover{background:var(--ink); color:#fff; border-color:var(--ink);}
  .article-signoff{margin-top:36px; padding-top:26px; border-top:1px solid var(--line); font-size:13.5px; color:var(--muted); max-width:680px;}
  .share-row{display:flex; align-items:center; gap:14px; margin-top:26px;}
  .share-row span{font-size:12.5px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; color:var(--muted);}
  .share-row a{width:38px; height:38px; border-radius:50%; border:1px solid var(--line); display:flex; align-items:center; justify-content:center; color:var(--ink);}
  .share-row a:hover{background:var(--ink); color:#fff; border-color:var(--ink);}

  /* SIDEBAR */
  .sidebar-card{background:var(--card); border:1px solid var(--line); border-radius:var(--radius); padding:26px; margin-bottom:24px;}
  .sidebar-card h4{font-size:13px; text-transform:uppercase; letter-spacing:.05em; margin-bottom:18px; color:var(--accent-dark);}
  .sidebar-card .fact{display:flex; justify-content:space-between; gap:12px; font-size:13.5px; padding:10px 0; border-bottom:1px solid var(--line);}
  .sidebar-card .fact:last-child{border-bottom:none;}
  .sidebar-card .fact .k{color:var(--muted);}
  .sidebar-card .fact .v{font-weight:700; text-align:right;}
  .sidebar-card ul li{font-size:13.5px; padding:9px 0; border-bottom:1px solid var(--line);}
  .sidebar-card ul li:last-child{border-bottom:none;}
  .sidebar-card ul li a:hover{color:var(--accent-dark);}
  .sidebar-cats{display:flex; flex-wrap:wrap; gap:8px;}
  .sidebar-cats a{font-size:12px; font-weight:600; background:var(--paper); border:1px solid var(--line); border-radius:100px; padding:7px 13px;}
  .sidebar-cats a:hover{background:var(--ink); color:#fff; border-color:var(--ink);}

  /* ===== GALLERY ===== */
  .gallery-sec{padding-top:20px;}
  .gallery-grid{display:grid; grid-template-columns:repeat(4,1fr); grid-auto-rows:190px; gap:14px;}
  .gallery-grid a{position:relative; border-radius:8px; overflow:hidden; display:block;}
  .gallery-grid a:nth-child(6n+1){grid-column:span 2; grid-row:span 2;}
  .gallery-grid img{width:100%; height:100%; object-fit:cover; transition:transform .5s ease;}
  .gallery-grid a:hover img{transform:scale(1.08);}
  .gallery-grid a .cap-ov{position:absolute; inset:0; background:linear-gradient(0deg, rgba(14,27,51,.85), transparent 55%); display:flex; align-items:flex-end; padding:12px; opacity:0; transition:opacity .3s ease;}
  .gallery-grid a:hover .cap-ov{opacity:1;}
  .gallery-grid a .cap-ov span{color:#fff; font-size:11.5px; font-weight:600; line-height:1.3;}
  .gallery-grid a .zoom-ic{position:absolute; right:10px; top:10px; width:30px; height:30px; border-radius:50%; background:rgba(14,27,51,.6); color:#fff; display:flex; align-items:center; justify-content:center; font-size:12px; opacity:0; transition:opacity .3s ease;}
  .gallery-grid a:hover .zoom-ic{opacity:1;}

  /* RELATED */
  .related-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
  .rel-card{background:var(--card); border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; transition:transform .3s ease, box-shadow .3s ease;}
  .rel-card:hover{transform:translateY(-4px); box-shadow:0 24px 50px -30px rgba(14,27,51,.25);}
  .rel-card .thumb{aspect-ratio:16/10;}
  .rel-card .thumb img{width:100%; height:100%; object-fit:cover;}
  .rel-card .b{padding:20px;}
  .rel-card .cat{font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; color:var(--accent-dark); margin-bottom:8px;}
  .rel-card h4{font-size:15.5px; margin-bottom:10px;}
  .rel-card a.go{font-size:12.5px; font-weight:700;}
.article-body ul, .article-body ol{margin:0 0 18px; padding-left:22px; max-width:680px;}
.article-body ul{list-style:disc;} .article-body ol{list-style:decimal;}
.article-body li{margin-bottom:8px;}
.article-body a{color:var(--accent-dark); font-weight:600;}
.article-body .committee-box ul{list-style:none; padding-left:0;}

/* =====================================================================
   WRV REGISTER (from design wrv/wrv1.html)
   ===================================================================== */
/* ===== WRV PAGE SPECIFIC ===== */
  .wrv-intro{padding-top:80px;}
  .wrv-grid{display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:start;}
  .wrv-grid p{color:var(--ink); margin-bottom:14px;}
  .crit-list{display:grid; grid-template-columns:1fr; gap:12px; margin-top:20px; border-top:1px solid var(--line); padding-top:20px;}
  .crit-list li{display:flex; gap:12px; align-items:flex-start; font-size:16px; font-weight:600;}
  .crit-list li i{color:var(--accent-dark); margin-top:3px;}
  .wrv-badge-stack{display:grid; grid-template-columns:1fr 1fr; gap:16px;}
  .wrv-stat{background:var(--card); border:1px solid var(--line); border-radius:var(--radius); padding:26px 22px;text-align:center;}
  .wrv-stat .num{font-family:'Mona Sans'; font-weight:900; font-size:34px; color:var(--ink);text-align:center;}
  .wrv-stat .lbl{font-size:12.5px; color:var(--muted); margin-top:6px;}
  .wrv-quote{grid-column:1/-1; background:var(--ink); color:#fff; border-radius:var(--radius); padding:26px 26px; font-size:13.5px; color:#B9C3D6; line-height:1.6;}
  .wrv-quote b{color:#fff;}

  /* ===== THE CREDENTIAL fact card ===== */
  .credential-card{grid-column:1/-1; background:var(--ink); color:#fff; border-radius:var(--radius); padding:30px 32px;}
  .credential-card .cc-label{font-size:11.5px; font-weight:700; text-transform:uppercase; letter-spacing:.14em; color:var(--accent); margin-bottom:14px;}
  .credential-card .cc-title{font-family:'Mona Sans'; font-weight:900; font-size:24px; color:#fff; letter-spacing:.02em;}
  .credential-card .cc-sub{font-style:italic; color:#B9C3D6; font-size:14px; margin-top:6px;}
  .credential-card .cc-facts{margin-top:22px; padding-top:18px; border-top:1px solid #22375C; display:flex; flex-direction:column; gap:12px;}
  .credential-card .cc-fact{display:flex; justify-content:space-between; gap:16px; font-size:13.5px; flex-wrap:wrap;}
  .credential-card .cc-fact .k{color:#8FA0BF; font-weight:600;}
  .credential-card .cc-fact .v{color:#fff; font-weight:700; text-align:right;}

  /* ===== QUALIFICATION: competencies + application process ===== */
  .qual-grid{display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:start;}
  .qual-col-label{font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.1em; color:var(--accent-dark); padding-bottom:14px; margin-bottom:20px; border-bottom:2px solid var(--accent-dark);}
  .process-list{display:flex; flex-direction:column;}
  .process-item{display:grid; grid-template-columns:36px 1fr; gap:18px; padding:18px 0; border-bottom:1px solid var(--line);}
  .process-item:last-child{border-bottom:none;}
  .process-item .p-num{font-family:'Mona Sans'; font-style:italic; font-weight:800; font-size:19px; color:var(--accent-dark);}
  .process-item h4{font-size:15px; margin-bottom:6px;}
  .process-item p{font-size:14px; color:var(--muted); line-height:1.55; margin:0;}
  @media (max-width:980px){
    .qual-grid{grid-template-columns:1fr;}
  }

  .table-section{padding-top:60px;}
  .table-toolbar-note{display:flex; justify-content:space-between; align-items:center; gap:20px; flex-wrap:wrap; margin-bottom:26px; padding:16px 22px; background:var(--card); border:1px dashed var(--line); border-radius:var(--radius); font-size:13px; color:var(--muted);}
  .table-toolbar-note strong{color:var(--ink);}
  .table-card{background:var(--card); border:1px solid var(--line); border-radius:var(--radius); padding:30px; overflow-x:auto;}

  /* DataTables brand overrides */
  table.dataTable{border-collapse:separate !important; border-spacing:0; width:100% !important; font-size:14px;table-layout: fixed;}
  table.dataTable thead th{background:var(--ink); color:#fff; font-family:'Mona Sans'; font-weight:700; font-size:12px; text-transform:uppercase; letter-spacing:.05em; padding:16px 18px !important; border-bottom:none !important;}
  table.dataTable thead th:first-child{border-radius:8px 0 0 8px;}
  table.dataTable thead th:last-child{border-radius:0 8px 8px 0;}
  table.dataTable tbody td{padding:14px 18px; border-bottom:1px solid var(--line); vertical-align:top;}
  table.dataTable tbody tr:hover{background:var(--paper);}
  table.dataTable tbody tr:last-child td{border-bottom:none;}
  table.dataTable td, table.dataTable th{ word-wrap: break-word; overflow-wrap: break-word; }
  .wrv-country{display:inline-flex; align-items:center; gap:8px; font-weight:600;}
  .wrv-country .flag-dot{width:8px; height:8px; border-radius:50%; background:var(--accent-dark); flex:none;}
  .wrv-expertise-tag{display:inline-block; font-size:11.5px; font-weight:600; color:var(--ink2); background:var(--paper); border:1px solid var(--line); border-radius:100px; padding:4px 10px; margin:2px 4px 2px 0;}
  .wrv-name{font-family:'Mona Sans'; font-weight:700; font-size:14.5px;}

  .dataTables_wrapper .dataTables_filter{margin-bottom:22px;}
  .dataTables_wrapper .dataTables_filter input{border:1px solid var(--line); border-radius:100px; padding:11px 20px; font-family:'DM Sans'; font-size:13.5px; margin-left:10px; min-width:240px; background:var(--paper);}
  .dataTables_wrapper .dataTables_filter input:focus{outline:2px solid var(--accent-dark); outline-offset:1px;}
  .dataTables_wrapper .dataTables_length select{border:1px solid var(--line); border-radius:8px; padding:8px 12px; margin:0 6px; font-family:'DM Sans'; background:var(--paper);}
  .dataTables_wrapper .top-controls{display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:14px; margin-bottom:8px;}
  .dataTables_wrapper .dataTables_info{color:var(--muted); font-size:13px; padding-top:18px;}
  .dataTables_wrapper .dataTables_paginate{padding-top:18px;}
  .dataTables_wrapper .dataTables_paginate .paginate_button{border-radius:8px !important; border:1px solid var(--line) !important; margin-left:6px !important; padding:8px 14px !important; background:var(--card) !important; color:var(--ink) !important;}
  .dataTables_wrapper .dataTables_paginate .paginate_button.current{background:var(--ink) !important; color:#fff !important; border-color:var(--ink) !important;}
  .dataTables_wrapper .dataTables_paginate .paginate_button.disabled{opacity:.4;}
  
  .top-controls{display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px; margin-bottom:10px;}
   
  div.dt-container .dt-search input{
  width:100%;max-width:400px;float:right;}
  
  table.dataTable.dtr-inline.collapsed>tbody>tr>td.dtr-control:before{background:var(--accent-dark); top:50%; margin-top:-9px;}

  .wrv-cta{display:flex; justify-content:space-between; align-items:center; background:var(--ink); color:#fff; border-radius:var(--radius); padding:32px 36px; margin-top:40px; gap:24px; flex-wrap:wrap;}
  .wrv-cta p{color:#B9C3D6; font-size:14px; max-width:460px;}
  .wrv-cta h3{color:#fff; font-size:20px; margin-bottom:6px;}

/* =====================================================================
   PUBLICATIONS (built on the event card styles)
   ===================================================================== */
.pub-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:26px;}
.pub-card .thumb img{object-fit:contain; background:#fff;}
.pub-card .thumb.no-cover{display:flex; align-items:center; justify-content:center; background:var(--ink);}
.pub-card .thumb.no-cover i{font-size:54px; color:var(--accent);}
.pub-card .ev-body .actions{display:flex; gap:16px; flex-wrap:wrap; margin-top:auto;}

/* ----- responsive for the blocks above ----- */
@media (max-width:980px){
  .events-grid, .pub-grid{grid-template-columns:repeat(2,1fr);}
  .ev-row{grid-template-columns:120px 1fr;}
  .ev-row-cta{grid-column:1/-1; text-align:left;}
  .article-grid{grid-template-columns:1fr;}
  .gallery-grid{grid-template-columns:repeat(3,1fr); grid-auto-rows:160px;}
  .related-grid{grid-template-columns:1fr 1fr;}
  .wrv-grid, .qual-grid{grid-template-columns:1fr;}
}
@media (max-width:600px){
  .events-grid, .pub-grid{grid-template-columns:1fr;}
  .events-toolbar{flex-direction:column; align-items:flex-start;}
  .toolbar-right{width:100%; flex-wrap:wrap;}
  .search-box input{width:100%;}
  .ev-row .thumb{aspect-ratio:auto;}
  .event-page section{padding:56px 0;}
  .gallery-grid{grid-template-columns:repeat(2,1fr); grid-auto-rows:150px;}
  .gallery-grid a:nth-child(6n+1){grid-column:span 2; grid-row:span 1;}
  .related-grid{grid-template-columns:1fr;}
  .event-meta-row{gap:18px;}
  .wrv-badge-stack{grid-template-columns:1fr;}
  .top-controls{grid-template-columns:1fr;}
}

/* =====================================================================
   MIGRATED CONTENT (old WordPress page-builder rows and columns)
   ===================================================================== */
.article-body .wp-row, .prose .wp-row{display:grid; grid-template-columns:repeat(12,1fr); gap:28px; margin:8px 0 24px; align-items:start;}
.article-body .wp-col, .prose .wp-col{grid-column:span 12; min-width:0;}
.article-body .wp-col-1-2{grid-column:span 6;} .article-body .wp-col-1-3{grid-column:span 4;} .article-body .wp-col-2-3{grid-column:span 8;}
.prose .wp-col-1-2{grid-column:span 6;} .prose .wp-col-1-3{grid-column:span 4;} .prose .wp-col-2-3{grid-column:span 8;}
.prose .wp-col-1-4{grid-column:span 3;} .prose .wp-col-3-4{grid-column:span 9;} .prose .wp-col-1-6{grid-column:span 2;} .prose .wp-col-5-6{grid-column:span 10;}
.prose .wp-image img{margin:0 auto; border-radius:var(--radius);}
.prose hr{border:none; border-top:1px solid var(--line); margin:28px 0;}
.prose h4, .prose h5{font-family:'Mona Sans'; margin:22px 0 10px;}
.prose .table-wrap{overflow-x:auto; margin:20px 0 28px;}
.prose .table-wrap table{margin:0; min-width:520px;}
.prose table td ul{margin:0; padding-left:18px;}
.prose table img{margin:0; max-width:120px; border-radius:6px;}
.prose .committee-grid{grid-template-columns:repeat(3,1fr);}
.prose .committee-card p{color:var(--muted);}
.article-body img{max-width:100%; height:auto; border-radius:8px; margin:16px 0;}
.article-body .table-wrap{overflow-x:auto; margin:20px 0;}
.article-body table{width:100%; border-collapse:collapse; font-size:14px; background:var(--card);}
.article-body th, .article-body td{border:1px solid var(--line); padding:8px 12px; text-align:left; vertical-align:top;}
@media (max-width:980px){
  .prose .wp-col-1-2, .prose .wp-col-1-3, .prose .wp-col-2-3, .prose .wp-col-1-4, .prose .wp-col-3-4, .prose .wp-col-1-6, .prose .wp-col-5-6{grid-column:span 12;}
  .prose .committee-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:600px){ .prose .committee-grid{grid-template-columns:1fr;} }

/* =====================================================================
   CONTENT PAGES v2: hero band, two-column layout with sticky sidebar
   ===================================================================== */
.page-hero{background:var(--ink); color:#fff; position:relative; overflow:hidden; padding:64px 0 56px;}
.page-hero::before{content:""; position:absolute; inset:0; background:radial-gradient(700px 340px at 88% -10%, rgba(199,220,255,.22), transparent 70%), radial-gradient(500px 260px at -5% 120%, rgba(67,106,172,.35), transparent 70%);}
.page-hero::after{content:""; position:absolute; right:-60px; bottom:-80px; width:340px; height:340px; border-radius:50%; border:1px solid rgba(199,220,255,.15); box-shadow:0 0 0 40px rgba(199,220,255,.04), 0 0 0 80px rgba(199,220,255,.025);}
.page-hero .wrap{position:relative; z-index:1;}
.page-hero .eyebrow{color:var(--accent);}
.page-hero h1{color:#fff; font-size:32px; max-width:900px;}
.page-hero .lead{color:#C9D3E6; max-width:720px; margin-top:16px; font-size:16.5px;}
.page-hero .crumb{margin-top:26px;}

.page-layout{display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:56px; align-items:start;}
.page-layout .prose{max-width:none;}
.page-aside{position:sticky; top:calc(var(--sticky-top, 110px)); display:flex; flex-direction:column; gap:18px;}
.aside-card{background:var(--card); border:1px solid var(--line); border-radius:14px; padding:22px 22px;}
.aside-card h5{font-family:'Mona Sans'; font-size:12px; letter-spacing:.08em; text-transform:uppercase; color:var(--accent-dark); margin-bottom:12px;}
.aside-card ul{display:flex; flex-direction:column; gap:2px;}
.aside-card li a{display:block; padding:8px 10px; border-radius:8px; font-size:14px; font-weight:600; color:var(--ink2); transition:background .2s ease, color .2s ease;}
.aside-card li a:hover{background:var(--paper); color:var(--accent-dark);}
.aside-card li a.current{background:var(--ink); color:#fff;}
.toc a{font-size:13.5px !important; font-weight:500 !important; border-left:2px solid var(--line); border-radius:0 !important; padding:6px 12px !important;}
.toc a.active{border-left-color:var(--accent-dark); color:var(--accent-dark) !important; background:transparent !important;}
.aside-contact{background:var(--ink); color:#C9D3E6; border:none;}
.aside-contact h5{color:var(--accent);}
.aside-contact p{font-size:13.5px; margin-bottom:14px;}
.aside-contact .btn{width:100%; justify-content:center;}
@media (max-width:1100px){ .page-layout{grid-template-columns:1fr; gap:40px;} .page-aside{position:static;} .aside-toc{display:none;} }

/* ----- typography refresh for CMS content ----- */
.prose{font-size:16.5px; line-height:1.75;}
.prose > p:first-child, .prose p.lead{font-size:19px; line-height:1.6; color:var(--ink);}
.prose p.lead{margin-bottom:28px; font-family:'DM Sans'; font-weight:500;}
.prose h2{position:relative; padding-top:14px; margin-top:52px; scroll-margin-top:130px;}
.prose h2::before{content:""; position:absolute; left:0; top:0; width:44px; height:3px; border-radius:3px; background:var(--accent-dark);}
.prose h3{scroll-margin-top:130px;}
.prose ul:not([class]) > li::marker{color:var(--accent-dark);}
.prose blockquote, .prose .mission-quote{border:none; padding:34px 38px; background:var(--ink); color:#fff; border-radius:16px; font-size:clamp(19px,2.2vw,24px); line-height:1.4; position:relative;}
.prose blockquote::before{content:"“"; position:absolute; left:22px; top:0px; font-size:60px; color:var(--accent); font-family:Georgia,serif; line-height:1;}

/* ----- components (also available in the Admin editor) ----- */
.card-grid{display:grid; gap:20px; margin:22px 0 30px; grid-template-columns:repeat(3,1fr);}
.card-grid.cols-2{grid-template-columns:repeat(2,1fr);} .card-grid.cols-4{grid-template-columns:repeat(4,1fr);}
.info-card{position:relative; display:block; background:var(--card); border:1px solid var(--line); border-radius:16px; padding:26px 24px; color:inherit; text-decoration:none !important; transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;}
.info-card h3, .info-card h4{font-size:17px; margin:0 0 8px !important; padding:0 !important;}
.info-card h3::before, .info-card h4::before{display:none;}
.info-card p{font-size:14.5px; color:var(--muted); margin:0 0 6px !important; font-weight:400 !important;}
.info-card .ic{width:46px; height:46px; border-radius:12px; display:flex; align-items:center; justify-content:center; background:var(--accent); color:var(--ink); font-size:19px; margin-bottom:16px;}
.info-card a{font-weight:700;}
.link-card:hover{transform:translateY(-4px); box-shadow:0 24px 50px -30px rgba(14,27,51,.35); border-color:var(--accent-dark);}
.link-card::after{content:"→"; position:absolute; right:22px; top:24px; color:var(--accent-dark); font-weight:700; transition:transform .25s ease;}
.link-card:hover::after{transform:translateX(4px);}
.info-card.compact{padding:18px 44px 18px 20px; font-weight:700; font-size:15px;}
.info-card.compact::after{top:17px;}
.info-card.numbered .num{position:absolute; right:20px; top:16px; font-family:'Mona Sans'; font-weight:900; font-size:30px; color:#E6E3D8;}
.badge{display:inline-block; font-size:11px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; background:var(--accent); color:var(--ink); padding:4px 10px; border-radius:100px; margin-bottom:10px;}

.people-grid, .prose .committee-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin:26px 0 34px;}
.person-card, .committee-card{background:var(--card); border:1px solid var(--line); border-radius:18px; padding:30px 22px 26px; text-align:center; transition:transform .25s ease, box-shadow .25s ease;}
.person-card:hover, .committee-card:hover{transform:translateY(-4px); box-shadow:0 26px 50px -32px rgba(14,27,51,.35);}
    .person-card img, .committee-card img, .prose .committee-card img {
        width: 160px;
        height: 180px;
        border-radius: 0%;
        object-fit: cover;
        object-position: top;
        margin: 0 auto 18px !important;
        background: transparent;
        /*box-shadow: 0 0 0 5px #fff, 0 0 0 6px var(--line);*/
    }
.committee-card .avatar, .expert-card .avatar{width:96px; height:96px; border-radius:50%; margin:0 auto 18px; display:flex; align-items:center; justify-content:center; background:linear-gradient(135deg,var(--ink),#436aac); color:#fff; font-family:'Mona Sans'; font-weight:800; font-size:28px;}
.person-card h4, .committee-card h4{font-size:17px; margin:0 0 6px !important; padding:0 !important;}
.person-card h4::before, .committee-card h4::before{display:none;}
.person-card p, .committee-card p{font-size:14px; color:var(--muted); margin:0 0 10px !important;}
.person-card .badge{margin:4px 0 0;}

.timeline{position:relative; margin:30px 0 36px; padding-left:8px;}
.timeline::before{content:""; position:absolute; left:58px; top:6px; bottom:6px; width:2px; background:linear-gradient(var(--accent-dark),var(--line));}
.tl-item{display:grid; grid-template-columns:100px 1fr; gap:22px; position:relative; padding:0 0 26px;}
.tl-item::before{content:""; position:absolute; left:44px; top:6px; width:16px; height:16px; border-radius:50%; background:#fff; border:4px solid var(--accent-dark);}
.tl-year{font-family:'Mona Sans'; font-weight:900; font-size:15px; color:var(--accent-dark); padding-top:2px;}
.tl-body{background:var(--card); border:1px solid var(--line); border-radius:14px; padding:18px 22px;}
.tl-body h4{margin:0 0 4px !important; font-size:17px;}
.tl-body p{margin:0 0 4px !important; font-size:14px;}
.tl-meta{color:var(--muted);}
.tl-theme{font-style:italic; color:var(--ink2);}
.tl-body a{font-size:13.5px; font-weight:700;}
.tl-item.cancelled .tl-body{opacity:.6; background:transparent; border-style:dashed;}
.tl-item.cancelled::before{border-color:#b8b4a8;}

.directory{display:grid; grid-template-columns:repeat(2,1fr); gap:16px; margin:20px 0 30px;}
.directory-search{grid-column:1/-1; position:relative; margin-bottom:6px;}
.directory-search input{width:100%; border:1px solid var(--line); border-radius:100px; padding:15px 22px 15px 50px; font-family:'DM Sans'; font-size:15px; background:var(--card);}
.directory-search i{position:absolute; left:20px; top:50%; transform:translateY(-50%); color:var(--muted);}
.directory-search .count{position:absolute; right:22px; top:50%; transform:translateY(-50%); font-size:12.5px; color:var(--muted);}
.expert-card{display:grid; grid-template-columns:64px 1fr; gap:16px; background:var(--card); border:1px solid var(--line); border-radius:14px; padding:20px;}
.expert-card .avatar{width:64px; height:64px; font-size:20px; margin:0;}
.expert-card h4{margin:2px 0 4px !important; font-size:16px; padding:0 !important;}
.expert-card h4::before{display:none;}
.expert-card p{font-size:13.5px; color:var(--muted); margin:0 0 10px !important;}
.tags{display:flex; flex-wrap:wrap; gap:6px;}
.tag{display:inline-block; font-size:11.5px; font-weight:600; color:var(--ink2); background:var(--paper); border:1px solid var(--line); border-radius:100px; padding:4px 10px;}

.callout{display:flex; gap:16px; align-items:flex-start; background:#EEF3FC; border:1px solid #D6E2F7; border-left:4px solid var(--accent-dark); border-radius:12px; padding:18px 22px; margin:24px 0;}
.callout > i{font-size:20px; color:var(--accent-dark); margin-top:3px;}
.callout p:last-child{margin-bottom:0;}
.callout.callout-warning{background:#FFF7E6; border-color:#F5DFB0; border-left-color:#D99A1E;} .callout.callout-warning > i{color:#D99A1E;}
.callout.callout-success{background:#ECF8F1; border-color:#CBE9D7; border-left-color:#2E9E61;} .callout.callout-success > i{color:#2E9E61;}

.cta-band{display:flex; justify-content:space-between; align-items:center; gap:24px; flex-wrap:wrap; background:var(--ink); color:#C9D3E6; border-radius:18px; padding:30px 34px; margin:34px 0;}
.cta-band h3{color:#fff; font-size:21px; margin:0 0 6px !important;}
.cta-band p{margin:0 !important; font-size:14.5px; max-width:520px; color:#C9D3E6;}

details.accordion{background:var(--card); border:1px solid var(--line); border-radius:12px; margin:0 0 12px; overflow:hidden;}
details.accordion summary{cursor:pointer; list-style:none; padding:18px 54px 18px 22px; font-weight:700; position:relative;}
details.accordion summary::-webkit-details-marker{display:none;}
details.accordion summary::after{content:"+"; position:absolute; right:22px; top:50%; transform:translateY(-50%); font-size:22px; color:var(--accent-dark); transition:transform .2s ease;}
details.accordion[open] summary::after{transform:translateY(-50%) rotate(45deg);}
details.accordion .acc-body{padding:0 22px 18px; border-top:1px solid var(--line);}
details.accordion .acc-body h2{font-size:18px; margin-top:20px; padding-top:0;}
details.accordion .acc-body h2::before{display:none;}

.map-embed{border-radius:16px; overflow:hidden; border:1px solid var(--line); margin:30px 0; aspect-ratio:16/7; background:var(--paper);}
.map-embed iframe{width:100%; height:100%; border:0; display:block;}

/* Image gallery inserted with the editor's Gallery button */
.wavo-gallery{display:grid; grid-template-columns:repeat(var(--cols,3),1fr); gap:12px; margin:26px 0;}
.wavo-gallery a{display:block; position:relative; border-radius:12px; overflow:hidden; aspect-ratio:4/3; background:var(--paper);}
.wavo-gallery img{width:100%; height:100%; object-fit:cover; margin:0 !important; border-radius:0 !important; transition:transform .5s ease;}
.wavo-gallery a:hover img{transform:scale(1.06);}
.wavo-gallery a::after{content:"\f00e"; font-family:"Font Awesome 7 Free","Font Awesome 6 Free"; font-weight:900; position:absolute; right:10px; top:10px; width:30px; height:30px; border-radius:50%; background:rgba(14,27,51,.6); color:#fff; display:flex; align-items:center; justify-content:center; font-size:12px; opacity:0; transition:opacity .25s;}
.wavo-gallery a:hover::after{opacity:1;}
.wavo-gallery[data-cols="2"]{--cols:2;} .wavo-gallery[data-cols="4"]{--cols:4;}
/* Video inserted with the editor's Video button */
.video-embed{position:relative; aspect-ratio:16/9; border-radius:14px; overflow:hidden; background:#000; margin:26px 0;}
.video-embed iframe, .video-embed video{position:absolute; inset:0; width:100%; height:100%; border:0;}
.prose figure{margin:26px 0;} .prose figcaption{font-size:13px; color:var(--muted); text-align:center; margin-top:8px;}
.prose .cols-2, .prose .cols-3{display:grid; gap:28px; margin:20px 0;}
.prose .cols-2{grid-template-columns:1fr 1fr;} .prose .cols-3{grid-template-columns:repeat(3,1fr);}
.prose img.align-left{float:left; max-width:45%; margin:6px 24px 12px 0;} .prose img.align-right{float:right; max-width:45%; margin:6px 0 12px 24px;}
.prose .doc-list a{text-decoration:none; color:var(--ink);}

@media (max-width:980px){
  .card-grid, .card-grid.cols-4{grid-template-columns:repeat(2,1fr);}
  .people-grid, .prose .committee-grid{grid-template-columns:repeat(2,1fr);}
  .directory{grid-template-columns:1fr;}
  .wavo-gallery{--cols:2;}
  .prose .cols-3{grid-template-columns:1fr 1fr;}
}
@media (max-width:600px){
  .card-grid, .card-grid.cols-2, .card-grid.cols-4, .people-grid, .prose .committee-grid, .prose .cols-2, .prose .cols-3{grid-template-columns:1fr;}
  .tl-item{grid-template-columns:70px 1fr; gap:14px;} .timeline::before{left:38px;} .tl-item::before{left:24px;}
  .map-embed{aspect-ratio:4/3;}
  .page-hero{padding:46px 0 40px;}
}

/* =====================================================================
   OLD-SITE IMAGE LAYOUT + FULL-WIDTH ARTICLE TEXT
   Migrated write-ups keep the old page's picture placement (left/right/centre,
   size and caption); the text uses the whole column next to the sidebar.
   ===================================================================== */
.article-grid{grid-template-columns:minmax(0,1fr) 320px; gap:48px;}
.article-body p, .article-body ul, .article-body ol, .article-body .theme-line,
.article-signoff, .committee-box{max-width:none;}
.article-body p{font-size:16px; line-height:1.75;}
.article-body::after, .prose::after{content:""; display:block; clear:both;}
.article-body hr, .article-body h2, .article-body h3, .article-body .wavo-gallery, .article-body .wp-row,
.prose hr, .prose h2, .prose h3, .prose .wavo-gallery, .prose .wp-row{clear:both;}
.article-body hr{border:none; border-top:1px solid var(--line); margin:28px 0;}

.article-body img, .prose img{max-width:100%; height:auto;}
.article-body img.align-left, .prose img.align-left,
.article-body figure.align-left, .prose figure.align-left{float:left; max-width:48%; margin:6px 28px 16px 0;}
.article-body img.align-right, .prose img.align-right,
.article-body figure.align-right, .prose figure.align-right{float:right; max-width:48%; margin:6px 0 16px 28px;}
.article-body img.align-center, .prose img.align-center{display:block; margin:24px auto; clear:both;}
.article-body p > img.align-left + img.align-left{max-width:calc(48% - 28px);}

.article-body figure, .prose figure{width:fit-content; max-width:100%; margin:26px 0;}
.article-body figure.align-center, .prose figure.align-center{margin-left:auto; margin-right:auto; clear:both;}
.article-body figure img, .prose figure img{display:block; margin:0 !important; border-radius:10px;}
.article-body figcaption, .prose figcaption{contain:inline-size; font-size:13px; line-height:1.5; color:var(--muted); margin-top:9px; text-align:left;}

/* captions on inline galleries */
.wavo-gallery .g-cap{position:absolute; left:0; right:0; bottom:0; padding:22px 12px 10px; font-size:11.5px; line-height:1.35; font-weight:600; color:#fff;
  background:linear-gradient(0deg, rgba(14,27,51,.85), transparent); opacity:0; transition:opacity .25s; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden;}
.wavo-gallery a:hover .g-cap{opacity:1;}
.article-body .wavo-gallery a, .article-body .wavo-gallery img{margin:0;}

@media (max-width:980px){
  .article-grid{grid-template-columns:1fr; gap:36px;}
}
@media (max-width:640px){
  .article-body img.align-left, .prose img.align-left, .article-body figure.align-left, .prose figure.align-left,
  .article-body img.align-right, .prose img.align-right, .article-body figure.align-right, .prose figure.align-right{float:none; max-width:100%; margin:20px 0;}
  .article-body p > img.align-left + img.align-left{max-width:100%;}
}
