:root{
  --blue:#17347F;
  --blue-dark:#0F2359;
  --red:#B20D2A;
  --red-dark:#821226;
  --gold:#FFC72C;
  --gold-soft:#FFE49A;
  --cream:#FAF6EE;
  --cream-2:#FFFDF8;
  --ink:#171717;
  --ink-soft:#3F3A34;
  --muted:#655F56;
  --line:rgba(23,23,23,0.14);
  --white:#fff;
  --shadow:0 18px 45px rgba(20,20,20,0.14);
  --radius:18px;
  --serif:"Fraunces", Georgia, serif;
  --sans:"Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

*{box-sizing:border-box;}
html{
  scroll-behavior:smooth;
  font-size:16px;
}
body{
  margin:0;
  font-family:var(--sans);
  color:var(--ink);
  background:
  radial-gradient(circle at top left, rgba(255,199,44,0.18), transparent 34rem),
  var(--cream);
  line-height:1.68;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block;}
a{color:inherit;}
:focus-visible{
  outline:3px solid var(--gold);
  outline-offset:3px;
  border-radius:10px;
}

.wrap{
  max-width:1120px;
  margin:0 auto;
  padding:0 28px;
}

/* ---------- Header / language switcher ---------- */
header.site{
  position:sticky;
  top:0;
  z-index:50;
  background:rgba(250,246,238,0.96);
  backdrop-filter:blur(12px);
  border-bottom:1px solid var(--line);
  box-shadow:0 6px 18px rgba(0,0,0,0.05);
}
.site-bar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:13px 28px;
  max-width:1120px;
  margin:0 auto;
}
.brand{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
  font-family:var(--serif);
  font-weight:700;
  font-size:1.05rem;
  letter-spacing:0.01em;
  color:var(--ink);
}
.brand > span:last-child{
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.brand .flags{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  gap:7px;
  padding:5px;
  background:var(--white);
  border:1px solid rgba(23,23,23,0.16);
  border-radius:999px;
  box-shadow:0 8px 18px rgba(0,0,0,0.08);
}
.brand .flags img{
  width:36px;
  height:25px;
  object-fit:contain;
  background:var(--white);
  border:1px solid rgba(23,23,23,0.20);
  border-radius:5px;
  box-shadow:none;
}
.brand .flags img:last-child{margin-left:0;}

.lang-switch{
  flex:0 0 auto;
  display:flex;
  gap:4px;
  background:var(--white);
  border:1px solid var(--line);
  border-radius:999px;
  padding:4px;
  box-shadow:0 6px 14px rgba(0,0,0,0.06);
}
.lang-switch button{
  font-family:var(--mono);
  font-size:0.74rem;
  font-weight:700;
  letter-spacing:0.04em;
  border:none;
  background:transparent;
  color:var(--ink-soft);
  padding:8px 13px;
  border-radius:999px;
  cursor:pointer;
  transition:background .2s, color .2s, transform .15s;
}
.lang-switch button.active{
  background:var(--blue);
  color:#fff;
}
.lang-switch button:hover:not(.active){
  background:rgba(31,58,143,0.10);
  transform:translateY(-1px);
}


/* ---------- Urgent cardboard box request ---------- */
.urgent-box-alert{
  position:relative;
  z-index:45;
  background:linear-gradient(135deg,#b00020,#e00024 58%,#8b0018);
  color:#fff;
  border-bottom:4px solid var(--gold);
  box-shadow:0 10px 24px rgba(176,0,32,0.28);
}
.urgent-box-alert-inner{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  padding:12px 28px;
  text-align:center;
}
.urgent-box-alert strong{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:7px 14px;
  border-radius:999px;
  background:#fff;
  color:#b00020;
  font-family:var(--mono);
  font-size:0.82rem;
  font-weight:900;
  letter-spacing:0.1em;
  text-transform:uppercase;
  box-shadow:0 7px 16px rgba(0,0,0,0.18);
}
.urgent-box-alert span{
  font-weight:800;
  font-size:clamp(0.95rem,1.7vw,1.08rem);
  line-height:1.35;
  text-shadow:0 2px 8px rgba(0,0,0,0.24);
}

@media (max-width:640px){
  .urgent-box-alert-inner{
    flex-direction:column;
    gap:8px;
    padding:12px 18px 14px;
  }
  .urgent-box-alert strong{
    font-size:0.76rem;
    min-height:30px;
    padding:6px 12px;
  }
  .urgent-box-alert span{
    font-size:0.94rem;
  }
}

/* ---------- Hero (diagonal split signature) ---------- */
.hero{
  position:relative;
  overflow:hidden;
  min-height:610px;
  display:flex;
  align-items:center;
  background:var(--cream);
}
.hero-bg{
  position:absolute;
  inset:0;
  z-index:0;
}
.hero-bg::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  background:
  linear-gradient(90deg, rgba(0,0,0,0.40) 0%, rgba(0,0,0,0.20) 52%, rgba(0,0,0,0.32) 100%),
  radial-gradient(circle at 24% 30%, rgba(255,255,255,0.13), transparent 24rem);
  pointer-events:none;
}
.hero-bg .panel{
  position:absolute;
  top:0;
  bottom:0;
  width:64%;
}
.hero-bg .panel.left{
  left:0;
  background:linear-gradient(135deg,var(--red-dark),var(--red) 62%);
  clip-path:polygon(0 0, 80% 0, 54% 100%, 0 100%);
}
.hero-bg .panel.right{
  right:0;
  background:linear-gradient(135deg,var(--blue),var(--blue-dark) 78%);
  clip-path:polygon(46% 0, 100% 0, 100% 100%, 20% 100%);
}
.hero-bg .stripe-gold{
  position:absolute;
  top:0;bottom:0;
  left:45%;
  width:12%;
  background:linear-gradient(180deg,var(--gold),var(--gold-soft));
  clip-path:polygon(42% 0, 80% 0, 54% 100%, 16% 100%);
  opacity:0.98;
  z-index:1;
  box-shadow:0 0 35px rgba(255,199,44,0.28);
}
.hero-content{
  position:relative;
  z-index:3;
  max-width:1120px;
  margin:0 auto;
  padding:96px 28px 76px;
  width:100%;
}
.hero-content::before{
  content:"";
  position:absolute;
  z-index:-1;
  left:28px;
  top:72px;
  width:min(720px, calc(100% - 56px));
  height:calc(100% - 138px);
  min-height:390px;
  background:rgba(0,0,0,0.34);
  border:1px solid rgba(255,255,255,0.24);
  border-radius:26px;
  box-shadow:0 22px 60px rgba(0,0,0,0.22);
  backdrop-filter:blur(4px);
}
.hero-eyebrow{
  font-family:var(--mono);
  font-size:0.78rem;
  font-weight:700;
  letter-spacing:0.12em;
  text-transform:uppercase;
  color:#fff;
  background:rgba(0,0,0,0.38);
  border:1px solid rgba(255,255,255,0.22);
  display:inline-block;
  padding:8px 15px;
  border-radius:999px;
  margin-bottom:24px;
}
.hero h1{
  font-family:var(--serif);
  font-weight:700;
  font-size:clamp(2.45rem, 5.4vw, 4.35rem);
  color:#fff;
  max-width:760px;
  line-height:1.03;
  margin:0 0 24px;
  text-wrap:balance;
  text-shadow:0 4px 24px rgba(0,0,0,0.40);
}
.hero p.lead{
  color:#fff;
  max-width:620px;
  font-size:clamp(1.05rem, 1.45vw, 1.24rem);
  font-weight:500;
  line-height:1.64;
  opacity:0.98;
  margin:0 0 36px;
  text-shadow:0 2px 14px rgba(0,0,0,0.30);
}
.hero-ctas{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:50px;
  font-family:var(--sans);
  font-weight:800;
  font-size:0.98rem;
  line-height:1.2;
  padding:14px 24px;
  border-radius:999px;
  text-decoration:none;
  cursor:pointer;
  border:2px solid transparent;
  transition:transform .15s ease, box-shadow .15s ease, background .15s ease;
}
.btn:hover{transform:translateY(-2px);}
.btn-primary{
  background:var(--gold);
  color:#151515;
  box-shadow:0 12px 26px rgba(255,199,44,0.36);
}
.btn-primary:hover{box-shadow:0 16px 30px rgba(255,199,44,0.44);}
.btn-ghost{
  background:rgba(255,255,255,0.14);
  color:#fff;
  border-color:rgba(255,255,255,0.72);
}
.btn-ghost:hover{background:rgba(255,255,255,0.22);}

/* ---------- Sections ---------- */
section{padding:86px 0;}
.section-head{
  max-width:740px;
  margin:0 0 46px;
}
.eyebrow{
  font-family:var(--mono);
  font-size:0.78rem;
  font-weight:800;
  letter-spacing:0.11em;
  text-transform:uppercase;
  color:var(--red);
  margin-bottom:12px;
  display:block;
}
h2{
  font-family:var(--serif);
  font-weight:700;
  font-size:clamp(1.85rem,3.4vw,2.7rem);
  margin:0 0 16px;
  line-height:1.13;
  text-wrap:balance;
}
.section-head p{
  color:var(--ink-soft);
  font-size:1.08rem;
  line-height:1.72;
  margin:0;
}

/* Trust / flow */
.flow{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}
.flow-card{
  background:rgba(255,255,255,0.88);
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:30px 25px;
  box-shadow:0 12px 30px rgba(0,0,0,0.06);
}
.flow-card .num{
  font-family:var(--mono);
  font-size:0.82rem;
  font-weight:800;
  color:var(--blue);
  background:rgba(31,58,143,0.10);
  display:inline-block;
  padding:5px 11px;
  border-radius:8px;
  margin-bottom:17px;
}
.flow-card h3{
  font-family:var(--serif);
  font-size:1.24rem;
  line-height:1.25;
  margin:0 0 11px;
  font-weight:700;
}
.flow-card p{
  color:var(--ink-soft);
  font-size:1rem;
  line-height:1.66;
  margin:0;
}

/* Transparency / current channel */
.donate-panel{
  background:
  radial-gradient(circle at 90% 5%, rgba(255,199,44,0.25), transparent 14rem),
  linear-gradient(135deg,var(--blue),var(--blue-dark));
  color:#fff;
  border-radius:24px;
  padding:50px;
  display:grid;
  grid-template-columns:1.15fr 1fr;
  gap:40px;
  align-items:center;
  position:relative;
  overflow:hidden;
  box-shadow:var(--shadow);
}
.donate-panel::before{
  content:"";
  position:absolute;
  right:-70px;top:-80px;
  width:240px;height:240px;
  background:var(--gold);
  opacity:0.13;
  border-radius:50%;
}
.donate-panel > *{position:relative; z-index:1;}
.donate-panel h3{
  font-family:var(--serif);
  font-size:clamp(1.55rem,2.6vw,2rem);
  line-height:1.16;
  margin:0 0 16px;
  font-weight:700;
}
.donate-panel p{
  opacity:0.96;
  margin:0 0 24px;
  max-width:560px;
  font-size:1.03rem;
  line-height:1.72;
}

.cash-total-box{
  max-width:560px;
  margin:0 0 26px;
  padding:18px;
  border-radius:18px;
  background:rgba(255,255,255,0.14);
  border:1px solid rgba(255,255,255,0.28);
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.12), 0 10px 24px rgba(0,0,0,0.12);
}
.cash-total-kicker{
  display:block;
  font-family:var(--mono);
  font-size:0.76rem;
  font-weight:800;
  letter-spacing:0.08em;
  text-transform:uppercase;
  color:rgba(255,255,255,0.88);
  margin-bottom:12px;
}
.cash-total-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.cash-total-amount{
  background:rgba(255,255,255,0.18);
  border:1px solid rgba(255,255,255,0.22);
  border-radius:14px;
  padding:16px 12px;
  text-align:center;
}
.cash-total-amount strong{
  display:block;
  font-family:var(--serif);
  font-size:clamp(1.9rem,3vw,2.35rem);
  line-height:1;
  color:var(--gold);
  text-shadow:0 3px 14px rgba(0,0,0,0.18);
}
.cash-total-amount span{
  display:block;
  margin-top:7px;
  font-family:var(--mono);
  font-size:0.74rem;
  font-weight:800;
  letter-spacing:0.06em;
  text-transform:uppercase;
  color:#fff;
  opacity:0.92;
}
.cash-total-box p{
  max-width:none;
  margin:13px 0 0;
  font-size:0.84rem;
  line-height:1.5;
  opacity:0.92;
}
.cash-total-breakdown{
  list-style:none;
  margin:14px 0 0;
  padding:0;
}
.cash-total-breakdown li{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:9px 0;
  border-bottom:1px solid rgba(255,255,255,0.18);
  font-family:var(--mono);
  font-size:0.82rem;
  font-weight:600;
  color:rgba(255,255,255,0.9);
}
.cash-total-breakdown li:last-child{
  border-bottom:0;
}
.cash-total-breakdown li strong{
  font-family:var(--serif);
  font-size:1.05rem;
  color:var(--gold);
  white-space:nowrap;
}
.donate-meta{
  font-family:var(--mono);
  font-size:0.9rem;
  background:rgba(255,255,255,0.14);
  border-radius:16px;
  padding:22px 22px;
  border:1px solid rgba(255,255,255,0.28);
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.14);
}
.donate-meta div + div{margin-top:14px;}
.donate-meta strong{
  display:block;
  font-size:0.72rem;
  opacity:0.78;
  text-transform:uppercase;
  letter-spacing:0.07em;
  margin-bottom:4px;
  font-family:var(--mono);
}

