:root {
  --inc-red:#b3213e;
  --inc-red-dark:#8c1732;
  --inc-red-soft:#fbf0f3;
  --inc-blue:#3158aa;
  --inc-blue-dark:#24417c;
  --inc-purple:#7457a8;
  --inc-gold:#b98a31;
  --inc-heading:#24324d;
  --inc-text:#52617b;
  --inc-muted:#77849a;
  --inc-bg:#f5f7fb;
  --inc-border:#e0e5ee;
  --inc-border-soft:#edf0f5;
  --inc-white:#fff;
  --inc-radius:16px;
  --inc-shadow:0 10px 28px rgba(31,48,79,.07);
}

body,
body.scu-incoming-template {
  margin:0 !important;
  padding:0 !important;
}

body.scu-incoming-template {
  background:#fff !important;
  color:var(--inc-text);
}

body.scu-incoming-template .site,
body.scu-incoming-template #page,
body.scu-incoming-template .entry-content,
body.scu-incoming-template .ct-container-full {
  margin:0 !important;
  padding:0 !important;
  max-width:none !important;
}

body.inc-menu-open {
  overflow:hidden;
}

.scu-incoming-portal,
.scu-incoming-portal *,
.scu-incoming-portal *::before,
.scu-incoming-portal *::after {
  box-sizing:border-box;
}

.scu-incoming-portal {
  margin:0 !important;
  padding:0 !important;
  color:var(--inc-text);
  background:#fff;
  font-family:inherit;
  font-size:14px;
  line-height:1.6;
  overflow-x:clip;
}

.scu-incoming-portal a {
  text-decoration:none;
}

.scu-incoming-portal img {
  display:block;
  max-width:100%;
}

.scu-incoming-portal .inc-container {
  width:min(1290px, calc(100% - 40px));
  margin-inline:auto;
}

/* =========================================================
   HEADER
========================================================= */
.inc-site-header {
  position:relative;
  z-index:10;
  background:#fff;
  border-bottom:1px solid var(--inc-border-soft);
}

.inc-header-row {
  min-height:96px;
  display:grid;
  grid-template-columns:minmax(210px,1fr) auto minmax(160px,1fr);
  align-items:center;
  gap:24px;
}

.inc-header-brand {
  justify-self:start;
}

.inc-scu-logo-link {
  display:inline-flex;
  width:max-content;
}

.inc-scu-logo-link img {
  width:auto;
  max-width:285px;
  max-height:60px;
  object-fit:contain;
}

.inc-header-title {
  text-align:center;
}

.inc-header-title span {
  display:block;
  margin:0 0 5px;
  color:#73809a;
  font-size:10px;
  font-weight:700;
  line-height:1.3;
  letter-spacing:.14em;
}

.inc-header-title strong {
  display:block;
  color:var(--inc-red);
  font-size:15px;
  font-weight:650;
  line-height:1.35;
}

.inc-header-erasmus {
  justify-self:end;
}

.inc-header-erasmus img {
  width:auto;
  max-width:158px;
  max-height:46px;
  object-fit:contain;
}

/* =========================================================
   STICKY NAVIGATION
========================================================= */
.inc-nav {
  position:sticky;
  top:0;
  z-index:1000;
  background:linear-gradient(90deg,var(--inc-red-dark) 0%, var(--inc-red) 66%, #c62b4d 100%);
  box-shadow:0 7px 20px rgba(108,19,46,.12);
}

body.admin-bar .inc-nav {
  top:32px;
}

.inc-nav-row {
  min-height:54px;
  display:grid;
  grid-template-columns:158px minmax(0,1fr) 190px;
  align-items:center;
  gap:16px;
}

.inc-sticky-logo {
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  width:150px;
  visibility:hidden;
  opacity:0;
  transform:translateY(-3px);
  transition:opacity .18s ease, transform .18s ease;
}

.inc-nav.is-stuck .inc-sticky-logo {
  visibility:visible;
  opacity:1;
  transform:none;
}

.inc-sticky-logo img {
  width:auto;
  max-width:148px;
  max-height:34px;
  object-fit:contain;
  filter:brightness(0) invert(1) grayscale(1);
}

.inc-menu-panel {
  min-width:0;
}

.inc-main-menu,
.inc-main-menu ul {
  list-style:none;
  margin:0;
  padding:0;
}

.inc-main-menu {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:2px;
}

.inc-main-menu > li {
  position:relative;
  margin:0;
  padding:0;
}

.inc-main-menu > li > a {
  min-height:38px;
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:0 10px;
  color:#fff !important;
  border-radius:10px;
  font-size:12.5px;
  font-weight:600;
  line-height:1;
  white-space:nowrap;
  transition:background .16s ease;
}

.inc-main-menu > li > a:hover,
.inc-main-menu > li > a:focus-visible,
.inc-main-menu > li.is-open > a {
  background:rgba(255,255,255,.12);
}

.inc-main-menu > li.current-menu-item > a,
.inc-main-menu > li.current-menu-ancestor > a {
  background:transparent !important;
}


.inc-menu-icon {
  flex:0 0 auto;
  font-size:13px;
  line-height:1;
}

.inc-main-menu > li.menu-item-has-children > a::after {
  content:"";
  width:6px;
  height:6px;
  margin-left:2px;
  border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;
  transform:rotate(45deg) translateY(-2px);
  opacity:.8;
}

.inc-main-menu .sub-menu {
  position:absolute;
  top:calc(100% + 8px);
  left:0;
  min-width:235px;
  padding:8px;
  background:#fff;
  border:1px solid var(--inc-border);
  border-radius:13px;
  box-shadow:var(--inc-shadow);
  opacity:0;
  visibility:hidden;
  transform:translateY(5px);
  transition:opacity .16s ease, transform .16s ease, visibility .16s ease;
}

.inc-main-menu > li:nth-last-child(-n+2) .sub-menu {
  left:auto;
  right:0;
}

.inc-main-menu li:hover > .sub-menu,
.inc-main-menu li.is-open > .sub-menu {
  opacity:1;
  visibility:visible;
  transform:none;
}

.inc-main-menu .sub-menu li {
  margin:0;
  padding:0;
}

.inc-main-menu .sub-menu a {
  display:flex;
  align-items:center;
  gap:9px;
  min-height:36px;
  padding:7px 9px;
  color:var(--inc-heading) !important;
  border-radius:9px;
  font-size:12px;
  font-weight:500;
  line-height:1.35;
}

.inc-main-menu .sub-menu a:hover {
  color:var(--inc-red) !important;
  background:var(--inc-red-soft);
}

.inc-office-return {
  justify-self:end;
  display:inline-flex;
  align-items:center;
  justify-content:flex-end;
  gap:7px;
  color:#fff !important;
  font-size:12px;
  font-weight:600;
  white-space:nowrap;
}

.inc-office-return:hover {
  color:#fff !important;
  opacity:.86;
}

.inc-nav-return-mobile,
.inc-mobile-toggle,
.inc-menu-overlay {
  display:none;
}

/* =========================================================
   SHARED TYPOGRAPHY / BUTTONS
========================================================= */
.inc-eyebrow,
.inc-section-label,
.inc-section-title > div > span,
.inc-message-content > span {
  display:inline-block;
  color:var(--inc-red);
  font-size:10px;
  font-weight:750;
  line-height:1.3;
  letter-spacing:.14em;
}

.inc-section-title {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,430px);
  align-items:end;
  gap:30px;
  margin:0 0 18px;
}