/* ---------- Cash donation panel ---------- */
.cash-panel{
  margin-top:28px;
  background:var(--white);
  border:1px solid var(--line);
  border-radius:24px;
  padding:44px;
  display:grid;
  grid-template-columns:1fr 1.15fr;
  gap:36px;
  align-items:center;
  box-shadow:var(--shadow);
}
.cash-media{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.cash-media img{
  width:100%;
  height:100%;
  min-height:150px;
  object-fit:cover;
  border-radius:16px;
  border:1px solid var(--line);
  box-shadow:0 10px 22px rgba(0,0,0,0.10);
}
.cash-info h3{
  font-family:var(--serif);
  font-size:clamp(1.35rem,2.2vw,1.7rem);
  line-height:1.2;
  margin:0 0 14px;
  font-weight:700;
  color:var(--ink);
}
.cash-info p{
  color:var(--ink-soft);
  margin:0 0 20px;
  font-size:1.01rem;
  line-height:1.72;
}
.cash-address{
  font-family:var(--mono);
  font-size:0.92rem;
  background:var(--cream-2);
  border:1px solid var(--line);
  border-radius:14px;
  padding:16px 18px;
  margin:0 0 22px;
  display:flex;
  flex-direction:column;
  gap:4px;
}
.cash-address strong{
  font-size:0.7rem;
  text-transform:uppercase;
  letter-spacing:0.07em;
  color:var(--muted);
}
.cash-address span{color:var(--ink);font-weight:600;}


/* ---------- Top social follow strip ---------- */
.top-social-strip{
  background:
  radial-gradient(circle at 100% 0%, rgba(255,199,44,0.24), transparent 12rem),
  linear-gradient(135deg, rgba(255,228,154,0.70), rgba(255,253,248,0.96));
  border-bottom:1px solid var(--line);
}
.top-social-strip .wrap{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:9px 28px 10px;
}
.top-social-label{
  font-family:var(--mono);
  font-size:0.78rem;
  font-weight:800;
  letter-spacing:0.035em;
  color:var(--ink);
  white-space:nowrap;
}
.top-social-strip .social-links{
  justify-content:flex-end;
}
.top-social-strip .social-links a{
  width:44px;
  height:44px;
}

/* ---------- Social links ---------- */
.social-links{
  display:flex;
  align-items:center;
  gap:10px;
}
.social-links a{
  width:40px;
  height:40px;
  border-radius:50%;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  box-shadow:0 6px 16px rgba(0,0,0,0.16);
  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
.social-links a:hover{transform:translateY(-3px) scale(1.05);box-shadow:0 10px 20px rgba(0,0,0,0.22);filter:brightness(1.06);}
.social-links a.social-fb{background:#1877F2;}
.social-links a.social-ig{
  background:radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%);
}
.social-links svg{width:19px;height:19px;}
footer .wrap{row-gap:16px;}



/* Secure delivery / physical donations */
.info-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
  margin-bottom:26px;
}
.info-card{
  background:rgba(255,255,255,0.90);
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:28px 24px;
  box-shadow:0 12px 30px rgba(0,0,0,0.06);
}
.info-card .tag{
  font-family:var(--mono);
  font-size:0.72rem;
  font-weight:800;
  letter-spacing:0.07em;
  text-transform:uppercase;
  color:var(--blue);
  background:rgba(31,58,143,0.10);
  display:inline-block;
  padding:5px 11px;
  border-radius:8px;
  margin-bottom:15px;
}
.info-card h3{
  font-family:var(--serif);
  font-size:1.24rem;
  line-height:1.25;
  margin:0 0 11px;
  font-weight:700;
}
.info-card p{
  color:var(--ink-soft);
  font-size:1rem;
  line-height:1.66;
  margin:0;
}
.market-panel{
  background:
  radial-gradient(circle at 92% 10%, rgba(255,199,44,0.22), transparent 15rem),
  linear-gradient(135deg,#fff,var(--cream-2));
  border:1px solid var(--line);
  border-radius:24px;
  padding:38px;
  display:grid;
  grid-template-columns:1.18fr 0.82fr;
  gap:28px;
  align-items:start;
  box-shadow:var(--shadow);
}
.market-panel h3{
  font-family:var(--serif);
  font-size:clamp(1.45rem,2.5vw,2rem);
  line-height:1.16;
  margin:0 0 16px;
  font-weight:700;
}
.market-panel p{
  color:var(--ink-soft);
  font-size:1.03rem;
  line-height:1.72;
  margin:0 0 14px;
}
.market-panel p:last-child{margin-bottom:0;}
.market-points{
  display:grid;
  gap:12px;
}
.market-point{
  background:rgba(31,58,143,0.08);
  border:1px solid rgba(31,58,143,0.14);
  border-radius:16px;
  padding:16px 17px;
}
.market-point strong{
  display:block;
  font-family:var(--mono);
  font-size:0.75rem;
  line-height:1.35;
  letter-spacing:0.06em;
  text-transform:uppercase;
  color:var(--blue);
  margin-bottom:6px;
}
.market-point span{
  display:block;
  color:var(--ink-soft);
  font-size:0.95rem;
  line-height:1.55;
}

/* ---------- Events ---------- */
.events-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
  margin-top:8px;
}
.event-card{
  background:var(--white);
  border:1px solid var(--line);
  border-radius:22px;
  padding:30px;
  box-shadow:var(--shadow);
  display:flex;
  flex-direction:column;
  gap:16px;
}
.event-top{
  display:flex;
  align-items:flex-start;
  gap:16px;
}
.event-date{
  flex:0 0 auto;
  width:62px;
  text-align:center;
  background:linear-gradient(135deg,var(--blue),var(--blue-dark));
  color:#fff;
  border-radius:14px;
  padding:10px 0 9px;
  font-family:var(--mono);
}
.event-date .day{
  display:block;
  font-size:1.5rem;
  font-weight:800;
  line-height:1;
}
.event-date .month{
  display:block;
  font-size:0.66rem;
  letter-spacing:0.08em;
  text-transform:uppercase;
  opacity:0.85;
  margin-top:3px;
}
.event-heading{flex:1 1 auto;min-width:0;}
.event-heading h3{
  font-family:var(--serif);
  font-size:1.28rem;
  line-height:1.2;
  margin:0 0 6px;
  font-weight:700;
}
.event-meta{
  display:flex;
  flex-wrap:wrap;
  gap:6px 0;
  font-family:var(--mono);
  font-size:0.8rem;
  color:var(--muted);
}
.event-meta span:not(:first-child){margin-left:14px;position:relative;}
.event-meta span:not(:first-child)::before{
  content:"•";
  position:absolute;
  left:-11px;
  color:var(--line);
}
.event-card p{
  color:var(--ink-soft);
  font-size:0.97rem;
  line-height:1.65;
  margin:0;
}
.event-tags{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.event-tag{
  background:var(--cream-2);
  border:1px solid var(--line);
  border-radius:999px;
  padding:6px 13px;
  font-size:0.78rem;
  color:var(--ink-soft);
  font-family:var(--mono);
}
.event-note{
  font-size:0.82rem;
  color:var(--muted);
  font-style:italic;
  margin:0;
}
.event-card .btn{
  align-self:flex-start;
  margin-top:2px;
  min-height:44px;
  padding:11px 20px;
  font-size:0.9rem;
}
.event-card.placeholder{
  background:linear-gradient(135deg,rgba(31,58,143,0.06),rgba(255,199,44,0.10));
  border:1px dashed rgba(23,23,23,0.20);
  justify-content:center;
}
.event-card.placeholder .event-date{
  background:rgba(23,23,23,0.10);
  color:var(--ink-soft);
}
.event-card.placeholder .tag{
  align-self:flex-start;
  font-family:var(--mono);
  font-size:0.72rem;
  font-weight:800;
  letter-spacing:0.07em;
  text-transform:uppercase;
  color:var(--blue);
  background:rgba(31,58,143,0.10);
  display:inline-block;
  padding:5px 11px;
  border-radius:8px;
  margin-bottom:8px;
}

/* Institutions */
.institutions{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
  gap:20px;
}
.inst-card{
  background:rgba(255,255,255,0.88);
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:28px;
  box-shadow:0 12px 30px rgba(0,0,0,0.05);
}
.inst-card .tag{
  font-family:var(--mono);
  font-size:0.72rem;
  font-weight:800;
  letter-spacing:0.06em;
  text-transform:uppercase;
  color:var(--ink-soft);
  background:var(--cream);
  display:inline-block;
  padding:5px 11px;
  border-radius:8px;
  margin-bottom:15px;
}
.inst-card h4{
  font-family:var(--serif);
  font-size:1.2rem;
  line-height:1.25;
  margin:0 0 10px;
  font-weight:700;
}
.inst-card p{
  color:var(--ink-soft);
  font-size:1rem;
  line-height:1.66;
  margin:0;
}
.inst-placeholder{
  border:1.5px dashed rgba(23,23,23,0.22);
  background:rgba(255,255,255,0.52);
}
.inst-placeholder p{font-style:italic;}

/* Flags strip */
.flags-strip{
  width:100%;
  margin:0;
  background:#151515;
  color:#fff;
  border-top:4px solid var(--gold);
  border-bottom:4px solid var(--gold);
}
.flags-strip .wrap{
  max-width:none;
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:14px;
  padding:clamp(20px, 3vw, 34px) clamp(18px, 5vw, 72px);
  text-align:center;
}
.route-flags{
  width:min(100%, 520px);
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  justify-items:center;
  gap:clamp(10px, 3vw, 22px);
}
.route-flag{
  margin:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:7px;
  min-width:0;
}
.route-flag img{
  width:clamp(92px, 12vw, 138px);
  height:auto;
  aspect-ratio:3 / 2;
  object-fit:contain;
  background:#fff;
  padding:5px;
  border:1px solid rgba(255,255,255,0.35);
  border-radius:12px;
  box-shadow:0 10px 24px rgba(0,0,0,0.3);
}
.route-flag figcaption{
  font-family:var(--mono);
  font-size:0.72rem;
  font-weight:800;
  letter-spacing:0.09em;
  text-transform:uppercase;
  opacity:0.92;
}
.route-arrow{
  display:flex;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  border-radius:999px;
  background:var(--gold);
  color:#151515;
  font-size:1.5rem;
  font-weight:900;
  line-height:1;
  box-shadow:0 8px 22px rgba(255,199,44,0.24);
}
.flags-message{
  width:min(100%, 920px);
  margin:0;
  display:block;
  padding:15px clamp(14px, 2.6vw, 30px);
  border:1px solid rgba(255,255,255,0.24);
  border-radius:20px;
  background:rgba(255,255,255,0.09);
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.09);
  font-family:var(--mono);
  font-size:clamp(0.86rem, 1.4vw, 1.02rem);
  line-height:1.42;
  font-weight:800;
  letter-spacing:0.045em;
  opacity:0.99;
  text-transform:uppercase;
  overflow-wrap:anywhere;
}
.organiser-line{
  width:min(100%, 820px);
  margin:0;
  color:rgba(255,255,255,0.92);
  font-size:clamp(0.92rem, 1.35vw, 1.02rem);
  line-height:1.55;
  font-weight:600;
}
.organiser-line strong{
  color:var(--gold);
  font-weight:800;
}




/* ---------- Channel 103 organiser video ---------- */
.organiser-video-section{
  padding-top:72px;
}
.organiser-video-card{
  background:
  radial-gradient(circle at 90% 8%, rgba(255,199,44,0.20), transparent 16rem),
  linear-gradient(135deg,#fff,var(--cream-2));
  border:1px solid var(--line);
  border-radius:24px;
  padding:44px;
  box-shadow:var(--shadow);
}
.organiser-video-head{
  margin-bottom:30px;
}
.organiser-video-layout{
  display:grid;
  grid-template-columns:minmax(240px,360px) 1fr;
  gap:36px;
  align-items:center;
}
.organiser-video-frame{
  background:#151515;
  border:1px solid rgba(23,23,23,0.16);
  border-radius:24px;
  padding:10px;
  box-shadow:0 18px 42px rgba(0,0,0,0.22);
  width:min(100%,360px);
  margin:0 auto;
}
.organiser-video-frame video{
  display:block;
  width:100%;
  aspect-ratio:9/16;
  object-fit:cover;
  border-radius:17px;
  background:#000;
}
.organiser-video-text{
  max-width:620px;
}
.video-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-bottom:16px;
  padding:7px 13px;
  border-radius:999px;
  background:rgba(31,58,143,0.10);
  color:var(--blue);
  font-family:var(--mono);
  font-size:0.74rem;
  font-weight:900;
  letter-spacing:0.08em;
  text-transform:uppercase;
}
.organiser-video-text h3{
  font-family:var(--serif);
  font-size:clamp(1.45rem,2.5vw,2rem);
  line-height:1.16;
  margin:0 0 14px;
  font-weight:700;
}
.organiser-video-text p{
  color:var(--ink-soft);
  font-size:1.03rem;
  line-height:1.72;
  margin:0;
}
.video-social-links{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:24px;
}
.video-social-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:13px 24px;
  border-radius:999px;
  color:#fff;
  font-weight:900;
  text-decoration:none;
  box-shadow:0 10px 24px rgba(0,0,0,0.16);
  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
.video-social-btn:hover{
  transform:translateY(-2px);
  box-shadow:0 14px 28px rgba(0,0,0,0.22);
  filter:brightness(1.05);
}
.video-social-btn.facebook{background:#1877F2;}
.video-social-btn.instagram{
  background:radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%);
}

/* ---------- Thank you video + closing notice ---------- */
.thanks-section{
  padding-top:72px;
}
.thanks-card{
  background:
  radial-gradient(circle at 8% 6%, rgba(255,199,44,0.20), transparent 16rem),
  linear-gradient(135deg,#fff,var(--cream-2));
  border:1px solid var(--line);
  border-radius:24px;
  padding:44px;
  box-shadow:var(--shadow);
}
.thanks-head{
  margin-bottom:30px;
}
.thanks-layout{
  display:grid;
  grid-template-columns:minmax(220px,300px) 1fr;
  gap:36px;
  align-items:start;
}
.thanks-video-column{
  display:flex;
  flex-direction:column;
  gap:32px;
}
.thanks-video-caption{
  display:block;
  margin-top:9px;
  text-align:center;
  font-family:var(--mono);
  font-size:0.76rem;
  letter-spacing:0.02em;
  color:var(--ink-soft);
}
.thanks-video-frame{
  background:#151515;
  border:1px solid rgba(23,23,23,0.16);
  border-radius:24px;
  padding:10px;
  box-shadow:0 18px 42px rgba(0,0,0,0.22);
  max-width:300px;
  margin:0 auto;
}
.thanks-video-frame video{
  display:block;
  width:100%;
  aspect-ratio:9/16;
  object-fit:cover;
  border-radius:17px;
  background:#000;
}
.thanks-text{
  max-width:620px;
}
.thanks-text p{
  color:var(--ink-soft);
  font-size:1.03rem;
  line-height:1.72;
  margin:0 0 16px;
}
.thanks-text p:last-child{margin-bottom:0;}

.closing-notice{
  margin-top:40px;
  padding-top:36px;
  border-top:1px solid var(--line);
}
.closing-kicker{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-bottom:14px;
  padding:7px 13px;
  border-radius:999px;
  background:rgba(178,13,42,0.10);
  color:var(--red);
  font-family:var(--mono);
  font-size:0.74rem;
  font-weight:900;
  letter-spacing:0.08em;
  text-transform:uppercase;
}
.closing-notice h3{
  font-family:var(--serif);
  font-size:clamp(1.4rem,2.4vw,1.85rem);
  line-height:1.18;
  margin:0 0 14px;
  font-weight:700;
}
.closing-notice > p{
  color:var(--ink-soft);
  font-size:1.02rem;
  line-height:1.72;
  margin:0 0 24px;
  max-width:720px;
}
.closing-points{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin-bottom:24px;
}
.closing-point{
  display:flex;
  gap:16px;
  align-items:flex-start;
  background:var(--cream);
  border:1px solid var(--line);
  border-radius:16px;
  padding:18px;
}
.closing-point-date{
  flex:0 0 auto;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  min-width:56px;
  padding:8px 6px;
  border-radius:12px;
  background:var(--blue);
  color:#fff;
  font-family:var(--serif);
  font-size:1.35rem;
  font-weight:700;
  line-height:1;
  text-align:center;
}
.closing-point-date em{
  display:block;
  margin-top:3px;
  font-style:normal;
  font-family:var(--mono);
  font-size:0.62rem;
  font-weight:800;
  letter-spacing:0.08em;
  text-transform:uppercase;
  opacity:0.9;
}
.closing-point-body strong{
  display:block;
  font-size:0.98rem;
  margin-bottom:6px;
}
.closing-point-body span{
  display:block;
  color:var(--muted);
  font-size:0.92rem;
  line-height:1.55;
}
.closing-barber-text{
  color:var(--ink-soft);
  font-size:1.02rem;
  line-height:1.72;
  margin:0 0 20px;
  max-width:720px;
}
.closing-thanks-text{
  margin:22px 0 0;
  color:var(--muted);
  font-size:0.96rem;
  line-height:1.65;
  font-style:italic;
  max-width:720px;
}

@media (max-width:900px){
  .thanks-layout{grid-template-columns:1fr;}
  .thanks-video-frame{width:min(100%,280px);}
  .closing-points{grid-template-columns:1fr;}
}
@media (max-width:640px){
  .thanks-card{padding:32px 26px;}
  .closing-point{padding:16px;}
}

/* About organiser */
.about-panel{
  background:
  radial-gradient(circle at 88% 12%, rgba(255,199,44,0.22), transparent 14rem),
  linear-gradient(135deg,#fff,var(--cream-2));
  border:1px solid var(--line);
  border-radius:24px;
  padding:40px;
  display:grid;
  grid-template-columns:1.15fr 0.85fr;
  gap:28px;
  align-items:stretch;
  box-shadow:var(--shadow);
}
.about-main,
.coming-soon-box{
  background:rgba(255,255,255,0.78);
  border:1px solid rgba(23,23,23,0.10);
  border-radius:20px;
  padding:28px 26px;
}
.about-main h3{
  font-family:var(--serif);
  font-size:clamp(1.45rem,2.5vw,2rem);
  line-height:1.16;
  margin:0 0 16px;
  font-weight:700;
}
.about-main p{
  color:var(--ink-soft);
  font-size:1.03rem;
  line-height:1.72;
  margin:0 0 14px;
}
.about-main p:last-child{margin-bottom:0;}
.coming-soon-box{
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  background:linear-gradient(135deg,rgba(31,58,143,0.10),rgba(255,199,44,0.14));
}
.team-photo{
  width:100%;
  height:190px;
  object-fit:cover;
  border-radius:14px;
  margin-bottom:18px;
  border:1px solid rgba(23,23,23,0.10);
  box-shadow:0 10px 22px rgba(0,0,0,0.14);
}
.about-social{
  margin-top:20px;
  padding-top:18px;
  border-top:1px solid rgba(23,23,23,0.10);
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:12px;
}
.about-social span{
  font-family:var(--mono);
  font-size:0.78rem;
  font-weight:700;
  letter-spacing:0.02em;
  color:var(--ink-soft);
}
.coming-soon-box .soon-label{
  align-self:flex-start;
  font-family:var(--mono);
  font-size:0.72rem;
  font-weight:800;
  letter-spacing:0.08em;
  text-transform:uppercase;
  color:var(--blue);
  background:#fff;
  border:1px solid rgba(31,58,143,0.12);
  border-radius:999px;
  padding:7px 12px;
  margin-bottom:16px;
}
.coming-soon-box h4{
  font-family:var(--serif);
  font-size:1.25rem;
  line-height:1.2;
  margin:0 0 12px;
}
.coming-soon-box p{
  color:var(--ink-soft);
  font-size:0.98rem;
  line-height:1.65;
  margin:0;
}

/* Footer */
footer{
  border-top:1px solid var(--line);
  padding:42px 0;
  background:rgba(255,255,255,0.42);
}
footer .wrap{
  display:flex;
  justify-content:space-between;
  align-items:center;
  flex-wrap:wrap;
  gap:14px;
}
footer .foot-brand{
  font-family:var(--serif);
  font-weight:700;
}
footer small{
  color:var(--ink-soft);
  font-size:0.9rem;
  line-height:1.55;
}
.footer-info{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:6px;
}
.footer-email a{
  color:var(--blue);
  font-weight:800;
  text-decoration:none;
  overflow-wrap:anywhere;
}
.footer-email a:hover{
  text-decoration:underline;
}

@media (max-width: 860px){

  .organiser-video-layout{grid-template-columns:1fr;}
  .organiser-video-text{max-width:none;}
  .info-grid{grid-template-columns:1fr;}
  .market-panel{grid-template-columns:1fr;padding:32px 26px;}
  .hero{min-height:560px;}
  .hero-bg .panel.left{width:74%;clip-path:polygon(0 0, 86% 0, 62% 100%, 0 100%);}
  .hero-bg .panel.right{width:74%;clip-path:polygon(38% 0, 100% 0, 100% 100%, 12% 100%);}
  .hero-bg .stripe-gold{left:43%;width:16%;}
  .donate-panel{grid-template-columns:1fr;padding:34px 26px;}
  .flow{grid-template-columns:1fr;}
  .about-panel{grid-template-columns:1fr;padding:32px 26px;}
  .team-photo{height:220px;}
  .cash-panel{grid-template-columns:1fr;padding:30px 24px;gap:26px;}
  .events-grid{grid-template-columns:1fr;}
}
@media (max-width: 480px){
  .cash-total-grid{grid-template-columns:1fr;}
}

@media (max-width: 640px){

  .organiser-video-card{
  padding:26px 18px;
  border-radius:20px;
  }
  .organiser-video-head{
  margin-bottom:24px;
  }
  .organiser-video-text,
  .organiser-video-text p{
  text-align:center;
  }
  .video-badge{
  margin-left:auto;
  margin-right:auto;
  }
  .video-social-links{
  flex-direction:column;
  }
  .video-social-btn{
  width:100%;
  }

  .top-social-strip .wrap{
  padding:8px 16px;
  flex-direction:row;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  text-align:left;
  }
  .top-social-label{
  font-size:0.72rem;
  line-height:1.25;
  white-space:normal;
  }
  .top-social-strip .social-links{
  gap:8px;
  }
  .top-social-strip .social-links a{
  width:40px;
  height:40px;
  }
  .wrap{padding:0 20px;}
  .hero-content,
  .section-head,
  .flow-card,
  .info-card,
  .market-panel,
  .market-point,
  .donate-panel,
  .donate-panel p,
  .donate-meta,
  .inst-card,
  .about-panel,
  .about-main,
  .coming-soon-box,
  .cash-panel,
  .cash-info p,
  .event-card,
  .event-card p,
  footer .wrap{
  text-align:center;
  }
  .event-top{flex-direction:column;align-items:center;}
  .event-meta{justify-content:center;}
  .event-tags{justify-content:center;}
  .event-card .btn{align-self:center;}
  .cash-media{grid-template-columns:1fr 1fr;}
  .cash-address{align-items:center;}
  footer .wrap{
  flex-direction:column;
  }
  .footer-info{
  align-items:center;
  }
  .section-head{
  margin-left:auto;
  margin-right:auto;
  }
  .hero-eyebrow,
  .eyebrow,
  .flow-card .num,
  .info-card .tag,
  .inst-card .tag,
  .coming-soon-box .soon-label{
  margin-left:auto;
  margin-right:auto;
  }
  .hero-ctas,
  footer .wrap{
  justify-content:center;
  align-items:center;
  }
  .donate-meta strong{
  margin-left:auto;
  margin-right:auto;
  }
  .site-bar{
  padding:11px 16px;
  gap:10px;
  }
  .brand{
  gap:8px;
  font-size:0.92rem;
  }
  .brand .flags{
  gap:5px;
  padding:4px;
  }
  .brand .flags img{
  width:30px;
  height:21px;
  border-radius:4px;
  }
  .lang-switch button{
  font-size:0.68rem;
  padding:7px 9px;
  }
  .hero{
  min-height:auto;
  }
  .hero-bg .panel.left{
  width:100%;
  clip-path:none;
  }
  .hero-bg .panel.right{
  display:none;
  }
  .hero-bg .stripe-gold{
  left:auto;
  right:0;
  width:12px;
  clip-path:none;
  }
  .hero-bg::after{
  background:linear-gradient(180deg, rgba(0,0,0,0.26), rgba(0,0,0,0.42));
  }
  .hero-content{
  padding:58px 20px 48px;
  }
  .hero-content::before{
  left:16px;
  right:16px;
  top:34px;
  bottom:28px;
  width:auto;
  height:auto;
  min-height:0;
  border-radius:22px;
  background:rgba(0,0,0,0.28);
  }
  .hero h1{
  font-size:clamp(2.1rem, 12vw, 3rem);
  }
  .hero p.lead{
  font-size:1rem;
  line-height:1.66;
  }
  .hero-ctas{
  flex-direction:column;
  align-items:stretch;
  }
  .btn{
  width:100%;
  padding:14px 18px;
  }
  section{padding:62px 0;}
  .section-head{margin-bottom:30px;}
  .flow-card,
  .info-card,
  .inst-card{
  padding:24px 21px;
  }
  .about-panel{
  padding:26px 18px;
  border-radius:20px;
  }
  .about-main,
  .coming-soon-box{
  padding:24px 18px;
  }
  .market-panel{
  padding:26px 18px;
  border-radius:20px;
  }
  .donate-panel{
  padding:28px 20px;
  border-radius:20px;
  }
  .donate-meta{
  font-size:0.82rem;
  }
  .flags-strip .wrap{
  padding:18px 12px 20px;
  gap:12px;
  }
  .route-flags{
  width:100%;
  max-width:330px;
  grid-template-columns:minmax(0, 1fr) 36px minmax(0, 1fr);
  gap:8px;
  }
  .route-flag img{
  width:clamp(82px, 32vw, 112px);
  padding:4px;
  border-radius:10px;
  }
  .route-flag figcaption{
  font-size:0.66rem;
  letter-spacing:0.065em;
  }
  .route-arrow{
  width:34px;
  height:34px;
  font-size:1.24rem;
  }
  .flags-message{
  width:100%;
  padding:13px 11px;
  border-radius:15px;
  font-size:clamp(0.76rem, 3.5vw, 0.9rem);
  line-height:1.35;
  letter-spacing:0.022em;
  }
  .organiser-line{
  width:100%;
  font-size:0.92rem;
  line-height:1.5;
  }
}
@media (max-width: 420px){
  .brand > span:last-child{
  max-width:145px;
  }
  .lang-switch button{
  padding:7px 8px;
  }
}
@media (max-width: 360px){
  .flags-strip .wrap{
  padding-left:10px;
  padding-right:10px;
  }
  .flags-message{
  font-size:0.72rem;
  letter-spacing:0.012em;
  }
  .route-flags{
  max-width:306px;
  }
}
[data-i18n]{transition:opacity .15s ease;}


/* ---------- Cake sale video links ---------- */
.event-video-links,
.event-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:2px;
}
.event-video-links .btn,
.event-actions .btn{
  min-height:44px;
  padding:11px 18px;
  font-size:0.9rem;
}
.btn-video{
  background:linear-gradient(135deg,var(--red),var(--red-dark));
  color:#fff;
  border-color:rgba(255,255,255,0.22);
  box-shadow:0 12px 24px rgba(178,13,42,0.24);
}
.btn-video:hover{
  box-shadow:0 15px 28px rgba(178,13,42,0.32);
}

.btn-info{
  background:linear-gradient(135deg,var(--red),var(--red-dark));
  color:#fff;
  border-color:rgba(255,255,255,0.22);
  box-shadow:0 12px 24px rgba(178,13,42,0.28);
  font-weight:800;
  animation:btnInfoPulse 2.2s ease-in-out infinite;
}
.btn-info:hover,
.btn-info:focus-visible{
  box-shadow:0 16px 30px rgba(178,13,42,0.38);
  transform:translateY(-1px);
  animation:none;
}
@keyframes btnInfoPulse{
  0%,100%{ box-shadow:0 12px 24px rgba(178,13,42,0.28); }
  50%{ box-shadow:0 14px 30px rgba(178,13,42,0.48); }
}
@media (prefers-reduced-motion: reduce){
  .btn-info{ animation:none; }
}

.video-page{
  min-height:100vh;
  background:
    radial-gradient(circle at top left, rgba(255,199,44,0.20), transparent 30rem),
    var(--cream);
}
.video-page-main{
  max-width:960px;
  margin:0 auto;
  padding:48px 24px 64px;
}
.video-page-card{
  background:var(--white);
  border:1px solid var(--line);
  border-radius:24px;
  box-shadow:var(--shadow);
  overflow:hidden;
}
.video-page-header{
  padding:30px 30px 22px;
  background:
    radial-gradient(circle at 100% 0%, rgba(255,199,44,0.28), transparent 16rem),
    linear-gradient(135deg,var(--blue),var(--blue-dark));
  color:#fff;
}
.video-page-header .eyebrow{
  color:var(--gold);
}
.video-page-header h1{
  font-family:var(--serif);
  font-size:clamp(2rem,5vw,3.1rem);
  line-height:1.05;
  margin:0 0 12px;
}
.video-page-header p{
  max-width:720px;
  margin:0;
  color:rgba(255,255,255,0.92);
  line-height:1.65;
}
.video-page-frame{
  padding:24px;
}
.video-page-frame video{
  width:100%;
  max-height:72vh;
  display:block;
  background:#000;
  border-radius:18px;
  border:1px solid var(--line);
}
.video-page-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  padding:0 24px 26px;
}
.video-page-actions .btn-ghost{
  color:var(--blue);
  border-color:rgba(23,52,127,0.28);
  background:rgba(23,52,127,0.06);
}
.video-page-actions .btn-ghost:hover{
  background:rgba(23,52,127,0.10);
}
@media (max-width:640px){
  .event-video-links{
    flex-direction:column;
  }
  .event-video-links .btn{
    width:100%;
  }
  .video-page-main{
    padding:24px 14px 44px;
  }
  .video-page-header,
  .video-page-frame{
    padding:20px;
  }
  .video-page-actions{
    padding:0 20px 22px;
  }
  .video-page-actions .btn{
    width:100%;
  }
}


/* ---------- Discreet visit counter ---------- */
.visit-counter{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  gap:4px;
  margin-top:6px;
  padding:5px 10px;
  border:1px solid rgba(23,23,23,0.12);
  border-radius:999px;
  background:rgba(255,255,255,0.62);
  font-family:var(--mono);
  font-size:0.74rem;
  font-weight:700;
  color:rgba(23,23,23,0.72) !important;
  letter-spacing:0.02em;
  line-height:1.2;
  opacity:1 !important;
  visibility:visible !important;
}
.visit-counter #visit-count{
  display:inline !important;
  min-width:3ch;
  color:var(--blue) !important;
  font-weight:900;
  font-variant-numeric:tabular-nums;
}


/* ---------- Dessert sale raised total (Venezuelan flag) ---------- */
.event1-raised-btn{
  color:var(--white);
  border:none;
  font-weight:700;
  letter-spacing:.02em;
  cursor:default;
  background:linear-gradient(
    to bottom,
    var(--blue) 0%, var(--blue) 33.33%,
    var(--gold) 33.33%, var(--gold) 66.66%,
    var(--red) 66.66%, var(--red) 100%
  );
  text-shadow:0 1px 2px rgba(0,0,0,0.45);
  box-shadow:var(--shadow);
}

/* ---------- Venezuelan-flag raised button ---------- */
.event1-raised-btn{
  color:var(--white);
  border:none;
  cursor:default;
  font-weight:700;
  letter-spacing:0.02em;
  background:linear-gradient(180deg,
    var(--blue) 0%, var(--blue) 33.33%,
    var(--red) 33.33%, var(--red) 66.66%,
    var(--gold) 66.66%, var(--gold) 100%);
  text-shadow:0 1px 3px rgba(0,0,0,0.45);
  box-shadow:var(--shadow);
}

/* ---------- Single links card ---------- */
.institutions-single{
  display:block;
}
.inst-links{
  max-width:640px;
  margin:0 auto;
}
.inst-link-list{
  list-style:none;
  margin:16px 0 0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:10px;
}
.inst-link-list a{
  display:flex;
  align-items:center;
  gap:8px;
  padding:12px 16px;
  border-radius:12px;
  background:var(--white);
  border:1px solid rgba(23,52,127,0.15);
  color:var(--blue);
  font-weight:600;
  text-decoration:none;
  transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.inst-link-list a:hover{
  transform:translateY(-2px);
  box-shadow:var(--shadow);
  border-color:var(--gold);
}

/* ---------- Diplomatic note under links ---------- */
.inst-links-note{
  margin:16px 0 0;
  font-size:0.9rem;
  line-height:1.55;
  color:rgba(15,35,89,0.78);
  border-top:1px solid rgba(23,52,127,0.12);
  padding-top:14px;
}

.inst-links-note a{
  color:var(--blue);
  font-weight:600;
  text-decoration:underline;
  text-underline-offset:2px;
}
.inst-links-note a:hover{ color:var(--red); }

.link-date{
  display:inline-block;
  font-size:0.72rem;
  font-weight:700;
  letter-spacing:0.04em;
  text-transform:uppercase;
  color:var(--red);
  background:rgba(178,13,42,0.08);
  padding:2px 8px;
  border-radius:6px;
  margin-right:4px;
  white-space:nowrap;
}