.inc-section-title.compact {
  grid-template-columns:1fr auto;
}

.inc-section-title h2 {
  margin:6px 0 0;
  color:var(--inc-heading);
  font-size:28px;
  font-weight:700;
  line-height:1.15;
  letter-spacing:-.025em;
}

.inc-section-title p {
  margin:0;
  color:var(--inc-muted);
  font-size:13px;
  line-height:1.65;
}

.inc-btn {
  min-height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:0 16px;
  border-radius:10px;
  font-size:12px;
  font-weight:650;
  transition:transform .16s ease, box-shadow .16s ease, background .16s ease;
}

.inc-btn:hover {
  transform:translateY(-1px);
}

.inc-btn-primary {
  color:#fff !important;
  background:linear-gradient(135deg,var(--inc-red-dark),var(--inc-red));
  box-shadow:0 8px 18px rgba(177,33,62,.16);
}

.inc-btn-secondary {
  color:var(--inc-heading) !important;
  background:#fff;
  border:1px solid var(--inc-border);
}

/* =========================================================
   SMART SLIDER + QUICK ACTIONS
========================================================= */
.inc-home-slider-section {
  padding:18px 0 14px;
  background:linear-gradient(180deg,#fff 0%,#fdf9fb 100%);
  border-bottom:1px solid var(--inc-border-soft);
}

.inc-home-slider-wrap {
  overflow:hidden;
  border-radius:18px;
  background:#f3f5f9;
  box-shadow:0 8px 22px rgba(31,48,79,.055);
}

.inc-home-slider-wrap .n2-section-smartslider,
.inc-home-slider-wrap .n2-ss-align,
.inc-home-slider-wrap .n2-ss-slider {
  margin:0 !important;
}

.inc-home-actions {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin-top:12px;
}

.inc-home-action {
  min-height:48px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  padding:0 16px;
  color:var(--inc-heading) !important;
  background:#fff;
  border:1px solid var(--inc-border);
  border-radius:12px;
  box-shadow:0 5px 14px rgba(31,48,79,.035);
  font-size:12px;
  font-weight:650;
  transition:transform .16s ease, border-color .16s ease, color .16s ease, background .16s ease;
}

.inc-home-action i {
  color:var(--inc-red);
  font-size:14px;
}

.inc-home-action:hover {
  color:var(--inc-red) !important;
  background:#fff8fa;
  border-color:rgba(177,33,62,.24);
  transform:translateY(-1px);
}

/* =========================================================
   COLOURED HIGHLIGHTS
========================================================= */
.inc-highlight-section {
  padding:22px 0 12px;
  background:#fff;
}

.inc-highlight-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:13px;
}

.inc-highlight-card {
  position:relative;
  min-height:155px;
  padding:22px 24px;
  overflow:hidden;
  color:#fff !important;
  border-radius:18px;
  box-shadow:0 8px 22px rgba(31,48,79,.07);
}

.inc-highlight-card > span {
  display:block;
  margin-bottom:12px;
  color:rgba(255,255,255,.78);
  font-size:9px;
  font-weight:750;
  line-height:1.2;
  letter-spacing:.15em;
}

.inc-highlight-card h3 {
  max-width:82%;
  margin:0 0 8px;
  color:#fff;
  font-size:18px;
  font-weight:650;
  line-height:1.25;
}

.inc-highlight-card p {
  max-width:84%;
  margin:0;
  color:rgba(255,255,255,.79);
  font-size:11.5px;
  line-height:1.55;
}

.inc-highlight-card > i {
  position:absolute;
  right:21px;
  bottom:18px;
  color:rgba(255,255,255,.23);
  font-size:37px;
}

.inc-highlight-card.is-red { background:linear-gradient(140deg,#8b1833,#b62242); }
.inc-highlight-card.is-blue { background:linear-gradient(140deg,#294a97,#315fb9); }
.inc-highlight-card.is-purple { background:linear-gradient(140deg,#624795,#795bb0); }

/* =========================================================
   SMART SLIDER
========================================================= */
.inc-smart-slider-section {
  padding:24px 0 12px;
  background:#fff;
}

.inc-smart-slider-wrap {
  overflow:hidden;
  border-radius:16px;
}

/* =========================================================
   CALLS
========================================================= */
.inc-calls-section {
  padding:34px 0 42px;
  background:#fff;
}

.inc-call-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:13px;
}

.inc-call-card {
  --theme:var(--inc-red);
  --theme-soft:var(--inc-red-soft);
  min-width:0;
  display:flex;
  flex-direction:column;
  padding:17px;
  background:#fff;
  border:1px solid var(--inc-border);
  border-radius:16px;
  box-shadow:0 6px 18px rgba(31,48,79,.035);
}

.inc-call-card.theme-blue { --theme:var(--inc-blue); --theme-soft:#f1f5fd; }
.inc-call-card.theme-purple { --theme:var(--inc-purple); --theme-soft:#f5f2fa; }

.inc-call-heading {
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  align-items:center;
  gap:10px;
  padding-bottom:12px;
  border-bottom:1px solid var(--inc-border-soft);
}

.inc-call-heading-icon {
  width:38px;
  height:38px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--theme);
  background:var(--theme-soft);
  border-radius:10px;
  font-size:16px;
}

.inc-call-heading span {
  display:block;
  margin-bottom:2px;
  color:var(--theme);
  font-size:8.5px;
  font-weight:750;
  letter-spacing:.11em;
}

.inc-call-heading h3 {
  margin:0;
  color:var(--inc-heading);
  font-size:14px;
  font-weight:650;
  line-height:1.3;
}

.inc-call-list {
  padding-top:3px;
}

.inc-call-item {
  position:relative;
  display:block;
  padding:10px 22px 10px 0;
  border-bottom:1px solid var(--inc-border-soft);
}

.inc-call-item:last-child {
  border-bottom:0;
}

.inc-call-item time {
  display:block;
  margin-bottom:3px;
  color:#8b96a9;
  font-size:9.5px;
  font-weight:500;
}

.inc-call-item strong {
  display:block;
  color:var(--inc-heading);
  font-size:11.5px;
  font-weight:560;
  line-height:1.42;
}

.inc-call-item:hover strong {
  color:var(--theme);
}

.inc-call-arrow {
  position:absolute;
  right:1px;
  top:50%;
  transform:translateY(-50%);
  color:#b0b9c8;
  font-size:10px;
}

.inc-call-empty {
  min-height:80px;
  display:flex;
  align-items:center;
  color:var(--inc-muted);
  font-size:11px;
}

.inc-all-link {
  display:inline-flex;
  align-items:center;
  gap:6px;
  width:fit-content;
  margin-top:auto;
  padding-top:10px;
  color:var(--theme) !important;
  font-size:10.5px;
  font-weight:650;
}

/* =========================================================
   ABOUT / STATS
========================================================= */
.inc-about-section {
  padding:42px 0;
  background:linear-gradient(180deg,#f8f9fc 0%,#f3f6fa 100%);
  border-top:1px solid var(--inc-border-soft);
  border-bottom:1px solid var(--inc-border-soft);
}

.inc-about-grid {
  display:grid;
  grid-template-columns:minmax(0,.88fr) minmax(520px,1.12fr);
  gap:42px;
  align-items:center;
}

.inc-about-copy h2 {
  margin:7px 0 12px;
  color:var(--inc-heading);
  font-size:29px;
  font-weight:700;
  line-height:1.15;
  letter-spacing:-.025em;
}

.inc-about-copy p {
  margin:0 0 10px;
  color:#66758e;
  font-size:12.5px;
  line-height:1.72;
}

.inc-stats-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}

.inc-stat-card {
  min-height:105px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:15px 16px;
  border-radius:13px;
  box-shadow:0 5px 15px rgba(31,48,79,.045);
}

.inc-stat-card i {
  margin-bottom:9px;
  font-size:17px;
}

.inc-stat-card strong {
  font-size:22px;
  font-weight:700;
  line-height:1.05;
}

.inc-stat-card span {
  margin-top:4px;
  font-size:10px;
  font-weight:520;
  line-height:1.3;
}

.inc-stat-card.theme-red { color:#fff; background:linear-gradient(140deg,#921b37,#b62a48); }
.inc-stat-card.theme-blue { color:#fff; background:linear-gradient(140deg,#284a96,#3565bc); }
.inc-stat-card.theme-purple { color:#fff; background:linear-gradient(140deg,#614894,#795db1); }
.inc-stat-card.theme-slate { color:var(--inc-heading); background:#fff; border:1px solid var(--inc-border); }
.inc-stat-card.theme-red-soft { color:var(--inc-heading); background:#fff3f5; border:1px solid #f2dce2; }
.inc-stat-card.theme-gold { color:var(--inc-heading); background:#fff9ef; border:1px solid #f3e5c4; }

/* =========================================================
   COORDINATOR MESSAGE
========================================================= */
.inc-message-section {
  padding:42px 0;
  background:#fff;
}

.inc-message-box {
  display:grid;
  grid-template-columns:205px minmax(0,1fr);
  align-items:start;
  gap:22px;
  padding:16px;
  background:#fff;
  border:1px solid var(--inc-border);
  border-radius:18px;
  box-shadow:0 7px 20px rgba(31,48,79,.035);
}

.inc-message-photo {
  overflow:hidden;
  background:#e8edf5;
  border-radius:14px;
}

.inc-message-photo > img {
  width:100%;
  height:205px;
  object-fit:cover;
  object-position:center top;
}

.inc-message-person {
  padding:11px 13px 12px;
  color:#fff;
  background:linear-gradient(140deg,var(--inc-blue-dark),var(--inc-blue));
}

.inc-message-person strong {
  display:block;
  margin-bottom:6px;
  font-size:13px;
  font-weight:650;
  line-height:1.3;
}

.inc-message-person span {
  display:block;
  margin-top:2px;
  color:rgba(255,255,255,.78);
  font-size:9.5px;
  line-height:1.35;
}

.inc-message-content {
  align-self:start;
  padding:4px 3px 2px 0;
}

.inc-message-content h2 {
  margin:8px 0 11px;
  color:var(--inc-blue-dark);
  font-size:24px;
  font-weight:680;
  line-height:1.18;
  letter-spacing:-.02em;
}

.inc-message-content p {
  max-width:980px;
  margin:0 0 9px;
  color:#61708a;
  font-size:12px;
  line-height:1.65;
}

.inc-message-sign {
  margin-top:11px;
  padding-top:11px;
  border-top:1px solid var(--inc-border-soft);
}

.inc-message-sign strong {
  display:block;
  color:var(--inc-blue-dark);
  font-size:13px;
  font-weight:650;
}

.inc-message-sign small {
  display:block;
  margin-top:3px;
  color:#7c879a;
  font-size:9.5px;
  line-height:1.45;
}

/* =========================================================
   DISCOVER
========================================================= */
.inc-discover-section {
  padding:8px 0 44px;
  background:#fff;
}

.inc-discover-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:13px;
}

.inc-discover-card {
  position:relative;
  height:190px;
  overflow:hidden;
  background:#e9edf4;
  border-radius:15px;
  box-shadow:0 6px 18px rgba(31,48,79,.045);
}

.inc-discover-card img {
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .3s ease;
}

.inc-discover-card:hover img {
  transform:scale(1.035);
}

.inc-discover-card::after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(20,20,25,.02) 25%,rgba(20,16,25,.75) 100%);
}

.inc-discover-overlay {
  position:absolute;
  z-index:2;
  left:17px;
  right:17px;
  bottom:15px;
  color:#fff;
}

.inc-discover-overlay span {
  display:block;
  margin-bottom:3px;
  color:rgba(255,255,255,.72);
  font-size:8.5px;
  font-weight:750;
  letter-spacing:.12em;
}

.inc-discover-overlay h3 {
  margin:0;
  padding-right:25px;
  color:#fff;
  font-size:15px;
  font-weight:650;
  line-height:1.25;
}

.inc-discover-overlay > i {
  position:absolute;
  right:0;
  bottom:2px;
  font-size:14px;
}

/* =========================================================
   LOGO SHOWCASE ABOVE FOOTER
========================================================= */
.inc-platforms-section {
  padding:22px 0 18px;
  background:#fff;
  border-top:1px solid var(--inc-border-soft);
}

.inc-platforms-wrap {
  overflow:hidden;
}

.inc-platforms-wrap .wpwax-lsu-ultimate {
  margin:0 !important;
}

/* =========================================================
   SUB PAGES
========================================================= */
.inc-subhero {
  padding:34px 0 28px;
  background:linear-gradient(110deg,#fff 0%,#fff 78%,#fcf2f5 100%);
  border-bottom:1px solid var(--inc-border-soft);
}

.inc-subhero > .inc-container > span {
  color:var(--inc-red);
  font-size:9.5px;
  font-weight:750;
  letter-spacing:.13em;
}

.inc-subhero h1 {
  margin:7px 0 9px;
  color:var(--inc-heading);
  font-size:36px;
  font-weight:700;
  line-height:1.12;
  letter-spacing:-.025em;
}

.inc-breadcrumb {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:7px;
  color:#7c879b;
  font-size:11px;
}

.inc-breadcrumb a {
  color:var(--inc-red) !important;
}

.inc-breadcrumb i {
  font-size:8px;
}

.inc-page-main {
  padding:34px 0 44px;
  background:#fff;
}

.inc-page-content {
  color:var(--inc-text);
  font-size:14px;
  line-height:1.75;
}

.inc-page-content > :first-child { margin-top:0 !important; }
.inc-page-content > :last-child { margin-bottom:0 !important; }

/* =========================================================
   FOOTER - COMPACT VERSION OF MAIN SITE
========================================================= */
.inc-footer {
  margin:0 !important;
  padding:0 !important;
  color:var(--inc-text);
  background:#f4f7fb;
  border-top:1px solid var(--inc-border-soft);
}

.inc-footer-top {
  padding:22px 0 6px;
}

.inc-footer-top-row {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:25px;
}

.inc-footer-socials {
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}

.inc-footer-socials a {
  width:28px;
  height:28px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#456284 !important;
  background:#fff;
  border:1px solid var(--inc-border);
  border-radius:50%;
  font-size:12px;
}

.inc-footer-socials a:hover {
  color:var(--inc-red) !important;
}

.inc-footer-funding {
  display:grid;
  grid-template-columns:auto minmax(220px,420px);
  align-items:center;
  gap:14px;
}

.inc-footer-funding-logos {
  display:flex;
  align-items:center;
  gap:5px;
}

.inc-footer-funding-logos img {
  width:auto;
  max-width:118px;
  max-height:30px;
  object-fit:contain;
}

.inc-footer-funding p {
  margin:0;
  color:#6d7c95;
  font-size:9.5px;
  line-height:1.45;
  text-align:right;
}

.inc-footer-grid {
  display:grid;
  grid-template-columns:minmax(215px,.82fr) minmax(270px,1.12fr) minmax(190px,.78fr) minmax(270px,1fr);
  gap:34px;
  padding:22px 0 27px;
}

.inc-footer-mark-link {
  display:inline-flex;
}

.inc-footer-brandcol > .inc-footer-mark-link img {
  width:auto;
  max-width:95px;
  max-height:95px;
  object-fit:contain;
  margin-bottom:11px;
}

.inc-footer-brandcol h3 {
  margin:0 0 6px;
  color:var(--inc-blue-dark);
  font-size:12px;
  font-weight:650;
  line-height:1.45;
}

.inc-footer-coordination {
  margin:0 0 11px;
  color:var(--inc-red);
  font-size:11px;
  font-weight:650;
  line-height:1.4;
}

.inc-footer-data {
  display:grid;
  gap:3px;
  margin-bottom:9px;
}

.inc-footer-data span {
  color:#66758e;
  font-size:10.5px;
  line-height:1.4;
}

.inc-footer-data strong {
  color:var(--inc-blue-dark);
}

.inc-footer-mini-links {
  display:grid;
  gap:4px;
}

.inc-footer-mini-links a {
  width:fit-content;
  color:#45628a !important;
  font-size:9.5px;
  font-weight:600;
}

.inc-footer-column h4 {
  position:relative;
  margin:0 0 12px;
  padding-bottom:7px;
  color:var(--inc-blue-dark);
  font-size:13px;
  font-weight:700;
}

.inc-footer-column h4::after {
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:26px;
  height:2px;
  background:var(--inc-red);
  border-radius:99px;
}

.inc-footer-post {
  display:block;
  padding:0 0 9px;
  margin-bottom:9px;
  border-bottom:1px solid var(--inc-border);
}

.inc-footer-post:last-child {
  margin-bottom:0;
}

.inc-footer-post strong {
  display:block;
  margin-bottom:4px;
  color:#53627d;
  font-size:10.5px;
  font-weight:520;
  line-height:1.45;
}

.inc-footer-post span {
  display:inline-flex;
  padding:2px 7px;
  color:#3e5f97;
  background:#eaf0fa;
  border-radius:99px;
  font-size:8.5px;
  font-weight:650;
}

.inc-footer-post:hover strong {
  color:var(--inc-red);
}

.inc-footer-links,
.inc-footer-links ul {
  list-style:none;
  margin:0;
  padding:0;
}

.inc-footer-links {
  display:grid;
  gap:5px;
}

.inc-footer-links li {
  margin:0;
}

.inc-footer-links a {
  color:#56657e !important;
  font-size:10.5px;
  line-height:1.4;
}

.inc-footer-links a:hover {
  color:var(--inc-red) !important;
}

.inc-footer-subheading {
  margin-top:17px !important;
}

.inc-footer-links-small a {
  font-size:10px;
}

.inc-footer-contact {
  list-style:none;
  display:grid;
  gap:7px;
  margin:0;
  padding:0;
}

.inc-footer-contact li {
  display:grid;
  grid-template-columns:15px minmax(0,1fr);
  gap:7px;
  margin:0;
  color:#596983;
  font-size:10.5px;
  line-height:1.55;
}

.inc-footer-contact i {
  margin-top:2px;
  color:#4a6790;
  font-size:11px;
}

.inc-footer-contact strong {
  color:var(--inc-blue-dark);
}

.inc-footer-maps {
  display:flex;
  align-items:center;
  gap:11px;
  margin-top:12px;
}

.inc-footer-maps img {
  width:auto;
  max-width:88px;
  max-height:23px;
  object-fit:contain;
}

.inc-dmca-badge {
  display:inline-flex;
  margin-top:12px;
}

.inc-dmca-badge img {
  width:auto;
  max-width:82px;
  max-height:18px;
  object-fit:contain;
}

.inc-footer-bottom {
  border-top:1px solid var(--inc-border);
}

.inc-footer-bottom-row {
  min-height:50px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}

.inc-footer-bottom-row > span {
  color:#6c7990;
  font-size:9.5px;
}

.inc-footer-policy-links {
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:16px;
}

.inc-footer-policy-links a {
  color:var(--inc-blue-dark) !important;
  font-size:9.5px;
  font-weight:600;
}

/* =========================================================
   RESPONSIVE
========================================================= */
@media (max-width:1200px) {
  .inc-nav-row {
    grid-template-columns:135px minmax(0,1fr) 165px;
    gap:8px;
  }
  .inc-sticky-logo { width:130px; }
  .inc-sticky-logo img { max-width:128px; }
  .inc-main-menu > li > a { padding:0 7px; font-size:11.5px; }
  .inc-about-grid { grid-template-columns:1fr; }
  .inc-footer-grid { grid-template-columns:1fr 1fr; gap:28px 36px; }
}

@media (max-width:1050px) {
  .inc-site-header {
    display:none;
  }

  .inc-nav {
    top:0;
  }

  body.admin-bar .inc-nav {
    top:32px;
  }

  .inc-nav-row {
    min-height:58px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
  }

  .inc-sticky-logo,
  .inc-nav.is-stuck .inc-sticky-logo {
    width:auto;
    max-width:190px;
    visibility:visible;
    opacity:1;
    transform:none;
  }

  .inc-sticky-logo img {
    max-width:175px;
    max-height:34px;
  }

  .inc-mobile-toggle {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    min-height:38px;
    padding:0 12px;
    color:#fff;
    background:rgba(255,255,255,.11);
    border:1px solid rgba(255,255,255,.19);
    border-radius:10px;
    font:inherit;
    font-size:12px;
    font-weight:650;
    cursor:pointer;
  }

  .inc-mobile-toggle i {
    font-size:17px;
  }

  .inc-menu-panel {
    position:fixed;
    z-index:1002;
    top:calc(58px + 12px);
    left:14px;
    right:14px;
    display:none;
    max-height:calc(100vh - 88px);
    padding:9px;
    overflow-y:auto;
    background:#fff;
    border:1px solid rgba(36,65,124,.16);
    border-radius:16px;
    box-shadow:0 18px 45px rgba(17,31,56,.22);
  }

  body.admin-bar .inc-menu-panel {
    top:calc(58px + 32px + 12px);
  }

  .inc-menu-panel.is-open {
    display:block;
  }

  .inc-main-menu {
    display:block;
  }

  .inc-main-menu > li {
    width:100%;
    border-bottom:1px solid var(--inc-border-soft);
  }

  .inc-main-menu > li:last-child {
    border-bottom:0;
  }

  .inc-main-menu > li > a {
    width:100%;
    min-height:43px;
    justify-content:flex-start;
    gap:9px;
    padding:0 11px;
    color:var(--inc-heading) !important;
    background:transparent !important;
    border-radius:9px;
    font-size:12.5px;
    font-weight:600;
  }

  .inc-main-menu > li > a:hover,
  .inc-main-menu > li.is-open > a {
    color:var(--inc-red) !important;
    background:#faf5f7 !important;
  }

  .inc-main-menu > li.menu-item-has-children > a::after {
    margin-left:auto;
    border-color:#8190a6;
  }

  .inc-main-menu > li.is-open.menu-item-has-children > a::after {
    transform:rotate(225deg) translate(-1px,-1px);
  }

  .inc-menu-icon {
    width:18px;
    color:var(--inc-red);
    font-size:14px;
    text-align:center;
  }

  .inc-main-menu .sub-menu {
    position:static;
    min-width:0;
    display:none;
    padding:3px 0 7px 27px;
    background:#fff;
    border:0;
    box-shadow:none;
    opacity:1;
    visibility:visible;
    transform:none;
  }

  .inc-main-menu li:hover > .sub-menu {
    display:none;
  }

  .inc-main-menu li.is-open > .sub-menu {
    display:block;
  }

  .inc-main-menu .sub-menu a {
    min-height:34px;
    padding:6px 9px;
    color:#66748b !important;
    background:#f8f9fb;
    border-radius:8px;
    font-size:11.5px;
  }

  .inc-main-menu .sub-menu .inc-menu-icon {
    color:#73849d;
    font-size:12px;
  }

  .inc-nav-return-mobile {
    display:flex;
    align-items:center;
    gap:8px;
    min-height:42px;
    margin-top:7px;
    padding:0 11px;
    color:var(--inc-red) !important;
    background:var(--inc-red-soft);
    border-radius:9px;
    font-size:11.5px;
    font-weight:650;
  }

  .inc-office-return {
    display:none;
  }

  .inc-menu-overlay {
    position:fixed;
    z-index:999;
    inset:0;
    display:block;
    pointer-events:none;
    opacity:0;
    background:rgba(19,29,49,.36);
    backdrop-filter:blur(1.5px);
    transition:opacity .18s ease;
  }

  body.inc-menu-open .inc-menu-overlay {
    pointer-events:auto;
    opacity:1;
  }


  .inc-highlight-grid,
  .inc-call-grid,
  .inc-discover-grid {
    grid-template-columns:1fr 1fr;
  }

  .inc-message-box {
    grid-template-columns:220px minmax(0,1fr);
  }
}

@media (max-width:782px) {
  body.admin-bar .inc-nav { top:46px; }
  body.admin-bar .inc-menu-panel { top:calc(58px + 46px + 12px); }
}

@media (max-width:700px) {
  .scu-incoming-portal .inc-container {
    width:calc(100% - 26px);
  }

  .inc-nav-row {
    min-height:54px;
  }

  .inc-sticky-logo,
  .inc-nav.is-stuck .inc-sticky-logo {
    max-width:160px;
  }

  .inc-sticky-logo img {
    max-width:150px;
    max-height:29px;
  }

  .inc-mobile-toggle {
    min-height:36px;
    padding:0 10px;
    font-size:11.5px;
  }

  .inc-menu-panel {
    top:calc(54px + 10px);
    left:10px;
    right:10px;
    max-height:calc(100vh - 76px);
    border-radius:14px;
  }

  body.admin-bar .inc-menu-panel {
    top:calc(54px + 46px + 10px);
  }

  .inc-home-slider-section { padding:12px 0 10px; }
  .inc-home-slider-wrap { border-radius:13px; }
  .inc-home-actions { gap:7px; margin-top:9px; }
  .inc-home-action { min-height:42px; padding:0 10px; font-size:10.5px; }

  .inc-highlight-grid,
  .inc-call-grid,
  .inc-discover-grid,
  .inc-footer-grid {
    grid-template-columns:1fr;
  }

  .inc-highlight-card {
    min-height:135px;
    padding:18px 19px;
  }

  .inc-highlight-card h3 {
    font-size:16px;
  }

  .inc-highlight-card p {
    font-size:11px;
  }

  .inc-section-title,
  .inc-section-title.compact {
    grid-template-columns:1fr;
    gap:8px;
  }

  .inc-section-title h2 {
    font-size:24px;
  }

  .inc-section-title p {
    font-size:12px;
  }

  .inc-stats-grid {
    grid-template-columns:1fr 1fr;
  }

  .inc-stat-card {
    min-height:95px;
  }

  .inc-message-box {
    grid-template-columns:1fr;
    padding:14px;
  }

  .inc-message-box { grid-template-columns:150px minmax(0,1fr); gap:14px; padding:12px; }
  .inc-message-photo > img { width:100%; height:155px; }
  .inc-message-person { padding:9px 10px 10px; }
  .inc-message-person strong { font-size:11px; }
  .inc-message-person span { font-size:8.5px; }
  .inc-message-content h2 { font-size:20px; }
  .inc-message-content p { font-size:10.8px; line-height:1.55; }
  .inc-message-sign { margin-top:8px; padding-top:8px; }

  .inc-discover-card {
    height:170px;
  }

  .inc-platforms-section {
    padding:14px 0 12px;
  }

  .inc-footer-top-row,
  .inc-footer-funding,
  .inc-footer-bottom-row {
    display:flex;
    flex-direction:column;
    align-items:flex-start;
  }

  .inc-footer-top {
    padding:18px 0 0;
  }

  .inc-footer-funding {
    width:100%;
    gap:8px;
  }

  .inc-footer-funding-logos {
    flex-wrap:wrap;
  }

  .inc-footer-funding p {
    max-width:520px;
    text-align:left;
  }

  .inc-footer-grid {
    gap:21px;
    padding:19px 0 22px;
  }

  .inc-footer-brandcol > .inc-footer-mark-link img {
    max-width:78px;
    max-height:78px;
  }

  .inc-footer-bottom-row {
    min-height:0;
    gap:8px;
    padding:13px 0;
  }

  .inc-footer-policy-links {
    justify-content:flex-start;
    gap:10px 14px;
  }
}

@media (max-width:430px) {
  .inc-sticky-logo img { max-width:132px; }
  .inc-mobile-toggle span { display:none; }
  .inc-mobile-toggle { width:36px; padding:0; }
  .inc-home-actions { grid-template-columns:1fr; }
  .inc-stats-grid { grid-template-columns:1fr; }
}


@media (max-width:430px) {
  .inc-message-box { grid-template-columns:1fr; }
  .inc-message-photo { display:grid; grid-template-columns:110px minmax(0,1fr); }
  .inc-message-photo > img { width:110px; height:135px; }
  .inc-message-person { display:flex; flex-direction:column; justify-content:center; }
}

@media (prefers-reduced-motion:reduce) {
  .scu-incoming-portal *,
  .scu-incoming-portal *::before,
  .scu-incoming-portal *::after {
    animation-duration:.01ms !important;
    transition-duration:.01ms !important;
  }
}


/* =========================================================
   V1.4.3 - READABILITY, STICKY NAV, NEWS & MAIN-SITE FOOTER
========================================================= */

body.scu-incoming-template {
  --inc-adminbar-offset:0px;
}

body.admin-bar.scu-incoming-template {
  --inc-adminbar-offset:32px;
}

.scu-incoming-portal {
  font-size:15.5px;
  line-height:1.65;
}

/* Keep the WordPress admin toolbar offset once, without pushing the
   portal header twice. WordPress owns the html top margin. */
.inc-nav {
  top:var(--inc-adminbar-offset);
  z-index:1002;
}

/* Desktop navigation: every item gets the same visible hover box. */
.inc-nav-row {
  min-height:60px;
  grid-template-columns:170px minmax(0,1fr) 205px;
}

.inc-sticky-logo {
  width:162px;
}

.inc-sticky-logo img {
  max-width:160px;
  max-height:38px;
}

.inc-main-menu {
  gap:3px;
}

.inc-main-menu > li > a {
  min-height:42px;
  padding:0 12px;
  border:1px solid transparent;
  border-radius:11px;
  font-size:14px;
  font-weight:650;
  transition:background .16s ease, border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.inc-main-menu > li > a:hover,
.inc-main-menu > li > a:focus-visible,
.inc-main-menu > li.is-open > a {
  background:rgba(255,255,255,.13) !important;
  border-color:rgba(255,255,255,.08);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.025);
}

.inc-main-menu > li.current-menu-item > a,
.inc-main-menu > li.current-menu-ancestor > a {
  background:rgba(255,255,255,.17) !important;
  border-color:rgba(255,255,255,.10) !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.035);
}

.inc-main-menu > li.current-menu-item > a:hover,
.inc-main-menu > li.current-menu-ancestor > a:hover,
.inc-main-menu > li.current-menu-item > a:focus-visible,
.inc-main-menu > li.current-menu-ancestor > a:focus-visible {
  background:rgba(255,255,255,.24) !important;
}

.inc-menu-icon {
  font-size:15px;
}

.inc-main-menu .sub-menu {
  min-width:260px;
  padding:9px;
  border-radius:14px;
}

.inc-main-menu .sub-menu a {
  min-height:40px;
  padding:8px 10px;
  border:1px solid transparent;
  border-radius:9px;
  font-size:13.5px;
  font-weight:530;
}

.inc-main-menu .sub-menu a:hover,
.inc-main-menu .sub-menu a:focus-visible,
.inc-main-menu .sub-menu .current-menu-item > a {
  color:var(--inc-red) !important;
  background:var(--inc-red-soft) !important;
  border-color:rgba(179,33,62,.08);
}

.inc-office-return {
  font-size:13.5px;
}

/* Header typography closer to the main Erasmus+ site. */
.inc-header-title span {
  font-size:11.5px;
}

.inc-header-title strong {
  font-size:17px;
}

/* Home readability. */
.inc-eyebrow,
.inc-section-label,
.inc-section-title > div > span,
.inc-message-content > span {
  font-size:11px;
}

.inc-section-title h2 {
  font-size:31px;
}

.inc-section-title p {
  font-size:14px;
}

.inc-home-action {
  min-height:52px;
  font-size:13.5px;
}

.inc-home-action i {
  font-size:16px;
}

.inc-highlight-card > span {
  font-size:10px;
}

.inc-highlight-card h3 {
  font-size:20px;
}

.inc-highlight-card p {
  font-size:13px;
}

.inc-call-heading span {
  font-size:10px;
}

.inc-call-heading h3 {
  font-size:16px;
}

.inc-call-item time {
  font-size:11px;
}

.inc-call-item strong {
  font-size:13px;
}

.inc-call-empty,
.inc-all-link {
  font-size:12px;
}

.inc-about-copy h2 {
  font-size:31px;
}

.inc-about-copy p {
  font-size:14px;
}

.inc-stat-card span {
  font-size:11.5px;
}

.inc-message-person strong,
.inc-message-sign strong {
  font-size:14px;
}

.inc-message-person span,
.inc-message-sign small {
  font-size:11px;
}

.inc-message-content h2 {
  font-size:27px;
}

.inc-message-content p {
  font-size:13.5px;
}

.inc-discover-overlay span {
  font-size:10px;
}

.inc-discover-overlay h3 {
  font-size:17px;
}

.inc-subhero > .inc-container > span {
  font-size:11px;
}

.inc-breadcrumb {
  font-size:12.5px;
}

.inc-page-content {
  font-size:15px;
  line-height:1.72;
}

/* Normalise body copy on the custom Incoming pages that were designed
   with overly compact fixed pixel sizes. */
.inc-page-content p {
  font-size:13.5px !important;
  line-height:1.65 !important;
}

.inc-page-content li,
.inc-page-content address {
  font-size:13px !important;
  line-height:1.55 !important;
}

.inc-page-content small {
  font-size:10.5px !important;
}

.inc-page-content [class*="eyebrow"],
.inc-page-content [class*="section-head"] > span {
  font-size:10.5px !important;
}

/* =========================================================
   IMAGE NEWS SECTION - SAME VISUAL RHYTHM AS MAIN ERASMUS+ HOME
========================================================= */
.inc-news-section {
  padding:42px 0 46px;
  background:#fff;
}

.inc-news-shell {
  padding:30px;
  border:1px solid var(--inc-border);
  border-radius:22px;
  box-shadow:0 12px 34px rgba(31,48,79,.055);
}

.inc-news-heading {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  margin-bottom:22px;
}

.inc-news-heading > div > span {
  display:block;
  margin-bottom:5px;
  color:#df3b4e;
  font-size:13px;
  font-weight:520;
}

.inc-news-heading h2 {
  margin:0;
  color:var(--inc-blue-dark);
  font-size:32px;
  font-weight:650;
  line-height:1.15;
  letter-spacing:-.025em;
}

.inc-news-all {
  min-height:48px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:0 20px;
  color:#fff !important;
  background:#253f86;
  border-radius:12px;
  font-size:13px;
  font-weight:650;
  white-space:nowrap;
  transition:transform .18s ease, background .18s ease;
}

.inc-news-all:hover {
  color:#fff !important;
  background:#1f3673;
  transform:translateY(-1px);
}

.inc-news-grid {
  display:grid;
  grid-template-columns:minmax(0,2fr) minmax(330px,1fr);
  grid-template-rows:repeat(2,205px);
  gap:18px;
}

.inc-news-card {
  position:relative;
  min-width:0;
  overflow:hidden;
  color:#fff !important;
  background:#dce3ef;
  border-radius:19px;
}

.inc-news-card.is-featured {
  grid-row:1 / 3;
}

.inc-news-card > img {
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .32s ease;
}

.inc-news-card:hover > img {
  transform:scale(1.025);
}

.inc-news-shade {
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(39,58,111,.05) 0%,rgba(46,66,135,.26) 43%,rgba(41,59,126,.86) 100%);
}

.inc-news-content {
  position:absolute;
  z-index:2;
  left:22px;
  right:22px;
  bottom:20px;
}

.inc-news-content em {
  width:fit-content;
  display:inline-flex;
  margin-bottom:10px;
  padding:6px 10px;
  color:#fff;
  background:#e34a58;
  border-radius:6px;
  font-size:11px;
  font-style:normal;
  font-weight:650;
}

.inc-news-content strong {
  display:block;
  color:#fff;
  font-size:20px;
  font-weight:650;
  line-height:1.28;
  text-shadow:0 1px 2px rgba(18,27,55,.18);
}

.inc-news-card.is-featured .inc-news-content strong {
  max-width:92%;
  font-size:28px;
  line-height:1.25;
}

.inc-news-content time {
  display:flex;
  align-items:center;
  gap:5px;
  margin-top:10px;
  color:#fff;
  font-size:12px;
  font-style:normal;
}

.inc-news-empty {
  padding:22px;
  color:var(--inc-muted);
  background:#f7f9fc;
  border:1px solid var(--inc-border);
  border-radius:14px;
  font-size:14px;
}

/* =========================================================
   FOOTER - MATCH MAIN ERASMUS+ SITE PROPORTIONS
========================================================= */
.inc-footer {
  background:#f3f6fb;
}

.inc-footer-top {
  padding:38px 0 8px;
}

.inc-footer-top-row {
  display:grid;
  grid-template-columns:minmax(250px,.8fr) minmax(520px,1.35fr);
  align-items:start;
  gap:48px;
}

.inc-footer-socials {
  align-self:start;
  gap:10px;
}

.inc-footer-socials a {
  width:34px;
  height:34px;
  color:#3f587a !important;
  background:transparent;
  border:0;
  font-size:16px;
}

.inc-footer-socials a:hover {
  color:var(--inc-red) !important;
  background:rgba(255,255,255,.72);
}

.inc-footer-funding {
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  gap:8px;
}

.inc-footer-funding-logos {
  width:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
}

.inc-footer-funding-logos img {
  width:auto;
  height:auto;
  max-height:58px;
  max-width:240px;
  object-fit:contain;
}

.inc-footer-funding-logos img:nth-child(2) {
  max-width:160px;
}

.inc-footer-funding p {
  max-width:680px;
  margin:0 auto;
  color:#60708b;
  font-size:11.5px;
  line-height:1.55;
  text-align:center;
}

.inc-footer-grid {
  grid-template-columns:minmax(250px,.92fr) minmax(310px,1.2fr) minmax(220px,.82fr) minmax(300px,1fr);
  gap:46px;
  padding:34px 0 48px;
}

.inc-footer-brandcol {
  text-align:center;
}

.inc-footer-mark-link {
  justify-content:center;
}

.inc-footer-brandcol > .inc-footer-mark-link img {
  max-width:118px;
  max-height:118px;
  margin:0 auto 15px;
}

.inc-footer-brandcol h3 {
  max-width:285px;
  margin:0 auto 8px;
  color:#17367f;
  font-size:15px;
  font-weight:680;
  line-height:1.5;
}

.inc-footer-coordination {
  margin:0 0 18px;
  color:#a9293c;
  font-size:14px;
  font-weight:680;
}

.inc-footer-data {
  gap:5px;
  margin-bottom:12px;
}

.inc-footer-data span {
  color:#67758b;
  font-size:13px;
}

.inc-footer-data strong {
  color:#19367c;
}

.inc-footer-mini-links {
  justify-items:center;
  gap:7px;
}

.inc-footer-mini-links a {
  padding:4px 7px;
  color:#31518d !important;
  background:#e9eef8;
  border-radius:7px;
  font-size:11.5px;
  font-weight:650;
}

.inc-footer-column h4 {
  margin:0 0 18px;
  padding-bottom:9px;
  color:#17367f;
  font-size:16px;
  font-weight:700;
}

.inc-footer-column h4::after {
  width:32px;
  height:3px;
  background:#dc3b4d;
}

.inc-footer-post {
  padding:0 0 12px;
  margin-bottom:12px;
}

.inc-footer-post strong {
  margin-bottom:7px;
  color:#4f607c;
  font-size:13px;
  font-weight:520;
  line-height:1.5;
}

.inc-footer-post span {
  padding:3px 8px;
  color:#2f5594;
  background:#e8eef9;
  font-size:10.5px;
}

.inc-footer-links {
  gap:9px;
}

.inc-footer-links a {
  color:#52627c !important;
  font-size:13px;
  line-height:1.45;
}

.inc-footer-subheading {
  margin-top:28px !important;
}

.inc-footer-links-small a {
  font-size:12.5px;
}

.inc-footer-contact {
  gap:12px;
}

.inc-footer-contact li {
  grid-template-columns:18px minmax(0,1fr);
  gap:9px;
  color:#566680;
  font-size:13px;
  line-height:1.65;
}

.inc-footer-contact i {
  margin-top:3px;
  color:#41628d;
  font-size:15px;
}

.inc-footer-contact strong {
  color:#17367f;
}

.inc-footer-maps {
  gap:14px;
  margin-top:18px;
}

.inc-footer-maps img {
  max-width:105px;
  max-height:31px;
}

.inc-dmca-badge {
  display:inline-flex;
  margin-top:17px;
}

.inc-dmca-badge img {
  width:100px !important;
  max-width:100px !important;
  max-height:none !important;
}

.inc-footer-bottom {
  border-top:1px solid #dde3ed;
}

.inc-footer-bottom-row {
  min-height:66px;
}

.inc-footer-bottom-row > span {
  color:#6d7890;
  font-size:12px;
}

.inc-footer-policy-links {
  gap:24px;
}

.inc-footer-policy-links a {
  color:#17367f !important;
  font-size:12px;
  font-weight:650;
}

@media (max-width:1200px) {
  .inc-nav-row {
    grid-template-columns:145px minmax(0,1fr) 175px;
    gap:8px;
  }

  .inc-main-menu > li > a {
    padding:0 8px;
    font-size:12.5px;
  }

  .inc-footer-top-row {
    grid-template-columns:1fr 1.6fr;
    gap:28px;
  }

  .inc-footer-grid {
    grid-template-columns:1fr 1fr;
    gap:38px 46px;
  }
}

@media (max-width:1050px) {
  /* Fixed instead of sticky on mobile so logo + menu bar always move
     together with the viewport, including Safari/iOS. */
  .scu-incoming-portal {
    padding-top:66px !important;
  }

  .inc-nav {
    position:fixed;
    z-index:1002;
    top:var(--inc-adminbar-offset);
    left:0;
    right:0;
    width:100%;
  }

  .inc-nav-row {
    min-height:66px;
    gap:16px;
  }

  .inc-sticky-logo,
  .inc-nav.is-stuck .inc-sticky-logo {
    max-width:215px;
  }

  .inc-sticky-logo img {
    max-width:205px;
    max-height:42px;
  }

  .inc-mobile-toggle {
    min-width:48px;
    min-height:44px;
    padding:0 13px;
    border-radius:11px;
    font-size:13px;
  }

  .inc-mobile-toggle i {
    font-size:20px;
  }

  .inc-menu-panel {
    z-index:1004;
    top:calc(var(--inc-adminbar-offset) + 76px);
    max-height:calc(100vh - var(--inc-adminbar-offset) - 88px);
  }

  .inc-main-menu > li > a {
    min-height:48px;
    padding:0 12px;
    font-size:14px;
  }

  .inc-main-menu > li > a:hover,
  .inc-main-menu > li > a:focus-visible,
  .inc-main-menu > li.is-open > a,
  .inc-main-menu > li.current-menu-item > a,
  .inc-main-menu > li.current-menu-ancestor > a {
    color:var(--inc-red) !important;
    background:#faf2f5 !important;
    border-color:#f0dce2 !important;
  }

  .inc-main-menu .sub-menu a {
    min-height:39px;
    font-size:13px;
  }

  .inc-nav-return-mobile {
    min-height:46px;
    font-size:13px;
  }

  .inc-menu-overlay {
    z-index:999;
    backdrop-filter:blur(1.5px);
  }

  .inc-news-grid {
    grid-template-columns:minmax(0,1.5fr) minmax(290px,1fr);
  }
}

@media (max-width:782px) {
  body.admin-bar.scu-incoming-template {
    --inc-adminbar-offset:46px;
  }
}

@media (max-width:700px) {
  .scu-incoming-portal {
    padding-top:64px !important;
  }

  .inc-nav-row {
    min-height:64px;
  }

  .inc-sticky-logo,
  .inc-nav.is-stuck .inc-sticky-logo {
    max-width:195px;
  }

  .inc-sticky-logo img {
    max-width:185px;
    max-height:40px;
  }

  .inc-mobile-toggle {
    min-width:46px;
    min-height:42px;
    font-size:13px;
  }

  .inc-menu-panel {
    top:calc(var(--inc-adminbar-offset) + 73px);
    left:10px;
    right:10px;
    max-height:calc(100vh - var(--inc-adminbar-offset) - 84px);
  }

  .inc-home-action {
    font-size:12.5px;
  }

  .inc-highlight-card h3 {
    font-size:18px;
  }

  .inc-highlight-card p {
    font-size:13px;
  }

  .inc-section-title h2 {
    font-size:27px;
  }

  .inc-section-title p {
    font-size:13.5px;
  }

  .inc-message-person strong {
    font-size:12.5px;
  }

  .inc-message-person span {
    font-size:10px;
  }

  .inc-message-content h2 {
    font-size:22px;
  }

  .inc-message-content p {
    font-size:13px;
  }

  .inc-news-shell {
    padding:20px;
  }

  .inc-news-heading {
    align-items:flex-start;
  }

  .inc-news-heading h2 {
    font-size:28px;
  }

  .inc-news-grid {
    grid-template-columns:1fr;
    grid-template-rows:none;
    gap:12px;
  }

  .inc-news-card,
  .inc-news-card.is-featured {
    grid-row:auto;
    min-height:230px;
  }

  .inc-news-card.is-featured {
    min-height:290px;
  }

  .inc-news-card.is-featured .inc-news-content strong,
  .inc-news-content strong {
    font-size:20px;
  }

  .inc-footer-top-row,
  .inc-footer-funding,
  .inc-footer-bottom-row {
    align-items:center;
  }

  .inc-footer-top-row {
    display:flex;
    flex-direction:column;
    gap:24px;
  }

  .inc-footer-socials {
    justify-content:center;
  }

  .inc-footer-funding-logos {
    flex-wrap:wrap;
    gap:9px 12px;
  }

  .inc-footer-funding-logos img {
    max-height:48px;
    max-width:195px;
  }

  .inc-footer-funding p {
    font-size:11px;
    text-align:center;
  }

  .inc-footer-grid {
    grid-template-columns:1fr;
    gap:30px;
    padding:28px 0 34px;
  }

  .inc-footer-brandcol {
    text-align:center;
  }

  .inc-footer-column h4::after {
    left:0;
  }

  .inc-footer-bottom-row {
    text-align:center;
  }

  .inc-footer-policy-links {
    justify-content:center;
  }
}

@media (max-width:430px) {
  .inc-sticky-logo,
  .inc-nav.is-stuck .inc-sticky-logo {
    max-width:175px;
  }

  .inc-sticky-logo img {
    max-width:168px;
    max-height:38px;
  }

  .inc-mobile-toggle {
    width:44px;
    min-width:44px;
    padding:0;
  }

  .inc-news-heading {
    display:grid;
    grid-template-columns:1fr;
  }

  .inc-news-all {
    width:fit-content;
  }
}

/* Admin toolbar + fixed mobile menu alignment corrections. */
@media (max-width:1050px) {
  body.admin-bar .inc-menu-panel {
    top:calc(var(--inc-adminbar-offset) + 76px);
    max-height:calc(100vh - var(--inc-adminbar-offset) - 88px);
  }
}

@media (max-width:700px) {
  body.admin-bar .inc-menu-panel {
    top:calc(var(--inc-adminbar-offset) + 73px);
    max-height:calc(100vh - var(--inc-adminbar-offset) - 84px);
  }
}

/* =========================================================
   V1.4.5 - RESTORE ORIGINAL DESKTOP NAV + CONTACT GAP
========================================================= */

/* Restore the v1.4.3 desktop navigation proportions. Only add a small
   separation after the final Contact item so the Return link does not
   visually touch it. */
@media (min-width:1051px) {
  .inc-main-menu > li:last-child {
    margin-right:14px;
  }
}

/* Funding strip should visually match the main Erasmus+ site: a compact
   centred logo row, not a large banner. */
.inc-footer-top {
  padding-top:25px;
}

.inc-footer-funding {
  gap:7px;
}

.inc-footer-funding-logos {
  gap:9px;
}

.inc-footer-funding-logos img {
  width:auto;
  height:auto;
  max-height:36px;
  object-fit:contain;
}

.inc-footer-funding-logos img:nth-child(1) {
  max-width:180px;
}

.inc-footer-funding-logos img:nth-child(2) {
  max-width:92px;
}

.inc-footer-funding-logos img:nth-child(3) {
  max-width:185px;
}

.inc-footer-funding p {
  max-width:630px;
  font-size:10.5px;
  line-height:1.5;
}

@media (max-width:700px) {
  .inc-footer-funding-logos {
    flex-wrap:nowrap;
    gap:7px;
  }

  .inc-footer-funding-logos img {
    max-height:28px;
  }

  .inc-footer-funding-logos img:nth-child(1) {
    max-width:138px;
  }

  .inc-footer-funding-logos img:nth-child(2) {
    max-width:70px;
  }

  .inc-footer-funding-logos img:nth-child(3) {
    max-width:142px;
  }
}

@media (max-width:430px) {
  .inc-footer-funding-logos {
    flex-wrap:wrap;
    justify-content:center;
  }
}

/* =========================================================
   V1.4.6 - DESKTOP NAV SPACING / COMPACT MENU
   Keep clear breathing room between the sticky logo, menu and
   Return to Erasmus+ Office without changing the mobile layout.
========================================================= */
@media (min-width:1051px) {
  .inc-nav-row {
    grid-template-columns:180px minmax(0,1fr) 220px;
    gap:16px;
  }

  .inc-sticky-logo {
    width:158px;
  }

  .inc-sticky-logo img {
    max-width:150px;
    max-height:36px;
  }

  .inc-main-menu {
    gap:1px;
  }

  .inc-main-menu > li > a {
    min-height:40px;
    gap:6px;
    padding:0 7px;
    font-size:12px;
    font-weight:650;
  }

  .inc-menu-icon {
    font-size:13px;
  }

  .inc-main-menu > li.menu-item-has-children > a::after {
    width:5px;
    height:5px;
    margin-left:1px;
  }

  .inc-office-return {
    justify-self:end;
    font-size:12px;
    padding-left:4px;
  }
}

@media (min-width:1051px) and (max-width:1200px) {
  .inc-nav-row {
    grid-template-columns:150px minmax(0,1fr) 190px;
    gap:10px;
  }

  .inc-sticky-logo {
    width:138px;
  }

  .inc-sticky-logo img {
    max-width:134px;
    max-height:34px;
  }

  .inc-main-menu > li > a {
    gap:5px;
    padding:0 5px;
    font-size:11px;
  }

  .inc-menu-icon {
    font-size:12px;
  }

  .inc-office-return {
    font-size:11px;
  }
}
