/* x25express.com | Canonical runtime stylesheet | CH/DE/AT, DE/EN
 * Generated from five original cascading sources, preserving selector/media order.
 * Keep layout tokens --x25-layout-max and --x25-layout-gutter together at the end.
 * Rebuild with tools/build-clean-css.js if updating source CSS.
 */
/* x25express.com — clean x25jobs-based layout source. Single-source spacing rules. */
@font-face {
  font-family: "X25 Space Grotesk";
  src: url("fonts/space-grotesk/space-grotesk-latin-wght-normal.woff2") format("woff2");
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
}
:root {
  --serif: "X25 Space Grotesk",Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif;
  --sans: ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif;
  --reading: 1080px;
  --panel-x: clamp(22px,3.1vw,54px);
  --radius: 18px;
  --radius-sm: 12px;
  --ease: cubic-bezier(.2,.7,.2,1)
;
}
body {
  max-width: 100%;
  overflow-x: clip;
  font: 17px/1.58 var(--sans);
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
}
body.menu-open {
  overflow: hidden;
}
img,svg,video,canvas {
  max-width: 100%;
}
a {
  text-decoration: none;
}
button,input,select,textarea {
  font: inherit;
}
button,a,summary {
  touch-action: manipulation;
  -webkit-tap-highlight-color: rgba(112,239,124,.16);
}
::selection {
  background: var(--mint);
  color: var(--ink);
}
:focus-visible {
  outline: 3px solid var(--acid);
  outline-offset: 3px;
}
h1,h2,h3,h4 {
  overflow-wrap: anywhere;
  word-break: normal;
  hyphens: auto;
}
.skip {
  position: absolute;
  left: -9999px;
}
.skip:focus {
  left: 14px;
  top: 14px;
  z-index: 300;
  padding: 10px 14px;
  border: 1px solid var(--line-strong);
  border-radius: 10px;
  background: #fff;
}
/* Header */
.hero-nav {
  padding: 16px 0 0;
}
.hero-nav-shell {
  width: min(var(--max),calc(100% - (2 * var(--gutter))));
  max-width: none;
  margin: 0 auto;
  border: 1px solid rgba(112,239,124,.12);
  border-radius: 20px;
  background: linear-gradient(135deg,#061918 0%,#08211e 58%,#0a2723 100%);
  color: #fff;
  box-shadow: 0 12px 28px rgba(7,25,24,.12);
}
.hero-nav-main {
  display: grid;
  grid-template-columns: 44px minmax(0,1fr) auto;
  align-items: center;
  column-gap: 14px;
  min-height: 68px;
  padding: 9px 12px 9px 14px;
}
.brandmark,.menu-brandmark {
  display: grid;
  place-items: center;
}
.brandmark img {
  display: block;
  width: 40px;
  height: 40px;
}
.menu-brandmark img {
  display: block;
  width: 40px;
  height: 40px;
}
.hero-nav-links {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  min-width: 0;
  overflow: hidden;
  gap: 10px;
}
.hero-nav-markets,.hero-nav-tools {
  display: flex;
  align-items: center;
  min-width: 0;
  gap: 4px;
}
.hero-nav-market {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 13px;
  border: 1px solid transparent;
  border-radius: 999px;
  color: #d8e3df;
  transition: background .18s var(--ease),border-color .18s var(--ease),color .18s var(--ease);
}
.hero-nav-market strong {
  font-size: 14px;
  line-height: 1;
  white-space: nowrap;
}
.hero-nav-market:hover {
  background: rgba(255,255,255,.055);
  color: #fff;
}
.hero-nav-market[aria-current="page"] {
  border-color: rgba(112,239,124,.24);
  background: rgba(112,239,124,.13);
  color: var(--acid);
}
.hero-nav-separator {
  flex: 0 0 auto;
  width: 1px;
  height: 26px;
  background: rgba(255,255,255,.12);
}
.hero-nav-tool {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 0 9px;
  border-radius: 10px;
  color: #b7c8c2;
  font-size: 13px;
  font-weight: 760;
  white-space: nowrap;
  transition: background .18s var(--ease),color .18s var(--ease);
}
.hero-nav-tool:hover {
  background: rgba(255,255,255,.06);
  color: #fff;
}
.hero-nav-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  height: 42px;
}
.hero-nav-locale,.burger,.close {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  min-width: 42px;
  min-height: 42px;
  padding: 0;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 999px;
  background: rgba(255,255,255,.04);
  color: #fff;
  line-height: 1;
  transition: background .18s var(--ease),border-color .18s var(--ease),color .18s var(--ease),transform .18s var(--ease);
}
.hero-nav-locale {
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .08em;
}
.hero-nav-locale:hover,.burger:hover {
  border-color: rgba(112,239,124,.42);
  background: rgba(112,239,124,.11);
  color: var(--acid);
}
.burger {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  cursor: pointer;
}
.burger span {
  display: block;
  width: 16px;
  height: 1.5px;
  border-radius: 2px;
  background: currentColor;
}
.burger span:nth-child(2) {
  width: 11px;
}
.burger:active,.close:active {
  transform: scale(.96);
}
/* Full-screen menu */
.menu[hidden] {
  display: none;
}
.menu.open {
  display: block;
  animation: menuIn .18s var(--ease);
}
@keyframes menuIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.menu {
  position: fixed;
  inset: 0;
  z-index: 1000;
  overflow: auto;
  overscroll-behavior: contain;
}
.menu-inner {
  width: min(var(--max),calc(100% - (2 * var(--gutter))));
  max-width: none;
  min-height: 100%;
  margin: 0 auto;
  padding: 16px 0 max(64px,calc(40px + env(safe-area-inset-bottom)));
}
.menu-head {
  position: sticky;
  top: 16px;
  z-index: 3;
  display: grid;
  grid-template-columns: 44px minmax(0,1fr) 42px;
  align-items: center;
  min-height: 68px;
  margin: 0;
  padding: 9px 12px 9px 14px;
  border: 1px solid rgba(112,239,124,.14);
  border-radius: 20px;
  background: linear-gradient(135deg,rgba(6,25,24,.97),rgba(8,33,30,.97));
  box-shadow: 0 12px 32px rgba(0,0,0,.2);
  backdrop-filter: blur(14px);
}
.menu-head .menu-brandmark {
  grid-column: 1;
}
.menu .close {
  grid-column: 3;
  position: relative;
  justify-self: end;
  font-size: 0;
  cursor: pointer;
}
.menu .close::before,.menu .close::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 16px;
  height: 1.5px;
  border-radius: 2px;
  background: currentColor;
  transform-origin: center;
}
.menu .close::before {
  transform: translate(-50%,-50%) rotate(45deg);
}
.menu .close::after {
  transform: translate(-50%,-50%) rotate(-45deg);
}
.menu .close:hover {
  border-color: rgba(112,239,124,.45);
  background: rgba(112,239,124,.12);
  color: var(--acid);
}
.menu-grid {
  display: grid;
  grid-template-columns: 1.05fr 1.35fr 1.05fr 1fr;
  align-items: start;
  gap: clamp(24px,3.4vw,62px);
  margin-top: clamp(30px,4vw,56px);
  padding: 0 4px;
}
.menu-group {
  min-width: 0;
  padding: 20px 0 24px;
  border-top: 1px solid rgba(255,255,255,.15);
}
.menu-label {
  margin: 0 0 14px;
  color: #a9bbb4;
  font-size: 11px;
  font-weight: 850;
  letter-spacing: .18em;
  text-transform: uppercase;
}
.menu a {
  display: block;
  width: max-content;
  max-width: 100%;
  margin: 0;
  padding: 7px 0;
  font: 700 clamp(23px,1.65vw,31px)/1.08 var(--serif);
  letter-spacing: -.022em;
  transition: color .18s var(--ease),transform .18s var(--ease);
}
.menu a:hover {
  color: var(--acid);
  transform: translateX(4px);
}
.menu .small a {
  padding: 7px 0;
  font: 700 14px/1.3 var(--sans);
  color: #d9e3df;
  letter-spacing: 0;
}
.menu .small a:hover {
  color: var(--acid);
}
/* Shared typography */
.lead {
  max-width: 920px;
  margin: 0;
  color: #34433f;
  font-size: clamp(16px,1.25vw,21px);
  line-height: 1.48;
  letter-spacing: -.01em;
}
.num {
  display: inline-flex;
  align-items: center;
  width: max-content;
  max-width: 100%;
  margin: 0 0 13px;
  padding: 7px 10px 6px;
  border: 1px solid var(--line-strong);
  border-bottom-color: #9bc8a5;
  border-radius: 9px 9px 4px 4px;
  background: linear-gradient(180deg,#eef8f0 0%,var(--mint-2) 100%);
  color: var(--ink-soft);
  font-size: 11px;
  font-weight: 850;
  line-height: 1;
  letter-spacing: .14em;
  text-transform: uppercase;
  box-shadow: inset 0 -2px 0 rgba(112,239,124,.3);
}
.section-title {
  font-family: var(--serif);
  text-wrap: balance;
}
.minor-heading {
  font-family: var(--serif);
}
/* Hero */
.hero {
  position: relative;
  width: min(var(--max),calc(100% - (2 * var(--gutter))));
  max-width: none;
  min-height: 0;
  margin: 18px auto 0;
  padding: 34px var(--panel-x) 32px;
  overflow: hidden;
  border-radius: var(--radius);
  background: linear-gradient(138deg,#061918,#09231f);
  color: #fff;
  box-shadow: var(--shadow);
}
.hero::after {
  content: "";
  position: absolute;
  right: -160px;
  bottom: -260px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle,rgba(112,239,124,.15),rgba(112,239,124,0) 70%);
  pointer-events: none;
}
.hero>* {
  position: relative;
  z-index: 1;
}
.hero .eyebrow {
  color: var(--acid);
}
.hero h1 {
  max-width: 1240px;
  margin: 13px 0 0;
  font: 760 clamp(48px,5vw,84px)/.94 var(--serif);
  letter-spacing: -.042em;
  text-wrap: balance;
}
.hero .lead {
  max-width: 980px;
  margin-top: 17px;
  color: #dce6e2;
}
.chips {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 22px;
}
.chip {
  padding: 8px 12px;
  border: 1px solid #56736d;
  border-radius: 999px;
  background: rgba(255,255,255,.05);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.25;
}
/* Handoff */
.express-handoff {
  width: min(var(--max),calc(100% - (2 * var(--gutter))));
  max-width: none;
  margin: 0 auto;
  padding: 18px 0 22px;
}
.regional-pull-card {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0,1.42fr) minmax(285px,.58fr);
  overflow: hidden;
  border: 1px solid var(--line-strong);
  border-radius: var(--radius);
  background: linear-gradient(135deg,#fff 0%,#fbfdfb 58%,#f2faf4 100%);
  box-shadow: 0 10px 28px rgba(7,25,24,.06);
}
.regional-pull-card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  background: linear-gradient(180deg,var(--acid),#a9eeb5);
}
.regional-pull-copy {
  padding: clamp(24px,3vw,42px) clamp(24px,3.4vw,50px);
}
.regional-pull-copy .eyebrow {
  margin-bottom: 9px;
  color: #2d6840;
}
.regional-pull-copy .section-title,.regional-pull-copy h2,.regional-pull-copy h3,.regional-pull-copy h4 {
  max-width: 920px;
  margin: 0;
  font: 700 clamp(31px,2.8vw,52px)/1.01 var(--serif);
  letter-spacing: -.04em;
  text-wrap: balance;
}
.regional-pull-copy p {
  max-width: 820px;
  margin: 13px 0 0;
  color: var(--muted);
  font-size: clamp(15px,1.05vw,18px);
  line-height: 1.56;
}
.regional-pull-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  margin-top: 16px;
  padding: 10px 16px;
  border: 1px solid var(--dark);
  border-radius: 999px;
  background: var(--dark);
  color: #fff;
  font-size: 13px;
  font-weight: 850;
}
.regional-pull-points {
  display: grid;
  grid-template-rows: repeat(3,minmax(0,1fr));
  border-left: 1px solid var(--line);
  background: linear-gradient(180deg,#f4faf5,#eef7f0);
}
.regional-pull-points>div {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  border-top: 1px solid var(--line);
}
.regional-pull-points>div:first-child {
  border-top: 0;
}
.regional-pull-points strong {
  font: 760 clamp(21px,1.6vw,29px)/1 var(--serif);
}
.regional-pull-points span {
  margin-top: 5px;
  color: #4f665f;
  font-size: 13px;
  line-height: 1.4;
}
/* Sections */
.express-section,.home-markets,.home-benefits,.home-final {
  width: min(var(--max),calc(100% - (2 * var(--gutter))));
  max-width: none;
  margin: 0 auto;
  padding: var(--section-y) 0;
  border-top: 1px solid var(--line);
}
.express-section .section-grid>div:last-child {
  min-width: 0;
}
.express-section .section-title + .express-card-grid,.express-section .section-title + .express-related-grid,.express-section .section-title + .express-usecase-grid,.express-section .section-title + .faq,.express-section .section-title + .express-network-list {
  margin-top: 18px;
}
.express-reading {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: clamp(20px,2.3vw,34px);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: linear-gradient(135deg,#fff 0%,#fbfdfb 68%,#f4faf5 100%);
  box-shadow: 0 8px 24px rgba(7,25,24,.045);
}
.express-reading .section-title {
  margin-bottom: 18px;
  font-size: clamp(31px,2.6vw,48px);
}
.overview-layout {
  display: grid;
  grid-template-columns: minmax(0,1.32fr) minmax(320px,.68fr);
  gap: clamp(22px,3vw,46px);
  align-items: start;
}
.overview-copy {
  max-width: 860px;
}
.overview-copy p {
  margin: 0;
  color: #34433f;
  font-size: 16px;
  line-height: 1.64;
}
.overview-copy .overview-lead {
  color: var(--ink);
  font-size: clamp(16px,1.2vw,19px);
  font-weight: 650;
  line-height: 1.5;
}
.overview-copy p+p {
  margin-top: 13px;
}
.overview-rail {
  display: grid;
  gap: 9px;
}
.overview-mini {
  position: relative;
  display: grid;
  grid-template-columns: 34px minmax(0,1fr);
  column-gap: 11px;
  row-gap: 3px;
  align-items: start;
  padding: 13px 14px;
  border: 1px solid var(--line);
  border-radius: 11px;
  background: rgba(255,255,255,.86);
}
.overview-mini-num {
  grid-row: 1/3;
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border: 1px solid #d8e7dd;
  border-radius: 999px;
  background: #edf4ef;
  color: #38524a;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .05em;
}
.overview-mini strong {
  font: 700 17px/1.15 var(--serif);
  letter-spacing: -.015em;
}
.overview-mini p {
  margin: 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.48;
}
.readability-helper {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 8px 12px;
  margin-top: 18px;
  padding: 13px 15px;
  border: 1px solid #d8e5dc;
  border-radius: 11px;
  background: #f2f8f3;
}
.readability-helper strong {
  font: 700 16px/1.2 var(--serif);
}
.readability-helper p {
  margin: 0;
  color: #455b54;
  font-size: 14.5px;
  line-height: 1.5;
}
/* Generic compact card grids */
.express-card-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  grid-auto-rows: max-content;
  align-items: start;
  gap: 10px;
  width: 100%;
  margin-top: 16px;
}
.express-card {
  display: block;
  align-self: start;
  min-height: 0;
  padding: 16px 17px;
  border: 1px solid var(--line);
  border-radius: 11px;
  background: linear-gradient(145deg,#fff 0%,#fbfdfb 100%);
  box-shadow: 0 4px 14px rgba(7,25,24,.035);
  transition: transform .18s var(--ease),box-shadow .18s var(--ease),border-color .18s var(--ease);
}
.express-card:hover,.express-card:focus-visible {
  transform: translateY(-2px);
  border-color: #9bcfab;
  box-shadow: 0 12px 28px rgba(7,25,24,.075);
}
.express-card .k,.express-market-card .k,.express-usecase-card .k {
  display: inline-flex;
  width: max-content;
  padding: 4px 8px;
  border: 1px solid #d8e7dd;
  border-radius: 999px;
  background: #edf4ef;
  color: #38524a;
  font-size: 11px;
  font-weight: 850;
  line-height: 1;
  letter-spacing: .11em;
  text-transform: uppercase;
}
.express-card h3,.express-card h4 {
  margin: 10px 0 0;
  font: 700 clamp(20px,1.55vw,26px)/1.06 var(--serif);
  letter-spacing: -.02em;
}
.express-card p {
  margin: 8px 0 0;
  color: var(--muted);
  font-size: 14.5px;
  line-height: 1.52;
}
/* Booking market cards: content controls height; no blank filler. */
.express-market-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  grid-auto-rows: max-content;
  align-items: start;
  gap: 12px;
  width: 100%;
  margin-top: 17px;
}
.express-market-card {
  display: block;
  align-self: start;
  min-height: 0;
  padding: 16px 18px 17px;
  overflow: hidden;
  border: 1px solid #cbd8d1;
  border-radius: 12px;
  background: radial-gradient(circle at 92% 8%,rgba(177,239,190,.28),transparent 28%),linear-gradient(145deg,#fff,#fbfdfb);
  box-shadow: 0 1px 0 rgba(7,25,24,.03);
}
.country-card-top {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.country-card-copy {
  padding-top: 11px;
}
.country-card-title {
  margin: 0 0 5px;
  font: 760 clamp(25px,1.9vw,32px)/1.02 var(--serif);
  letter-spacing: -.03em;
}
.express-market-card p {
  margin: 0;
  color: #425a52;
  font-size: 14.5px;
  line-height: 1.5;
}
.card-cta {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  min-height: 42px;
  margin-top: 11px;
  padding: 9px 13px;
  border: 1px solid var(--dark);
  border-radius: 10px;
  background: var(--dark);
  color: #fff;
  font-size: 13px;
  font-weight: 900;
  line-height: 1.2;
}
.express-market-card:hover,.express-market-card:focus-visible {
  border-color: #a9c8b3;
  box-shadow: 0 10px 24px rgba(7,25,24,.07);
}
/* Related topics */
.express-related-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  grid-auto-rows: max-content;
  align-items: start;
  gap: 9px;
  width: 100%;
  margin-top: 17px;
}
.express-related-card {
  position: relative;
  display: block;
  align-self: start;
  min-height: 0;
  padding: 17px 18px;
  border: 1px solid var(--line);
  border-top: 3px solid #bcecc7;
  border-radius: 12px;
  background: linear-gradient(145deg,#fff,#f9fcfa);
}
.express-related-card::after {
  content: none;
  display: none;
}
.express-related-card strong {
  display: block;
  font: 700 21px/1.06 var(--serif);
  letter-spacing: -.02em;
}
.express-related-card span {
  display: block;
  margin-top: 6px;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.5;
}
.express-related-card:hover,.express-related-card:focus-visible {
  transform: translateY(-2px);
  border-color: #9bcfab;
  box-shadow: 0 12px 28px rgba(7,25,24,.075);
}
/* Exact common-shipment topics from the approved reference. */
.express-usecase-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  grid-auto-rows: max-content;
  align-items: start;
  gap: 12px;
  margin-top: 18px;
}
.express-usecase-card {
  display: block;
  align-self: start;
  min-height: 0;
  padding: 18px 19px;
  border: 1px solid #cfdcd5;
  border-top: 3px solid #8ceca1;
  border-radius: 12px;
  background: radial-gradient(circle at 92% 5%,rgba(177,239,190,.28),transparent 34%),#fff;
}
.express-usecase-card h3,.express-usecase-card h4 {
  margin: 12px 0 0;
  font: 700 clamp(23px,1.8vw,30px)/1.04 var(--serif);
  letter-spacing: -.025em;
}
.express-usecase-card p {
  margin: 8px 0 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.5;
}
.express-usecase-card:hover {
  border-color: #9bcfab;
  box-shadow: 0 10px 24px rgba(7,25,24,.06);
}
/* FAQ and network */
.faq {
  display: grid;
  gap: 7px;
  margin-top: 17px;
}
.faq details {
  overflow: hidden;
  margin: 0;
  border: 1px solid #d5e1da;
  border-radius: 12px;
  background: #fff;
}
.faq summary {
  display: grid;
  grid-template-columns: minmax(0,1fr) 30px;
  align-items: center;
  gap: 12px;
  min-height: 52px;
  padding: 11px 13px 11px 15px;
  list-style: none;
  cursor: pointer;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.4;
}
.faq summary::-webkit-details-marker {
  display: none;
}
.faq summary::after {
  content: "+";
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  border: 1px solid var(--line);
  border-radius: 999px;
}
.faq details[open] summary::after {
  content: "−";
}
.faq details p {
  max-width: 900px;
  margin: 0;
  padding: 10px 46px 14px 15px;
  color: #51645d;
  font-size: 14.5px;
  line-height: 1.56;
}
.express-network-list {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 14px;
}
.express-network-list a {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 7px 11px;
  border: 1px solid var(--line-strong);
  border-radius: 999px;
  background: #fff;
  font-size: 12.5px;
  font-weight: 800;
}
/* Home */
.home-hero {
  width: min(var(--max),calc(100% - (2 * var(--gutter))));
  max-width: none;
  margin: 0 auto;
  padding: 18px 0 34px;
}
.home-shell.home-shell-single {grid-template-columns:minmax(0,1fr)}
.home-shell {
  display: grid;
  grid-template-columns: minmax(0,1.58fr) minmax(330px,.78fr);
  align-items: stretch;
  gap: 14px;
}
.home-copy {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 410px;
  padding: clamp(30px,3.7vw,58px);
  border-radius: var(--radius);
  background: linear-gradient(138deg,#061918,#08221f);
  color: #fff;
  box-shadow: var(--shadow);
}
.home-copy .eyebrow {
  color: var(--acid);
}
.home-copy h1 {
  max-width: 960px;
  margin: 13px 0 18px;
  font: 760 clamp(50px,5.2vw,88px)/.92 var(--serif);
  letter-spacing: -.045em;
  text-wrap: balance;
}
.home-copy .lead {
  max-width: 820px;
  color: #dbe7e2;
}
.home-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 25px;
}
.home-actions a,.cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 10px 16px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 850;
}
.home-actions .primary,.home-final .cta {
  background: var(--acid);
  color: var(--dark);
}
.home-actions .secondary {
  border: 1px solid #54706a;
  color: #fff;
}
.home-side {
  display: grid;
  grid-template-rows: auto 1fr;
  gap: 14px;
}
.stat-card,.quick-card {
  padding: clamp(22px,2.6vw,38px);
  border: 1px solid rgba(7,25,24,.05);
  border-radius: var(--radius);
  background: var(--mint);
}
.stat-card {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  min-height: 138px;
}
.stat-card strong {
  font: 760 clamp(48px,4.2vw,76px)/.84 var(--serif);
  letter-spacing: -.05em;
}
.stat-card span {
  max-width: 240px;
  font-size: 14px;
  line-height: 1.45;
}
.quick-card {
  display: flex;
  flex-direction: column;
}
.quick-heading {
  margin: 12px 0 18px;
  font: 760 clamp(28px,2.4vw,42px)/1 var(--serif);
  letter-spacing: -.03em;
}
.quick-list {
  margin-top: auto;
  border-top: 1px solid rgba(7,25,26,.18);
}
.quick-list a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 12px 0;
  border-bottom: 1px solid rgba(7,25,26,.18);
  font-size: 13.5px;
  font-weight: 750;
}
.home-section-head {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  align-items: end;
  gap: 0;
  margin-bottom: 22px;
}
.home-section-head .section-title {
  font-size: clamp(35px,3.2vw,58px);
}
.market-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  grid-auto-rows: max-content;
  align-items: start;
  gap: 12px;
}
.market {
  display: block;
  min-height: 0;
  padding: 22px;
  border: 1px solid #cbd8d1;
  border-radius: 12px;
  background: radial-gradient(circle at 92% 8%,rgba(177,239,190,.28),transparent 29%),#fff;
}
.market .code {
  display: inline-flex;
  padding: 5px 9px;
  border-radius: 999px;
  background: #edf4ef;
  color: #234138;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .12em;
}
.market-title {
  margin: 16px 0 7px;
  font: 760 28px/1.03 var(--serif);
  letter-spacing: -.03em;
}
.market p {
  max-width: 36ch;
  margin: 0;
  color: #455c54;
  font-size: 14px;
  line-height: 1.52;
}
.market-cta {
  margin-top: 15px;
  font-size: 12px;
  font-weight: 900;
}
.benefit-grid {
  grid-auto-rows: max-content;
}
.benefit {
  min-height: 0;
  padding: 18px 0 6px;
  border-top: 1px solid var(--ink);
}
.benefit .n {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .14em;
  color: var(--muted);
}
.benefit h3,.benefit h4 {
  margin: 13px 0 7px;
  font: 700 25px/1.05 var(--serif);
  letter-spacing: -.025em;
}
.benefit p {
  max-width: 310px;
  margin: 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.52;
}
.home-final-box {
  display: grid;
  grid-template-columns: 1.35fr .65fr;
  align-items: end;
  gap: 36px;
  padding: clamp(28px,3.7vw,52px);
  border-radius: var(--radius);
  background: linear-gradient(135deg,var(--dark-2),#0d342f);
  color: #fff;
  box-shadow: var(--shadow);
}
.home-final-box .section-title {
  font-size: clamp(38px,3.7vw,66px);
  line-height: .96;
}
.home-final p {
  margin: 0 0 17px;
  color: #d8e3df;
}
/* Footer */
.seo-footer {
  border-top: 1px solid rgba(255,255,255,.12);
  padding: 36px 0 26px;
  background: #061918;
  color: #fff;
}
.seo-footer-grid {
  width: min(var(--max),calc(100% - (2 * var(--gutter))));
  max-width: none;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 24px;
}
.seo-footer strong {
  display: block;
  margin-bottom: 10px;
  font-size: 13px;
}
.seo-footer a {
  display: block;
  width: max-content;
  max-width: 100%;
  margin: 7px 0;
  color: rgba(255,255,255,.78);
  font-size: 13.5px;
}
.seo-footer a:hover {
  color: #fff;
  text-decoration: underline;
}
.x25-publisher {
  width: min(var(--max),calc(100% - (2 * var(--gutter))));
  max-width: none;
  margin: 28px auto 0;
  padding: 20px 0 0;
  border-top: 1px solid rgba(255,255,255,.1);
  color: #a6b7b1;
  font-size: 12px;
  line-height: 1.58;
}
.x25-publisher a {
  display: inline;
  margin: 0;
  color: #cfe0d9;
}
/* Floating booking */
.quick-apply-picker {
  position: fixed;
  right: max(16px,calc(12px + env(safe-area-inset-right)));
  bottom: max(16px,calc(12px + env(safe-area-inset-bottom)));
  z-index: 68;
}
.quick-apply-picker>summary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 10px 17px;
  border: 1px solid var(--acid);
  border-radius: 999px;
  background: var(--dark);
  color: #fff;
  list-style: none;
  cursor: pointer;
  font-size: 13px;
  font-weight: 900;
  box-shadow: 0 12px 28px rgba(7,25,24,.18);
}
.quick-apply-picker>summary::-webkit-details-marker {
  display: none;
}
.quick-apply-picker[open]>summary {
  background: var(--acid);
  color: var(--dark);
}
.quick-apply-panel {
  position: absolute;
  right: 0;
  bottom: calc(100% + 10px);
  width: min(340px,calc(100vw - 28px));
  padding: 9px;
  border: 1px solid rgba(7,25,24,.14);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 22px 60px rgba(7,25,24,.18);
}
.quick-title {
  padding: 7px 9px 9px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 850;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.quick-apply-panel a {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  padding: 10px 11px;
  border-radius: 10px;
  font-size: 13px;
  font-weight: 800;
}
.quick-apply-panel a:hover {
  background: var(--mint-2);
}
.quick-apply-panel a span:last-child {
  color: var(--muted);
}
/* Responsive */
@media(max-width:1160px) {
  .hero-nav-separator,.hero-nav-tools {
    display: none;
  }
  .express-card-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
  .benefit-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
  .express-usecase-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}
@media(max-width:880px) {
  .menu-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 14px;
  }
  .menu-group {
    padding: 18px 16px 20px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 14px;
    background: rgba(255,255,255,.025);
  }
  .home-shell {
    grid-template-columns: 1fr;
  }
  .home-copy {
    min-height: 360px;
  }
  .home-side {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: none;
  }
  .regional-pull-card {
    grid-template-columns: 1fr;
  }
  .regional-pull-points {
    grid-template-columns: repeat(3,minmax(0,1fr));
    grid-template-rows: none;
    border-top: 1px solid var(--line);
    border-left: 0;
  }
  .regional-pull-points>div {
    padding: 13px 15px;
    border-top: 0;
    border-left: 1px solid var(--line);
  }
  .regional-pull-points>div:first-child {
    border-left: 0;
  }
  .express-market-grid {
    grid-template-columns: 1fr;
  }
  .express-related-grid {
    grid-template-columns: 1fr;
  }
  .seo-footer-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}
@media(max-width:720px) {
  :root {
    --gutter: 10px;
    --panel-x: 16px;
    --section-y: 28px;
  }
  .hero-nav {
    padding: 10px 0 0;
  }
  .hero-nav-shell {
    border-radius: 16px;
  }
  .hero-nav-main {
    grid-template-columns: 34px minmax(0,1fr) auto;
    min-height: 56px;
    column-gap: 10px;
    padding: 7px 8px;
  }
  .brandmark img {
    width: 34px;
    height: 34px;
  }
  .hero-nav-links {
    display: none;
  }
  .hero-nav-actions {
    gap: 7px;
    height: 38px;
  }
  .hero-nav-locale,.burger {
    width: 38px;
    height: 38px;
    min-width: 38px;
    min-height: 38px;
  }
  .burger span {
    width: 15px;
  }
  .burger span:nth-child(2) {
    width: 10px;
  }
  .menu-inner {
    padding: 10px 0 max(42px,calc(24px + env(safe-area-inset-bottom)));
  }
  .menu-head {
    top: 10px;
    grid-template-columns: 34px minmax(0,1fr) 38px;
    min-height: 56px;
    padding: 7px 8px;
    border-radius: 16px;
  }
  .menu-brandmark img {
    width: 34px;
    height: 34px;
  }
  .menu .close {
    width: 38px;
    height: 38px;
    min-width: 38px;
    min-height: 38px;
  }
  .menu-grid {
    grid-template-columns: 1fr;
    gap: 10px;
    margin-top: 12px;
    padding: 0;
  }
  .menu-group {
    padding: 14px 15px 15px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 14px;
    background: rgba(255,255,255,.026);
  }
  .menu-label {
    margin-bottom: 7px;
    font-size: 11px;
  }
  .menu a {
    width: 100%;
    margin: 0;
    padding: 8px 0;
    border-bottom: 1px solid rgba(255,255,255,.08);
    font-size: 22px;
    line-height: 1.06;
  }
  .menu a:last-child {
    border-bottom: 0;
  }
  .menu .small a {
    padding: 9px 0;
    font-size: 14px;
  }
  .hero {
    margin-top: 10px;
    padding: 22px var(--panel-x) 20px;
    border-radius: 13px;
    box-shadow: none;
  }
  .hero h1 {
    margin-top: 10px;
    font-size: clamp(36px,11vw,48px);
    line-height: .96;
  }
  .hero .lead {
    margin-top: 11px;
    font-size: 14px;
    line-height: 1.48;
  }
  .chips {
    gap: 6px;
    margin-top: 14px;
  }
  .chip {
    padding: 7px 10px;
    font-size: 11px;
  }
  .express-handoff {
    padding: 10px 0 16px;
  }
  .regional-pull-card {
    border-radius: 13px;
  }
  .regional-pull-copy {
    padding: 18px 16px 17px 18px;
  }
  .regional-pull-copy .eyebrow {
    margin-bottom: 7px;
  }
  .regional-pull-copy .section-title,.regional-pull-copy h2,.regional-pull-copy h3,.regional-pull-copy h4 {
    font-size: 30px;
  }
  .regional-pull-copy p {
    margin-top: 10px;
    font-size: 13px;
  }
  .regional-pull-cta {
    width: 100%;
    min-height: 42px;
    margin-top: 13px;
    padding: 9px 13px;
  }
  .regional-pull-points>div {
    min-height: 52px;
    padding: 9px 8px;
  }
  .regional-pull-points strong {
    font-size: 16px;
  }
  .regional-pull-points span {
    margin-top: 3px;
    font-size: 11px;
    overflow-wrap: anywhere;
  }
  .express-section,.home-markets,.home-benefits,.home-final {
    padding: 28px 0;
  }
  .num {
    margin-bottom: 9px;
    padding: 7px 9px 6px;
    font-size: 11px;
  }
  .section-title {
    font-size: 30px;
    line-height: 1.02;
  }
  .express-reading {
    padding: 17px 15px;
    border-radius: 12px;
    box-shadow: none;
  }
  .express-reading .section-title {
    margin-bottom: 13px;
    font-size: 28px;
  }
  .overview-layout {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .overview-copy p {
    font-size: 15px;
    line-height: 1.58;
  }
  .overview-copy .overview-lead {
    font-size: 16px;
    line-height: 1.52;
  }
  .overview-copy p+p {
    margin-top: 9px;
  }
  .overview-rail {
    gap: 7px;
  }
  .overview-mini {
    grid-template-columns: 30px minmax(0,1fr);
    padding: 11px 12px;
    column-gap: 9px;
  }
  .overview-mini-num {
    width: 27px;
    height: 27px;
  }
  .overview-mini strong {
    font-size: 16px;
  }
  .overview-mini p {
    font-size: 14px;
  }
  .express-card-grid,.express-market-grid,.express-usecase-grid {
    grid-template-columns: 1fr;
    gap: 8px;
    margin-top: 12px;
  }
  .express-card,.express-market-card,.express-usecase-card {
    padding: 13px 14px;
    border-radius: 10px;
  }
  .express-card h3,.express-card h4 {
    margin-top: 8px;
    font-size: 21px;
  }
  .country-card-copy {
    padding-top: 9px;
  }
  .country-card-title {
    font-size: 24px;
  }
  .card-cta {
    min-height: 40px;
    margin-top: 9px;
    padding: 9px 11px;
  }
  .express-usecase-card h3,.express-usecase-card h4 {
    margin-top: 9px;
    font-size: 23px;
  }
  .express-usecase-card p {
    margin-top: 6px;
    font-size: 14px;
  }
  .express-related-grid {
    gap: 7px;
    margin-top: 12px;
  }
  .express-related-card {
    padding: 13px 14px;
  }
  .express-related-card strong {
    font-size: 20px;
  }
  .express-related-card span {
    margin-top: 6px;
    font-size: 14px;
  }
  .faq {
    gap: 6px;
    margin-top: 12px;
  }
  .faq summary {
    min-height: 48px;
    padding: 10px 11px 10px 13px;
    font-size: 14px;
  }
  .faq details p {
    padding: 10px 40px 13px 13px;
    font-size: 14px;
  }
  .express-network-list {
    gap: 6px;
    margin-top: 10px;
  }
  .express-network-list a {
    min-height: 36px;
    padding: 7px 10px;
    font-size: 12px;
  }
  .home-hero {
    padding: 10px 0 22px;
  }
  .home-shell {
    gap: 10px;
  }
  .home-copy {
    min-height: 0;
    padding: 26px 20px;
  }
  .home-copy h1 {
    font-size: clamp(39px,11vw,50px);
    line-height: .95;
  }
  .home-copy .lead {
    font-size: 16px;
  }
  .home-actions {
    margin-top: 20px;
  }
  .home-side {
    grid-template-columns: 1fr;
    gap: 10px;
  }
  .stat-card,.quick-card {
    padding: 20px;
  }
  .stat-card {
    min-height: 110px;
  }
  .stat-card strong {
    font-size: 52px;
  }
  .quick-heading {
    font-size: 30px;
  }
  .home-section-head {
    display: block;
    margin-bottom: 16px;
  }
  .home-section-head .section-title {
    font-size: 31px;
  }
  .market-grid {
    grid-template-columns: 1fr;
    gap: 8px;
  }
  .market-title {
    font-size: 25px;
  }
  .benefit-grid {
    grid-template-columns: 1fr;
    gap: 11px;
  }
  .benefit {
    padding: 14px 0 4px;
  }
  .benefit h3,.benefit h4 {
    margin-top: 9px;
    font-size: 23px;
  }
  .home-final-box {
    grid-template-columns: 1fr;
    gap: 18px;
    padding: 22px 18px;
  }
  .home-final-box .section-title {
    font-size: 31px;
  }
  .seo-footer {
    padding: 30px 0 84px;
  }
  .seo-footer-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .seo-footer strong {
    margin-bottom: 7px;
  }
  .seo-footer a {
    margin: 7px 0;
    font-size: 13px;
  }
  .x25-publisher {
    margin-top: 22px;
    padding-top: 18px;
    font-size: 11.5px;
  }
  .quick-apply-picker {
    right: 12px;
    bottom: 12px;
  }
  .quick-apply-picker>summary {
    min-height: 42px;
    padding: 9px 14px;
  }
}
@media(max-width:360px) {
  :root {
    --gutter: 8px;
    --panel-x: 14px;
  }
  .regional-pull-copy {
    padding-left: 15px;
    padding-right: 14px;
  }
  .home-copy {
    padding-left: 17px;
    padding-right: 17px;
  }
}
/* Cargo image system */
.cargo-image-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 14px;
  margin-top: 20px;
}
.cargo-image-card {
  position: relative;
  display: block;
  aspect-ratio: 16/9;
  box-shadow: 0 8px 24px rgba(7,25,24,.06);
  isolation: isolate;
  transition: transform .22s var(--ease),box-shadow .22s var(--ease),border-color .22s var(--ease);
}
.cargo-image-card img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .35s var(--ease);
}
.cargo-image-card::after {
  content: "";
  position: absolute;
  inset: 38% 0 0;
  background: linear-gradient(180deg,rgba(3,15,14,0),rgba(3,15,14,.88));
  z-index: 1;
  pointer-events: none;
}
.cargo-image-overlay {
  position: absolute;
  z-index: 2;
  left: 0;
  right: 0;
  bottom: 0;
  display: block;
  padding: 22px;
  color: #fff;
}
.cargo-image-overlay strong {
  display: block;
  font: 760 clamp(19px,1.55vw,28px)/1.04 var(--serif);
  letter-spacing: -.025em;
  text-shadow: 0 1px 12px rgba(0,0,0,.35);
}
.cargo-image-overlay span {
  display: block;
  margin-top: 6px;
  color: rgba(255,255,255,.92);
  font-size: 14px;
  line-height: 1.42;
}
.cargo-image-card:hover,.cargo-image-card:focus-visible {
  transform: translateY(-4px);
  border-color: #79c989;
  box-shadow: 0 18px 40px rgba(7,25,24,.13);
  outline: none;
}
.cargo-image-card:hover img,.cargo-image-card:focus-visible img {
  transform: scale(1.025);
}
.express-visual-band {
  width: min(var(--max),calc(100% - (2 * var(--gutter))));
  max-width: none;
  margin: 0 auto;
  padding: 18px 0 4px;
}
.express-visual-feature {
  position: relative;
  max-width: var(--max);
  margin: 0;
  aspect-ratio: 2.55/1;
  overflow: hidden;
  isolation: isolate;
}
.express-visual-feature img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.express-visual-feature::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg,rgba(3,18,16,.74) 0%,rgba(3,18,16,.28) 42%,rgba(3,18,16,0) 70%);
  z-index: 1;
  pointer-events: none;
}
.express-visual-feature figcaption {
  position: absolute;
  z-index: 2;
  left: clamp(22px,4vw,60px);
  bottom: clamp(20px,3vw,42px);
  max-width: 520px;
  color: #fff;
}
.express-visual-feature figcaption strong {
  display: block;
  font: 760 clamp(27px,3vw,48px)/.98 var(--serif);
  letter-spacing: -.035em;
  text-wrap: balance;
}
.express-visual-feature figcaption span {
  display: block;
  margin-top: 8px;
  color: rgba(255,255,255,.88);
  font-size: clamp(13px,1vw,16px);
  line-height: 1.45;
}
/* H4 is intentionally identical to H3 wherever the same component class is used. */
.minor-heading:is(h3,h4),.express-card:is(h3,h4),.benefit :is(h3,h4),.express-usecase-card :is(h3,h4) {
  font-family: var(--serif);
}
@media(max-width:1160px) {
  .cargo-image-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
  .express-visual-feature {
    aspect-ratio: 2/1;
  }
}
@media(max-width:720px) {
  .market {
    padding: 15px;
  }
  .market-title {
    margin: 11px 0 5px;
  }
  .market-cta {
    margin-top: 10px;
  }
  .cargo-image-grid {
    grid-template-columns: 1fr;
    gap: 10px;
    margin-top: 14px;
  }
  .cargo-image-card {
    border-radius: 12px;
    box-shadow: 0 5px 16px rgba(7,25,24,.05);
  }
  .cargo-image-overlay {
    padding: 16px;
  }
  .cargo-image-overlay strong {
    font-size: 23px;
  }
  .cargo-image-overlay span {
    font-size: 14px;
  }
  .express-visual-band {
    padding: 10px 0 2px;
  }
  .express-visual-feature {
    aspect-ratio: 16/10;
    border-radius: 13px;
    box-shadow: none;
  }
  .express-visual-feature::after {
    background: linear-gradient(180deg,rgba(3,18,16,0) 25%,rgba(3,18,16,.78) 100%);
  }
  .express-visual-feature figcaption {
    left: 16px;
    right: 16px;
    bottom: 16px;
  }
  .express-visual-feature figcaption strong {
    font-size: 28px;
  }
  .express-visual-feature figcaption span {
    font-size: 14px;
  }
}
/* Root language entry: bilingual context below the language chooser. */
.root-about {
  width: min(var(--max),calc(100% - (2 * var(--gutter))));
  max-width: none;
  margin: 0 auto;
  padding: 0 0 var(--section-y);
}
.root-about-shell {
  padding: clamp(24px,3vw,42px);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: linear-gradient(135deg,#fff 0%,#fbfdfb 72%,#f1faf3 100%);
  box-shadow: 0 8px 24px rgba(7,25,24,.045);
}
.root-about-intro {
  max-width: 1120px;
}
.root-about-intro .eyebrow {
  color: #2d6840;
}
.root-about-intro h2 {
  max-width: 980px;
  margin: 10px 0 13px;
  font: 760 clamp(32px,3vw,54px)/1 var(--serif);
  letter-spacing: -.035em;
  text-wrap: balance;
}
.root-about-intro p {
  max-width: 980px;
  margin: 0;
  color: var(--muted);
  font-size: 15px;
  line-height: 1.58;
}
.root-language-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 12px;
  margin-top: 24px;
}
.root-language-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 22px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
}
.root-language-label {
  width: max-content;
  padding: 5px 8px;
  border: 1px solid #d8e7dd;
  border-radius: 999px;
  background: #edf4ef;
  color: #38524a;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .13em;
}
.root-language-card h3 {
  margin: 13px 0 9px;
  font: 700 clamp(23px,1.8vw,31px)/1.05 var(--serif);
  letter-spacing: -.025em;
}
.root-language-card p {
  max-width: 72ch;
  margin: 0;
  color: #4a6058;
  font-size: 14.5px;
  line-height: 1.58;
}
.root-language-card p+p {
  margin-top: 8px;
}
.root-language-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: max-content;
  min-height: 42px;
  margin-top: 16px;
  padding: 9px 14px;
  border-radius: 999px;
  background: var(--dark);
  color: #fff;
  font-size: 11px;
  font-weight: 900;
}
.root-language-cta:hover {
  background: var(--dark-2);
  color: var(--acid);
}
@media(max-width:720px) {
  .root-about {
    padding-bottom: 28px;
  }
  .root-about-shell {
    padding: 18px 15px;
    border-radius: 13px;
  }
  .root-about-intro h2 {
    font-size: 30px;
  }
  .root-about-intro p {
    font-size: 15px;
    line-height: 1.58;
  }
  .root-language-grid {
    grid-template-columns: 1fr;
    gap: 8px;
    margin-top: 16px;
  }
  .root-language-card {
    padding: 15px;
  }
  .root-language-card h3 {
    font-size: 23px;
  }
  .root-language-card p {
    font-size: 14px;
  }
  .root-language-cta {
    width: 100%;
    margin-top: 13px;
  }
}
/* Root bilingual context — 2026-10-01 */
.root-context {
  width: min(var(--max),calc(100% - (2 * var(--gutter))));
  max-width: none;
  margin: 0 auto;
  padding: 0 0 var(--section-y);
}
.root-context-shell {
  padding: clamp(24px,3vw,42px);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: #fff;
  box-shadow: 0 8px 24px rgba(7,25,24,.045);
}
.root-context-shell>h2 {
  margin: 10px 0 18px;
  font: 760 clamp(30px,2.7vw,50px)/1.02 var(--serif);
  letter-spacing: -.035em;
  text-wrap: balance;
}
.root-context-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 12px;
}
.root-context-card {
  padding: clamp(18px,2vw,28px);
  border: 1px solid var(--line);
  border-radius: 14px;
  background: linear-gradient(135deg,#fff 0%,#f7fcf8 100%);
}
.root-context-card h3 {
  margin: 0 0 12px;
  font: 760 clamp(22px,1.8vw,31px)/1.06 var(--serif);
  letter-spacing: -.025em;
}
.root-context-card p {
  margin: 0 0 11px;
  color: var(--muted);
  font-size: 15px;
  line-height: 1.6;
}
.root-context-card p:last-child {
  margin-bottom: 0;
}
@media(max-width:720px) {
  .root-context {
    padding-bottom: 28px;
  }
  .root-context-shell {
    padding: 18px 15px;
    border-radius: 13px;
  }
  .root-context-shell>h2 {
    font-size: 29px;
    margin-bottom: 14px;
  }
  .root-context-grid {
    grid-template-columns: 1fr;
    gap: 8px;
  }
  .root-context-card {
    padding: 15px;
  }
  .root-context-card h3 {
    font-size: 22px;
  }
  .root-context-card p {
    font-size: 14px;
    line-height: 1.58;
  }
}
/* Weight-class model: 1–150 / 151–300 / 301–500 / 501–750 XL / 751–1,000 XL */
.express-weight-grid {
  grid-template-columns: repeat(5,minmax(0,1fr));
}
.express-weight-card h4 a {
  color: inherit;
  text-decoration: none;
}
.express-weight-card .weight-detail-links {
  margin-top: 10px;
  font-size: 13px;
  font-weight: 750;
}
.express-weight-card .weight-detail-links a {
  text-decoration: underline;
  text-underline-offset: 2px;
}
@media(max-width:1400px) {
  .express-weight-grid {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }
}
@media(max-width:900px) {
  .express-weight-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}
@media(max-width:640px) {
  .express-weight-grid {
    grid-template-columns: 1fr;
  }
}
/* Overview/process layout refresh — 2026-10-09 */
/* Removes the old two-column mini-card rail that created a large empty right-hand column.
   The process steps now form one compact connected strip below the reading copy. */
.express-reading .overview-layout {
  display: block;
}
.express-reading .overview-copy {
  max-width: 1120px;
}
.express-reading .overview-rail {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 0;
  margin-top: clamp(22px,2.4vw,34px);
  overflow: hidden;
  border: 1px solid #c9d8d0;
  border-radius: 14px;
  background: linear-gradient(135deg,#071c1a 0%,#0a2824 100%);
  box-shadow: 0 10px 24px rgba(7,25,24,.08);
}
.express-reading .overview-mini {
  position: relative;
  min-width: 0;
  color: #fff;
}
.express-reading .overview-mini-num {
  margin-top: 1px;
  font: 800 10px/1 var(--sans);
}
.express-reading .overview-mini strong {
  min-width: 0;
  overflow-wrap: anywhere;
}
.express-reading .overview-mini p {
  min-width: 0;
  overflow-wrap: anywhere;
}
@media(max-width:880px) {
  .express-reading .overview-rail {
    grid-template-columns: 1fr;
  }
  .express-reading .overview-mini+.overview-mini {
    border-left: 0;
    border-top: 1px solid rgba(255,255,255,.13);
  }
}
@media(max-width:720px) {
  .express-reading .overview-copy {
    max-width: none;
  }
  .express-reading .overview-rail {
    margin-top: 17px;
    border-radius: 11px;
    box-shadow: none;
  }
  .express-reading .overview-mini {
    grid-template-columns: 34px minmax(0,1fr);
    column-gap: 10px;
  }
  .express-reading .overview-mini-num {
    width: 29px;
    height: 29px;
    border-radius: 8px;
  }
  .express-reading .overview-mini strong {
    font-size: 15px;
  }
  .express-reading .overview-mini p {
    font-size: 13px;
    line-height: 1.42;
  }
}
/* 2026-10-09 editorial overview redesign */
.express-reading {
  overflow: hidden;
}
.express-reading .overview-layout.overview-editorial {
  display: grid;
  grid-template-columns: minmax(0,1.55fr) minmax(320px,.62fr);
  gap: clamp(28px,3.6vw,58px);
  align-items: start;
}
.express-reading .overview-copy.overview-editorial-copy {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  column-gap: clamp(22px,2.3vw,36px);
  row-gap: 0;
  max-width: none;
}
.express-reading .overview-copy.overview-editorial-copy>p {
  margin: 0;
  padding: 15px 0 16px;
  color: #34433f;
  font-size: 15.5px;
  line-height: 1.62;
}
.express-reading .overview-copy.overview-editorial-copy>p:nth-of-type(2n+2) {
  padding-right: 4px;
}
.express-reading .overview-copy.overview-editorial-copy>p:nth-of-type(2n+3) {
  padding-left: 4px;
}
.express-reading .overview-copy.overview-editorial-copy>.overview-lead {
  grid-column: 1/-1;
  margin: 0 0 8px;
  padding: 0 0 22px;
  border-top: 0;
  font-weight: 650;
  line-height: 1.52;
  letter-spacing: -.01em;
}
.express-reading .overview-copy.overview-editorial-copy>.seo-intent-context {
  grid-column: 1/-1;
  margin-top: 3px;
  padding: 14px 16px;
  border: 1px solid #d9e6dd;
  border-radius: 10px;
  background: #f4f8f5;
  color: #42574f;
  font-size: 14px;
}
.express-reading .overview-rail.overview-action-panel {
  position: sticky;
  top: 92px;
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  margin: 0;
  overflow: hidden;
  border: 1px solid #173c35;
  border-radius: 16px;
  background: linear-gradient(155deg,#062f2a 0%,#073a32 58%,#0d493d 100%);
  box-shadow: 0 18px 42px rgba(5,34,30,.14);
  color: #fff;
}
.express-reading .overview-action-head {
  padding: 22px 22px 18px;
  border-bottom: 1px solid rgba(255,255,255,.13);
}
.express-reading .overview-action-kicker {
  display: block;
  margin-bottom: 8px;
  color: #9fe3b0;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .14em;
}
.express-reading .overview-action-title {
  margin: 0;
  color: #fff;
  font: 760 clamp(22px,1.7vw,29px)/1.05 var(--serif);
  letter-spacing: -.03em;
}
.express-reading .overview-action-sub {
  margin: 10px 0 0;
  color: rgba(255,255,255,.72);
  font-size: 13.5px;
  line-height: 1.5;
}
.express-reading .overview-mini {
  display: grid;
  grid-template-columns: 34px minmax(0,1fr);
  column-gap: 12px;
  row-gap: 3px;
  align-items: start;
  padding: 15px 22px;
  border: 0;
  border-bottom: 1px solid rgba(255,255,255,.12);
  border-radius: 0;
  background: transparent;
}
.express-reading .overview-mini+.overview-mini {
  border-left: 0;
}
.express-reading .overview-mini-num {
  grid-row: 1/3;
  display: grid;
  place-items: center;
  width: 31px;
  height: 31px;
  border: 1px solid rgba(159,227,176,.62);
  border-radius: 9px;
  background: rgba(159,227,176,.10);
  color: #b9f0c6;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .06em;
}
.express-reading .overview-mini strong {
  color: #fff;
  font: 720 15px/1.18 var(--serif);
  letter-spacing: -.01em;
}
.express-reading .overview-mini p {
  margin: 0;
  color: rgba(255,255,255,.68);
  font-size: 12.5px;
  line-height: 1.45;
}
.express-reading .overview-market-links {
  padding: 17px 22px 21px;
  background: rgba(0,0,0,.08);
}
.express-reading .overview-market-label {
  display: block;
  margin-bottom: 9px;
  color: rgba(255,255,255,.68);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.express-reading .overview-market-row {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 7px;
}
.express-reading .overview-market-row a {
  display: grid;
  place-items: center;
  min-height: 39px;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 9px;
  background: rgba(255,255,255,.07);
  color: #fff;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .08em;
  text-decoration: none;
  transition: transform .16s var(--ease),background .16s var(--ease),border-color .16s var(--ease);
}
.express-reading .overview-market-row a:hover,.express-reading .overview-market-row a:focus-visible {
  transform: translateY(-1px);
  border-color: #a8e9b8;
  background: rgba(168,233,184,.14);
}
@media(max-width:980px) {
  .express-reading .overview-layout.overview-editorial {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .express-reading .overview-rail.overview-action-panel {
    position: relative;
    top: auto;
    grid-template-columns: 1fr 1fr 1fr;
    border-radius: 14px;
  }
  .express-reading .overview-action-head {
    grid-column: 1/-1;
  }
  .express-reading .overview-mini {
    border-bottom: 0;
    border-right: 1px solid rgba(255,255,255,.12);
  }
  .express-reading .overview-mini:nth-of-type(3) {
    border-right: 0;
  }
  .express-reading .overview-market-links {
    grid-column: 1/-1;
  }
}
@media(max-width:720px) {
  .express-reading .overview-copy.overview-editorial-copy {
    grid-template-columns: 1fr;
  }
  .express-reading .overview-copy.overview-editorial-copy>p,.express-reading .overview-copy.overview-editorial-copy>p:nth-of-type(2n+2),.express-reading .overview-copy.overview-editorial-copy>p:nth-of-type(2n+3) {
    padding: 12px 0 13px;
  }
  .express-reading .overview-copy.overview-editorial-copy>.overview-lead {
    padding: 0 0 18px;
    font-size: 17px;
  }
  .express-reading .overview-copy.overview-editorial-copy>.seo-intent-context {
    padding: 12px 13px;
  }
  .express-reading .overview-rail.overview-action-panel {
    grid-template-columns: 1fr;
    border-radius: 12px;
  }
  .express-reading .overview-action-head {
    padding: 18px 17px 15px;
  }
  .express-reading .overview-action-title {
    font-size: 22px;
  }
  .express-reading .overview-mini {
    padding: 13px 17px;
    border-right: 0;
    border-bottom: 1px solid rgba(255,255,255,.12);
  }
  .express-reading .overview-market-links {
    padding: 15px 17px 18px;
  }
}
/* 2026-10-09: stronger headline hierarchy */
h1,h2,h3,h4,h5,h6,
.section-title,.quick-heading,.market-title,.overview-action-title,
.express-card-title,.express-weight-card h3,.root-language-card h3,
.benefit h3,.benefit h4,.home-copy h1,.home-section-head h2,
.section h2,.endcap h2,.home-final h2,.stat-card strong {
  font-weight: 800;
}
/* 2026-10-09: balanced editorial text blocks — avoid uneven paired columns */
@media (min-width:721px) {
  .express-reading .overview-copy.overview-editorial-copy {
    display: block;
    max-width: 82ch;
  }
  .express-reading .overview-copy.overview-editorial-copy>p,
  .express-reading .overview-copy.overview-editorial-copy>p:nth-of-type(2n+2),
  .express-reading .overview-copy.overview-editorial-copy>p:nth-of-type(2n+3) {
    margin: 0;
    padding: 15px 0 16px;
  }
  .express-reading .overview-copy.overview-editorial-copy>.overview-lead {
    margin: 0 0 8px;
    padding: 0 0 22px;
  }
  .express-reading .overview-copy.overview-editorial-copy>.seo-intent-context {
    margin-top: 3px;
    padding: 14px 16px;
  }
}
/* x25money.com v1.0 – independent design, inspired by x25pronto's QR experience. */
:root {
  color-scheme: light;
  --green: #55dd3d;
  --green-bright: #72eb5f;
  --surface: #f1f6f2;
  font-family: Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-synthesis: none;
}
* {
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
}
body {
  margin: 0;
  min-width: 320px;
}
a {
  color: inherit;
}
button,input {
  font: inherit;
}
img {
  max-width: 100%;
}
h1,h2,h3 {
  letter-spacing: -.045em;
  line-height: 1.12;
  color: #11291b;
}
h1,h2,h3,p {
  overflow-wrap: break-word;
}
p {
  line-height: 1.65;
}
a:focus-visible,summary:focus-visible {
  outline: 3px solid #2a9044;
  outline-offset: 4px;
}
.skip-link {
  position: absolute;
  left: 10px;
  top: -70px;
  background: #fff;
  color: #111;
  padding: 12px;
  z-index: 999;
}
.skip-link:focus {
  top: 10px;
}
.site-header .wordmark {
  gap: 9px;
  text-decoration: none;
  font-weight: 850;
  letter-spacing: -.065em;
  color: #102719;
  white-space: nowrap;
}
.wordmark strong {
  color: #2ca63c;
}
.site-header nav a,.language {
  font-size: .89rem;
  font-weight: 750;
  text-decoration: none;
  color: #355241;
}
.site-header nav a:hover,.language:hover {
  color: #168533;
}
.language {
  border: 1px solid var(--line);
  border-radius: 10px;
  padding: 8px 10px;
  flex: none;
}
.landing {
  padding: clamp(12px,2.4vw,42px);
  padding-bottom: 24px;
}
.hero-layout {
  display: grid;
  grid-template-columns: minmax(0,1.03fr) minmax(0,.97fr);
  border: 1px solid #d3e2d5;
  border-radius: 26px;
  overflow: hidden;
  min-height: min(745px,calc(100svh - 110px));
  box-shadow: 0 24px 75px #0d271721;
  background: #fff;
}
.hero-dark {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  background: radial-gradient(circle at 85% 12%,#3c985739,transparent 42%),linear-gradient(143deg,#102e1d 5%,#071c12 100%);
  color: #fff;
  padding: clamp(28px,4.5vw,78px);
  min-width: 0;
}
.hero-brand {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #fff;
  text-decoration: none;
  font-size: clamp(23px,2vw,30px);
  font-weight: 830;
  letter-spacing: -.06em;
}
.hero-brand strong {
  color: var(--green-bright);
}
.hero-body {
  margin-top: clamp(50px,5.2vw,87px);
  width: 100%;
}
.kicker {
  margin: 0 0 22px;
  display: flex;
  gap: 9px;
  align-items: center;
  color: #b2ebbc;
  font-size: .76rem;
  letter-spacing: .085em;
  font-weight: 800;
  text-transform: uppercase;
  line-height: 1.5;
}
.signal {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #5ff157;
  box-shadow: 0 0 0 5px #59dd5229;
  flex: none;
}
.hero-dark h1 {
  margin: 0;
  color: #fff;
  font-size: clamp(31px,3.1vw,55px);
  max-width: 100%;
  font-weight: 850;
}
.hero-dark h1 em {
  font-style: normal;
  color: var(--green-bright);
}
.hero-lead {
  color: #cbdfd1;
  font-size: clamp(15px,1.28vw,18px);
  line-height: 1.65;
  margin: 24px 0 0;
}
.hero-reward {
  display: flex;
  align-items: center;
  gap: 18px;
  margin-top: 42px;
  padding: 19px 20px;
  border: 1px solid #416a4b;
  border-radius: 16px;
  background: #3d81421c;
  width: 100%;
}
.reward-icon {
  font-size: 33px;
  line-height: 1;
  color: var(--green-bright);
  font-weight: 900;
}
.hero-reward strong {
  display: block;
  font-size: 1rem;
  color: #fff;
}
.hero-reward small {
  display: block;
  color: #c7dccb;
  line-height: 1.5;
  font-size: .85rem;
  margin-top: 4px;
}
.hero-pills {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px;
  margin-top: auto;
  padding-top: 45px;
  font-size: .82rem;
  color: #bdd5c3;
}
.hero-light {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  padding: clamp(28px,5vw,82px);
  background: linear-gradient(150deg,#fff,#fafdfa);
}
.form-kicker {
  color: #25833d;
  letter-spacing: .13em;
  font-weight: 850;
  font-size: .75rem;
  margin: 0 0 13px;
}
.hero-light h2 {
  font-size: clamp(26px,2.5vw,38px);
  margin: 0;
  color: #132d1c;
}
.panel-desc {
  font-size: clamp(15px,1.1vw,17px);
  color: #526a5a;
  line-height: 1.65;
  margin: 13px 0 27px;
}
.field-label {
  font-weight: 800;
  margin: 0 0 12px;
  font-size: .91rem;
  color: #12331d;
}
.country-list {
  display: grid;
  gap: 12px;
}
.country-card {
  display: flex;
  align-items: center;
  gap: 13px;
  text-decoration: none;
  border: 1px solid #d2e0d5;
  border-radius: 14px;
  background: #fff;
  padding: 13px 14px;
  min-height: 77px;
  transition: border-color .16s,box-shadow .16s,transform .16s;
}
.country-card:hover {
  border-color: #4bc53b;
  box-shadow: 0 8px 24px #285c2c18;
  transform: translateY(-1px);
}
.country-badge {
  display: grid;
  place-items: center;
  flex: none;
  width: 46px;
  height: 46px;
  background: #e8f5e9;
  color: #286a35;
  border-radius: 11px;
  font-size: .82rem;
  font-weight: 850;
}
.country-details {
  display: grid;
  min-width: 0;
  gap: 3px;
}
.country-details strong {
  font-size: .95rem;
}
.country-details small {
  font-size: .78rem;
  color: #5c7163;
}
.country-arrow {
  font-size: 22px;
  color: #18812b;
  margin-left: auto;
}
.entry-trust {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 22px;
  margin-top: 25px;
  color: #466a50;
  font-size: .79rem;
}
.entry-legal {
  border-top: 1px solid #e1eae2;
  margin-top: 26px;
  padding-top: 16px;
  display: flex;
  align-items: center;
  gap: 8px 13px;
  flex-wrap: wrap;
}
.entry-legal a {
  font-size: .76rem;
  color: #42614a;
  text-decoration: underline;
  text-decoration-color: #adbfaf;
  text-underline-offset: 3px;
  font-weight: 700;
}
.section {
  background: #fff;
  padding: clamp(32px,4vw,68px) var(--gutter);
  margin: 0;
}
.section-tinted {
  background: #f3f8f4;
}
.section-head {
  margin-bottom: 26px;
}
.section-head h1,.section-head h2 {
  font-size: clamp(27px,3vw,43px);
  margin: 9px 0 14px;
}
.section-head p {
  color: #52695c;
  margin: 8px 0;
  font-size: clamp(15px,1.13vw,18px);
}
.eyebrow {
  font-weight: 850;
  color: #269341 !important;
  text-transform: uppercase;
  letter-spacing: .1em;
  font-size: .77rem !important;
}
.steps-grid {
  list-style: none;
  margin: 26px 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 14px;
}
.steps-grid li {
  display: flex;
  gap: 15px;
  padding: 22px;
  border-radius: 17px;
  background: #f5f9f6;
  border: 1px solid #e1ebe2;
}
.step-count {
  display: grid;
  place-items: center;
  flex: none;
  width: 35px;
  height: 35px;
  border-radius: 11px;
  background: #0c2a19;
  color: #7be96a;
  font-weight: 850;
}
.steps-grid strong {
  font-size: 1rem;
}
.steps-grid p {
  font-size: .91rem;
  color: #53675a;
  margin: 8px 0 0;
  line-height: 1.55;
}
.note {
  margin: 25px 0 0;
  padding: 19px 22px;
  background: #ecf7ee;
  border: 1px solid #cce5d1;
  border-left: 4px solid #41bd3d;
  border-radius: 12px;
  color: #2e5037;
  line-height: 1.6;
}
.pill-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 11px;
  margin: 28px 0;
}
.topic-pill {
  padding: 13px 16px;
  background: #fff;
  border: 1px solid #d4e5d7;
  border-radius: 12px;
  text-decoration: none;
  font-weight: 750;
  color: #265537;
}
.topic-pill:hover {
  border-color: #4bcb4b;
  background: #f0ffed;
}
.text-link {
  color: #166d2a;
  font-weight: 800;
  text-underline-offset: 4px;
}
.faq-list {
  display: grid;
  gap: 11px;
}
.faq-list details {
  border: 1px solid #dfe9e0;
  background: #fbfdfb;
  border-radius: 13px;
  padding: 17px 20px;
}
.faq-list summary {
  cursor: pointer;
  font-weight: 780;
}
.faq-list p {
  color: #4d6554;
  margin: 13px 0 0;
}
.cta-section .country-list {
  grid-template-columns: repeat(3,minmax(0,1fr));
}
.footer {
  display: grid;
  grid-template-columns: minmax(0,1.1fr) minmax(0,.9fr);
  gap: 35px;
  background: #0b2417;
  color: #c4d7c8;
  padding: 35px var(--gutter) 44px;
}
.footer-logo {
  text-decoration: none;
  color: #fff;
  font-size: 25px;
  font-weight: 850;
  letter-spacing: -.06em;
}
.footer-logo span {
  color: #71e95b;
}
.footer p {
  margin: 8px 0;
  font-size: .82rem;
  line-height: 1.6;
}
.footer nav {
  display: flex;
  flex-wrap: wrap;
  align-content: center;
  align-items: center;
  justify-content: flex-end;
  gap: 12px 20px;
}
.footer nav a {
  font-size: .8rem;
  font-weight: 700;
  color: #deecde;
}
.inner-main {
  background: #fff;
  padding: clamp(27px,4.5vw,65px) var(--gutter) clamp(65px,7vw,110px);
  min-height: 65svh;
}
.breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  margin: 0 0 30px;
  font-size: .84rem;
  color: #50705b;
}
.breadcrumbs a {
  color: #1a7a34;
  font-weight: 700;
}
.guide-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 12px;
}
.guide-card {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 19px 20px;
  min-height: 84px;
  border: 1px solid #dbe7de;
  background: #f7faf7;
  border-radius: 15px;
  text-decoration: none;
  font-weight: 750;
  line-height: 1.35;
}
.guide-card:hover {
  border-color: #60c755;
  background: #f0faee;
}
.guide-card .number {
  font-weight: 600;
  font-size: .77rem;
  color: #53745c;
  white-space: nowrap;
}
.article h1 {
  font-size: clamp(30px,3.4vw,51px);
  margin: 10px 0 14px;
}
.article-lead {
  font-size: clamp(16px,1.4vw,20px);
  color: #47634f;
  margin: 0 0 32px;
  line-height: 1.65;
}
.article-grid {
  display: grid;
  grid-template-columns: minmax(0,1.8fr) minmax(245px,.7fr);
  gap: clamp(20px,3vw,54px);
  align-items: start;
}
.article-copy h2 {
  font-size: clamp(24px,2.2vw,33px);
  margin: 25px 0 13px;
}
.article-copy h3 {
  font-size: clamp(20px,1.6vw,27px);
  margin: 25px 0 13px;
}
.article-copy p,.article-copy li {
  line-height: 1.75;
  color: #384e3d;
}
.article-copy ol {
  padding-left: 25px;
}
.article-copy ol li {
  padding: 5px 0;
}
.example {
  background: #f0f9f0;
  border: 1px solid #d8eada;
  border-radius: 16px;
  padding: 2px 20px 18px;
}
.aside-panel {
  border: 1px solid #d9e8dc;
  background: #f3f8f4;
  border-radius: 17px;
  padding: 21px;
  display: grid;
  gap: 12px;
}
.aside-panel strong {
  font-size: 1.1rem;
}
.aside-panel p {
  margin: 0;
  color: #4f6857;
  font-size: .89rem;
}
.aside-panel .country-card {
  padding: 8px;
  min-height: 61px;
  gap: 8px;
}
.aside-panel .country-badge {
  width: 35px;
  height: 35px;
  font-size: .7rem;
}
.aside-panel .country-details strong {
  font-size: .82rem;
}
.aside-panel .country-details small {
  font-size: .69rem;
}
.aside-panel .country-arrow {
  font-size: 17px;
}
.article-more {
  padding-top: 36px;
}
.article-more h2 {
  font-size: clamp(24px,2.5vw,34px);
}
.related-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 10px;
}
.related-grid a {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  text-decoration: none;
  background: #f7faf8;
  border: 1px solid #d8e5db;
  padding: 15px;
  border-radius: 12px;
  font-weight: 700;
  font-size: .89rem;
}
.country-detail {
  display: grid;
  grid-template-columns: minmax(0,1.7fr) minmax(245px,.8fr);
  gap: 30px;
}
.ordinary {
  padding-left: 21px;
}
.ordinary li {
  line-height: 1.75;
  padding: 7px 0;
}
.primary-link {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 14px;
  border-radius: 12px;
  background: var(--green);
  color: #112918;
  font-weight: 850;
  text-decoration: none;
  text-align: center;
}
.tiny {
  font-size: .78rem !important;
  color: #5c6e5d;
}
.country-foot {
  margin-top: 30px;
}
.root-choice {
  min-height: 100svh;
  background: radial-gradient(circle at 12% 15%,#1c5730,transparent 44%),#0a2416;
  color: #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 28px;
}
.root-choice h1 {
  font-size: clamp(42px,6vw,74px);
  color: #fff;
  margin: 12px 0;
}
.root-choice h1 span {
  color: var(--green-bright);
}
.root-choice p {
  color: #d1e3d5;
  font-size: 1rem;
}
.root-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 13px;
  margin: 22px 0;
}
.root-actions a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #55df3d;
  color: #102715;
  padding: 16px 27px;
  border-radius: 12px;
  text-decoration: none;
  font-weight: 800;
}
@media(max-width:1080px) {
  .hero-layout {
    grid-template-columns: minmax(0,.95fr) minmax(0,1.05fr);
  }
  .hero-dark {
    padding: 34px;
  }
  .hero-light {
    padding: 34px;
  }
  .hero-body {
    margin-top: 40px;
  }
  .hero-dark h1 {
    font-size: clamp(30px,3.25vw,41px);
  }
  .guide-grid,.related-grid {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }
}
@media(max-width:760px) {
  .site-header .wordmark {
    font-size: 22px;
  }
  .landing {
    padding: 10px;
  }
  .hero-layout {
    grid-template-columns: minmax(0,1fr);
    min-height: 0;
    border-radius: 20px;
  }
  .hero-dark {
    padding: 24px 25px 23px;
  }
  .hero-brand {
    font-size: 25px;
  }
  .hero-body {
    margin-top: 20px;
  }
  .kicker {
    margin: 0 0 10px;
    font-size: .71rem;
  }
  .hero-dark h1 {
    font-size: clamp(25px,5.2vw,33px);
  }
  .hero-lead {
    font-size: 14px;
    line-height: 1.55;
    margin: 14px 0 0;
  }
  .hero-reward {
    margin-top: 18px;
    padding: 12px 14px;
    gap: 10px;
  }
  .reward-icon {
    font-size: 25px;
  }
  .hero-reward strong {
    font-size: .88rem;
  }
  .hero-reward small {
    font-size: .76rem;
  }
  .hero-pills {
    display: none;
  }
  .hero-light {
    padding: 25px 25px 29px;
  }
  .hero-light h2 {
    font-size: 26px;
  }
  .panel-desc {
    margin: 9px 0 19px;
    font-size: 14px;
    line-height: 1.55;
  }
  .field-label {
    font-size: .88rem;
    margin-bottom: 9px;
  }
  .country-list {
    gap: 10px;
  }
  .country-card {
    min-height: 67px;
    padding: 10px 12px;
  }
  .country-badge {
    width: 43px;
    height: 43px;
  }
  .country-details strong {
    font-size: .9rem;
  }
  .country-details small {
    font-size: .75rem;
  }
  .entry-trust {
    margin-top: 19px;
    gap: 8px 17px;
  }
  .entry-legal {
    margin-top: 19px;
    padding-top: 14px;
  }
  .steps-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
  .guide-grid,.related-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
  .article-grid,.country-detail {
    grid-template-columns: minmax(0,1fr);
  }
  .cta-section .country-list {
    grid-template-columns: 1fr;
  }
  .footer {
    grid-template-columns: 1fr;
  }
  .footer nav {
    justify-content: flex-start;
  }
}
@media(max-width:480px) {
  .site-header {
    flex-wrap: wrap;
  }
  .language {
    margin-left: auto;
  }
  .landing {
    padding: 7px;
  }
  .hero-layout {
    border-radius: 16px;
  }
  .hero-dark {
    padding: 21px 20px 20px;
  }
  .hero-brand {
    font-size: 24px;
  }
  .hero-body {
    margin-top: 17px;
  }
  .kicker {
    font-size: .67rem;
    gap: 8px;
    margin-bottom: 9px;
  }
  .hero-dark h1 {
    font-size: clamp(24px,6.3vw,29px);
  }
  .hero-lead {
    font-size: 13px;
    margin-top: 11px;
  }
  .hero-reward {
    margin-top: 15px;
    padding: 11px 12px;
  }
  .hero-light {
    padding: 23px 20px 25px;
  }
  .hero-light h2 {
    font-size: 25px;
  }
  .entry-trust {
    display: grid;
    grid-template-columns: 1fr;
    gap: 7px;
  }
  .entry-legal {
    gap: 10px;
  }
  .entry-legal a {
    font-size: .73rem;
  }
  .section {
    padding: 33px 18px;
  }
  .steps-grid {
    grid-template-columns: 1fr;
    gap: 9px;
  }
  .steps-grid li {
    padding: 16px;
  }
  .inner-main {
    padding: 28px 18px 70px;
  }
  .guide-grid,.related-grid {
    grid-template-columns: 1fr;
  }
  .guide-card {
    min-height: 65px;
    padding: 14px;
  }
  .footer {
    padding: 28px 18px 36px;
  }
  .article-lead {
    font-size: 16px;
  }
}
@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior: auto;
  }
}
.section-title {
  color: #11291b;
}
.article-copy .subhead {
  font-size: clamp(20px,1.6vw,27px);
  font-weight: 850;
  color: #11291b;
  line-height: 1.12;
  letter-spacing: -.045em;
  margin: 25px 0 13px;
}
.example .subhead {
  margin-top: 25px;
}
.article-more .section-title {
  font-size: clamp(24px,2.5vw,34px);
}
.hero-light .panel-title {
  font-size: clamp(26px,2.5vw,38px);
  font-weight: 850;
  letter-spacing: -.045em;
  line-height: 1.12;
  color: #132d1c;
  margin: 0;
}
@media(max-width:760px) {
  .hero-light .panel-title {
    font-size: 26px;
  }
}
@media(max-width:480px) {
  .hero-light .panel-title {
    font-size: 25px;
  }
}
/* Country cards show equal neutral state by default; brief staggered invitation on load. */
.country-card:focus-visible {
  outline: 3px solid #268a40;
  outline-offset: 3px;
  border-color: #268a40;
}
@media (prefers-reduced-motion:no-preference) {
  .country-list .country-card {
    animation: country-invite .78s ease-out both;
  }
  .country-list .country-card:nth-child(1) {
    animation-delay: .14s;
  }
  .country-list .country-card:nth-child(2) {
    animation-delay: .32s;
  }
  .country-list .country-card:nth-child(3) {
    animation-delay: .50s;
  }
  @keyframes country-invite {
    0%,100% {
      box-shadow: none;
      transform: translateY(0);
      background: #fff;
      border-color: #d2e0d5;
    }
    45% {
      box-shadow: 0 5px 22px rgba(68,180,67,.22);
      transform: translateY(-2px);
      background: #f4fff0;
      border-color: #4dbd48;
    }
  }
  .country-list .country-card:hover {
    animation: none;
    border-color: #4bc53b;
    box-shadow: 0 8px 24px #285c2c18;
    transform: translateY(-1px);
  }
  .country-list .country-card:focus-visible {
    animation: none;
  }
}
/* Sticky top navigation on all screen sizes. */
.site-header {
  isolation: isolate;
}
@media(max-width:480px) {
  html {
    scroll-padding-top: 120px;
  }
}
/* Privacy dialog: appearance adapted from the x25jobs.com reference. */
@media(max-width:650px) {
  .cookie-banner {
    left: 50%;
    right: auto;
    max-height: calc(100dvh - 24px);
  }
  .cookie-inner {
    display: flex;
    border-radius: 14px;
  }
  .cookie-copy strong {
    font-size: 19px;
  }
  .cookie-actions {
    margin-top: 14px;
  }
  .cookie-dialog {
    border-radius: 16px;
  }
}
@media(prefers-reduced-motion:reduce) {
  .cookie-button {
    transition: none;
  }
}
/* Information graphics: original diagrams stored locally, responsive on mobile. */
.guide-visuals {
  display: grid;
  padding: 30px clamp(16px,3vw,45px);
  margin: 0;
  border-top: 1px solid #dbe8dd;
}
.guide-visuals figure {
  margin: 0;
  min-width: 0;
}
.guide-visuals img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 720/184;
  object-fit: contain;
}
.guide-visuals figcaption {
  color: #3f5d47;
  margin: 8px 0 0;
  font-weight: 650;
}
@media(max-width:760px) {
  .guide-visuals {
    grid-template-columns: minmax(0,1fr);
  }
}
/* Editorial context on short informational pages; responsive, readable, no forced content width. */
.reading-extension {
  padding: 22px 0 16px;
  color: #254232;
  line-height: 1.65;
}
.reading-extension p {
  margin: 0 0 17px;
  line-height: 1.7;
}
.reading-extension-title {
  font-weight: 750;
  color: #122b1a;
}
.reading-heading,.reading-heading-minor {
  margin: 26px 0 12px;
  line-height: 1.25;
  color: #102d1b;
  letter-spacing: -.025em;
}
.reading-heading {
  font-size: clamp(22px,2.2vw,30px);
}
.reading-heading-minor {
  font-size: clamp(19px,1.6vw,24px);
}
.source-note {
  margin: 18px 0;
  font-size: .92rem;
  line-height: 1.6;
  color: #375742;
}
.source-note a {
  text-decoration: underline;
  text-underline-offset: 3px;
}
@media(max-width:760px) {
  .reading-extension {
    padding: 12px 0 5px;
  }
  .reading-extension p {
    margin: 0 0 11px;
  }
  .reading-heading,.reading-heading-minor {
    margin: 22px 0 9px;
  }
}
/* Responsive editorial guidance: no personal bylines, no repeated author card. */
.editorial-intro {
  margin-bottom: clamp(20px,3vw,32px);
}
.editorial-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: clamp(12px,1.6vw,22px);
  align-items: stretch;
}
.editorial-tile {
  min-width: 0;
  padding: clamp(18px,2vw,28px);
  background: #f5faf6;
  border: 1px solid #dce9df;
  border-radius: 18px;
}
.editorial-number {
  display: inline-grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: 12px;
  background: #e5f4e8;
  color: #216f35;
  font-weight: 850;
  font-size: .84rem;
}
.editorial-tile h2,.editorial-tile h3,.editorial-tile-heading {
  font-weight: 820;
  font-size: clamp(19px,1.7vw,24px);
  line-height: 1.25;
  margin: 17px 0 10px;
  color: #102b1b;
  letter-spacing: -.035em;
}
.editorial-tile p:not(.editorial-tile-heading) {
  color: #4b6654;
  font-size: clamp(14px,1vw,16px);
  line-height: 1.68;
  margin: 0 0 13px;
}
.editorial-tile p:not(.editorial-tile-heading):last-child {
  margin-bottom: 0;
}
.editorial-foot {
  margin: 22px 0 12px;
  color: #45614f;
  font-size: .91rem;
  line-height: 1.6;
}
.editorial-foot a {
  text-decoration: underline;
  text-underline-offset: 3px;
  color: #146c2c;
}
/* Give guidance on desktop a readable rhythm without hard-coded text max-width. */
.reading-extension {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  column-gap: clamp(24px,3vw,54px);
  row-gap: clamp(12px,1.5vw,20px);
}
.reading-extension-title,.reading-extension .source-note {
  grid-column: 1/-1;
}
@media(max-width:860px) {
  .editorial-grid {
    grid-template-columns: minmax(0,1fr);
  }
  .editorial-tile {
    padding: 19px;
  }
  .reading-extension {
    grid-template-columns: minmax(0,1fr);
  }
}
@media(max-width:480px) {
  .editorial-tile {
    border-radius: 14px;
    padding: 17px;
  }
  .editorial-tile h2,.editorial-tile h3,.editorial-tile-heading {
    font-size: 20px;
  }
  .editorial-number {
    width: 36px;
    height: 36px;
  }
  .cookie-banner {
    width: calc(100vw - 24px);
  }
}
/* Process illustrations: broad on desktop, readable vertical steps on phones. */
.guide-visuals {
  background: #f7fbf8;
  gap: clamp(12px,2vw,24px);
}
.guide-visuals figure {
  border: 1px solid #dce8df;
  background: #fff;
  border-radius: 17px;
  padding: clamp(10px,1.5vw,19px);
  overflow: hidden;
}
.guide-visuals picture {
  display: block;
  width: 100%;
  min-width: 0;
}
.guide-visuals img {
  border-radius: 12px;
  max-width: 100%;
}
.guide-visuals figcaption {
  line-height: 1.5;
  font-size: .84rem;
  margin-top: 10px;
}
@media(max-width:760px) {
  .guide-visuals {
    padding: 16px var(--gutter);
    gap: 12px;
  }
  .guide-visuals figure {
    padding: 12px;
    border-radius: 15px;
  }
  .guide-visuals img {
    aspect-ratio: 400/370;
    object-fit: contain;
  }
  .guide-visuals figcaption {
    margin-top: 6px;
  }
}
/* v2.0: Responsive, text-based referral instructions, not fixed SVG diagrams. */
.guide-visuals {
  grid-template-columns: repeat(2,minmax(0,1fr));
  align-items: stretch;
}
.guide-visuals .visual-panel {
  margin: 0;
  min-width: 0;
  border: 1px solid #dce8df;
  background: #fff;
  border-radius: 17px;
  padding: clamp(18px,2vw,28px);
}
.visual-panel .visual-heading {
  font-size: 1.06rem;
  font-weight: 800;
  color: #173625;
  margin: 0 0 21px;
}
.visual-steps {
  list-style: none;
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: clamp(10px,1.5vw,18px);
  margin: 0;
  padding: 0;
}
.visual-steps li {
  display: flex;
  flex-direction: column;
  gap: 14px;
  min-width: 0;
  background: #edf7ef;
  border: 1px solid #cee5d1;
  border-radius: 13px;
  padding: clamp(16px,1.6vw,24px);
  color: #173d25;
  font-size: .9rem;
  font-weight: 700;
  overflow-wrap: anywhere;
}
.visual-steps .visual-step-number {
  display: grid;
  place-items: center;
  width: 29px;
  height: 29px;
  border-radius: 50%;
  background: #267c3a;
  color: #fff;
  font-size: .79rem;
  font-weight: 800;
}
.visual-panel .visual-caption {
  font-size: .85rem;
  line-height: 1.6;
  color: #49634f;
  margin: 20px 0 0;
}
@media(max-width:1050px) {
  .guide-visuals {
    grid-template-columns: 1fr;
  }
}
@media(max-width:650px) {
  .visual-steps {
    grid-template-columns: 1fr;
    gap: 8px;
  }
  .visual-steps li {
    flex-direction: row;
    align-items: center;
    gap: 13px;
    padding: 15px;
  }
  .visual-steps .visual-step-number {
    flex: 0 0 29px;
  }
  .guide-visuals .visual-panel {
    padding: 16px;
  }
}
/* FAQ country cards: clearer spacing and 3-up row on desktop */
.faq-list + .country-list.compact {
  margin-top: 18px;
  margin-bottom: 24px;
}
.country-list.compact>.country-list {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 12px;
  align-items: stretch;
}
.country-list.compact .country-card {
  min-height: 82px;
}
.country-list.compact + .guide-visuals {
  margin-top: 10px;
}
@media(max-width:760px) {
  .faq-list + .country-list.compact {
    margin-top: 14px;
    margin-bottom: 18px;
  }
  .country-list.compact>.country-list {
    grid-template-columns: 1fr;
    gap: 10px;
  }
}
/* Reusable editorial images: three real img elements per public page */
.editorial-images {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: clamp(12px,1.5vw,22px);
  padding: clamp(20px,3vw,38px) var(--gutter);
  background: #f6faf7;
  align-items: stretch;
}
.editorial-images figure {
  min-width: 0;
  margin: 0;
  border: 1px solid #d9e6dc;
  border-radius: 16px;
  overflow: hidden;
  background: white;
}
.editorial-images figcaption {
  padding: 12px 15px;
  font-size: .88rem;
  font-weight: 700;
  color: #244a30;
}
.author-credit {
  margin: 20px var(--gutter);
  font-size: .85rem;
  line-height: 1.6;
  color: #3c5946;
}
.author-credit a {
  color: #126f31;
  text-underline-offset: 3px;
}
@media(max-width:760px) {
  .editorial-images figure {
    grid-template-columns: minmax(0,44%) minmax(0,1fr);
    align-items: center;
  }
  .author-credit {
    margin: 18px var(--gutter);
  }
}
@media(max-width:420px) {
  .editorial-images figure {
    grid-template-columns: minmax(0,1fr);
  }
  .editorial-images img {
    aspect-ratio: 16/9;
    height: auto;
  }
}
/* v2.11: Unified typography across desktop and mobile */
:root {
  --type-body: clamp(15px,.22vw + 14.5px,17px);
  --type-small: clamp(12.5px,.14vw + 12px,14px);
  --type-leading: 1.65;
  --type-heading-leading: 1.16;
}
html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}
body {
  font-size: var(--type-body);
  font-kerning: normal;
  font-optical-sizing: auto;
  text-rendering: optimizeLegibility;
}
p,li,details,summary {
  line-height: var(--type-leading);
}
h1,h2,h3,.section-title,.reading-heading,.reading-heading-minor {
  line-height: var(--type-heading-leading);
  letter-spacing: -.032em;
  text-wrap: balance;
}
h1 {
  letter-spacing: -.043em;
}
.site-header nav a,.language {
  line-height: 1.4;
  letter-spacing: 0;
}
.hero-dark h1 {
  line-height: 1.1;
  letter-spacing: -.044em;
}
.hero-lead,.article-lead {
  line-height: 1.63;
  letter-spacing: -.009em;
}
.section-head p,.article-copy p,.article-copy li,.reading-extension p {
  line-height: 1.72;
  letter-spacing: -.006em;
}
.article-copy p,.article-copy li {
  font-size: var(--type-body);
}
.article-copy h2,.article-copy h3,.reading-heading,.reading-heading-minor {
  letter-spacing: -.027em;
}
.section-title {
  letter-spacing: -.035em;
}
.faq-list summary {
  font-size: clamp(15px,.14vw + 14.5px,16px);
  line-height: 1.5;
  letter-spacing: -.006em;
}
.faq-list details p {
  font-size: var(--type-body);
  line-height: 1.68;
}
.country-details strong {
  letter-spacing: -.012em;
  line-height: 1.35;
}
.country-details small {
  line-height: 1.48;
  letter-spacing: 0;
}
.visual-panel .visual-heading {
  letter-spacing: -.018em;
  line-height: 1.36;
}
.visual-steps li {
  line-height: 1.54;
  letter-spacing: -.006em;
}
.editorial-images figcaption {
  line-height: 1.5;
  letter-spacing: -.005em;
}
.author-credit,.source-note,.visual-panel .visual-caption {
  line-height: 1.65;
}
button,input,select,textarea {
  font-family: inherit;
  letter-spacing: -.005em;
}
@media(max-width:760px) {
  :root {
    --type-body: 15px;
    --type-leading: 1.62;
  }
  h1,h2,h3,.section-title {
    line-height: 1.19;
  }
  .hero-dark h1 {
    line-height: 1.13;
    letter-spacing: -.038em;
  }
  .article-copy p,.reading-extension p {
    line-height: 1.68;
  }
  .faq-list summary {
    font-size: 15px;
  }
}
/* v2.13: themenbezogene weiterfuehrende Portallinks */
.portal-related {
  margin: 28px 0 34px;
  padding: clamp(17px,2vw,26px);
  background: #f4faf5;
  border: 1px solid #dce9df;
  border-radius: 17px;
}
.portal-related__heading {
  margin: 0 0 12px;
  font-weight: 800;
  font-size: clamp(17px,1.35vw,20px);
  line-height: 1.3;
  color: #143322;
  letter-spacing: -.02em;
}
.portal-related__grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 12px;
}
.portal-related__link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-width: 0;
  padding: 14px 16px;
  border: 1px solid #d6e5d9;
  border-radius: 12px;
  background: #fff;
  color: #17502a;
  text-decoration: none;
  font-size: clamp(14px,.3vw + 13px,16px);
  font-weight: 750;
  line-height: 1.45;
  overflow-wrap: anywhere;
}
.portal-related__link:hover,.portal-related__link:focus-visible {
  border-color: #35974e;
  background: #fafffa;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.portal-related__link::after {
  content: '↗';
  flex: none;
  font-size: 1.2em;
}
@media(max-width:680px) {
  .portal-related {
    margin: 22px 0 28px;
    padding: 15px;
  }
  .portal-related__grid {
    grid-template-columns: minmax(0,1fr);
    gap: 9px;
  }
  .portal-related__link {
    padding: 13px 14px;
  }
}
/* v2.15 mobile images: preserve whole image and avoid horizontal overflow */
.editorial-images {
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}
.editorial-images figure,.editorial-images .editorial-image-link {
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}
.editorial-images .editorial-image-link {
  display: block;
  overflow: hidden;
}
.editorial-images img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  aspect-ratio: auto;
  object-fit: contain;
}
@media(max-width:760px) {
  .editorial-images {
    grid-template-columns: minmax(0,1fr);
    padding: 16px var(--gutter);
    gap: 14px;
  }
  .editorial-images figure {
    display: block;
    width: 100%;
    overflow: hidden;
  }
  .editorial-images .editorial-image-link {
    width: 100%;
  }
  .editorial-images img {
    width: 100%;
    height: auto;
    aspect-ratio: auto;
    min-height: 0;
    object-fit: contain;
  }
  .editorial-images figcaption {
    padding: 12px 14px;
  }
}
/* x25express visual parity rebuild 2026-10-26.
   BASE IS THE UNMODIFIED /assets/x25money-original.css FROM USER SUPPLIED ARCHIVE.
   This adapter maps unchanged x25express page content/booking controls to the same visual system. */
:root {
  --bg: #edf3ee !important;
  --paper: #fff !important;
  --paper-2: #fafdfa !important;
  --ink: #102719 !important;
  --ink-soft: #355241 !important;
  --muted: #587064 !important;
  --line: #dbe8dd !important;
  --line-strong: #d2e0d5 !important;
  --mint: #e8f5e9 !important;
  --mint-2: #f3f8f4 !important;
  --acid: #55dd3d !important;
  --dark: #0b2618 !important;
  --dark-2: #102e1d !important;
  --section-y: clamp(32px,4vw,68px) !important;
  --max: 100% !important;
  --gutter: clamp(16px,2.5vw,48px) !important;
  --shadow: 0 14px 36px rgba(7,25,24,.075) !important;
}
html {
  scrollbar-gutter: auto;
  scroll-padding-top: 86px;
  max-width: 100%;
  overflow-x: clip;
}
body {
  background: #edf3ee !important;
  font-family: Inter,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif !important;
  color: #102719 !important;
  letter-spacing: -.008em;
  line-height: 1.65;
}
a {
  text-underline-offset: 3px;
}
a:hover {
  color: #166d2a;
}
p,li {
  line-height: 1.65;
}
h1,h2,h3,h4 {
  color: #11291b;
  letter-spacing: -.045em;
}
/* The x25money site header is used directly; utility menu retained for all-page access. */
.site-header {
  width: 100%;
  min-height: 70px;
  background: #fff !important;
  padding: 15px var(--gutter);
  box-shadow: 0 4px 18px rgba(9,37,19,.07);
  border-bottom: 1px solid #dfe7df;
  display: flex;
  gap: 22px;
  align-items: center;
  justify-content: space-between;
  position: sticky;
  top: 0;
  z-index: 110;
}
.site-header .wordmark {
  font-size: 24px !important;
}
.site-header .wordmark img {
  max-width: none;
  width: clamp(190px,19vw,244px);
  height: auto;
  aspect-ratio: 320/62;
}
.site-header nav {
  gap: clamp(12px,2vw,32px);
}
.site-header nav a {
  color: #355241;
  font-weight: 750;
  font-size: .89rem;
  text-decoration: none;
}
.site-header nav a:hover {
  color: #168533;
}
.site-header .language {
  border: 1px solid #dbe8dd;
  border-radius: 10px;
  color: #355241;
  background: #fff;
  text-decoration: none;
  font-size: .89rem;
  font-weight: 750;
  min-width: 43px;
  text-align: center;
  padding: 8px 10px;
}
.site-header-actions {
  display: flex;
  align-items: center;
  gap: 9px;
}
.site-header .burger {
  background: #fff;
  border: 1px solid #dbe8dd;
  color: #355241;
  width: 38px;
  min-width: 38px;
  height: 38px;
  min-height: 38px;
  border-radius: 10px;
  display: flex;
  gap: 4px;
}
.site-header .burger:hover {
  background: #f1f6f2;
  border-color: #80c38a;
}
.site-header .burger span {
  background: currentColor;
}
/* Make the slide-over navigation visually identical to x25money's dark green panels. */
.menu {
  background: linear-gradient(143deg,#102e1d 5%,#071c12 100%);
  color: #fff;
}
.menu .close {
  border-radius: 12px;
}
.menu .menu-brandmark img {
  content: url('/assets/logo-x25express-new-light.svg');
  width: 215px;
  height: auto;
  max-width: 100%;
  object-fit: contain;
}
/* Original hero component structure taken from x25money.com/de/index.html. */
body .landing {
  padding: clamp(12px,2.4vw,42px);
  padding-bottom: 24px;
  background: #edf3ee !important;
  max-width: none;
  margin: 0;
  width: 100%;
}
body .landing .hero-layout {
  grid-template-columns: minmax(0,1.03fr) minmax(0,.97fr) !important;
  min-height: min(745px,calc(100svh - 110px));
  max-width: none;
  overflow: hidden;
  border: 1px solid #d3e2d5;
  border-radius: 26px;
  box-shadow: 0 24px 75px #0d271721;
}
body .landing .hero-dark {
  padding: clamp(28px,4.5vw,78px);
  background: radial-gradient(circle at 85% 12%,#3c985739,transparent 42%),linear-gradient(143deg,#102e1d 5%,#071c12 100%);
  color: #fff !important;
}
body .landing .hero-brand img {
  width: clamp(162px,16vw,232px);
  height: auto;
  display: block;
  max-width: none;
  aspect-ratio: 320/62;
}
body .landing .hero-body {
  margin-top: clamp(50px,5.2vw,87px);
}
body .landing .kicker {
  color: #b2ebbc;
}
body .landing .hero-dark h1 {
  font-size: clamp(31px,3.1vw,55px) !important;
  line-height: 1.09 !important;
  letter-spacing: -.06em;
  color: #fff !important;
  max-width: none;
}
body .landing .hero-dark h1 em {
  color: #72eb5f !important;
  font-style: normal;
}
body .landing .hero-lead {
  color: #cbdfd1 !important;
}
body .landing .hero-light {
  background: linear-gradient(150deg,#fff,#fafdfa);
  padding: clamp(28px,5vw,82px);
  min-width: 0;
}
body .landing .panel-title {
  font-size: clamp(26px,2.5vw,38px);
  color: #132d1c;
  letter-spacing: -.045em;
  line-height: 1.12;
  font-weight: 850;
  margin: 0;
}
body .landing .panel-desc {
  color: #526a5a !important;
}
body .landing .country-card {
  display: flex;
  align-items: center;
  gap: 13px;
  background: #fff;
  border: 1px solid #d2e0d5;
  border-radius: 14px;
  text-decoration: none;
  min-height: 77px;
  padding: 13px 14px;
  color: #102719 !important;
}
body .landing .country-card:hover {
  border-color: #4bc53b;
  box-shadow: 0 8px 24px #285c2c18;
  transform: translateY(-1px);
}
.hero-shortcuts {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: auto;
  padding-top: 24px;
}
.hero-shortcuts a {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #547960;
  color: #ecf9ed !important;
  padding: 9px 15px;
  border-radius: 10px;
  font-weight: 800;
  text-decoration: none;
  font-size: .85rem;
}
.hero-shortcuts a:hover {
  border-color: #72eb5f;
  background: #18472a;
}
.x25-instruction-note {
  font-size: .78rem;
  color: #52715d;
  margin-top: 15px;
  line-height: 1.5;
}
/* Content sections: x25money editorial page rhythm: white/tinted full-width sections, green cards. */
main.express-language-home,main.express-subpage,main.inner-main,main.language-entry {
  background: #fff !important;
  width: 100% !important;
  max-width: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: block !important;
  min-height: 0 !important;
}
main.express-language-home>.landing,main.language-entry>.landing {
  background: #edf3ee !important;
}
main.express-language-home>section:not(.landing),main.express-subpage>section,main.inner-main>section,main.language-entry>section:not(.landing) {
  margin: 0 !important;
  padding: clamp(32px,4vw,68px) var(--gutter) !important;
  max-width: none !important;
  border-radius: 0 !important;
  border-left: 0 !important;
  border-right: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  background: #fff !important;
}
main.express-language-home>section:nth-of-type(even),main.express-subpage>section:nth-of-type(even),main.inner-main>section:nth-of-type(even),main.language-entry>section:nth-of-type(even) {
  background: #f3f8f4 !important;
}
.express-section .section-grid {
  display: grid;
  grid-template-columns: 1fr !important;
  gap: 14px !important;
  width: 100%;
  max-width: none !important;
  margin: 0 !important;
  align-items: start;
}
.express-section .section-grid>div {
  min-width: 0;
}
.num,.eyebrow,.form-kicker {
  color: #25833d !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  font-weight: 850 !important;
  font-size: .76rem !important;
  line-height: 1.4 !important;
  letter-spacing: .10em !important;
  text-transform: uppercase !important;
  padding: 0 !important;
  width: auto !important;
  border-radius: 0 !important;
}
.section-title,section h2,section h3 {
  font-family: Inter,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  letter-spacing: -.035em !important;
  color: #11291b;
}
.section-title {
  font-size: clamp(26px,3vw,43px) !important;
  font-weight: 850 !important;
  line-height: 1.18 !important;
  margin: 10px 0 16px !important;
}
.express-reading,.reading,.overview-copy,.overview-editorial {
  max-width: none !important;
  width: 100% !important;
  background: transparent !important;
  color: #384e3d !important;
}
.reading p,.overview-copy p,.express-reading p {
  color: #384e3d !important;
  line-height: 1.72 !important;
}
.express-reading .overview-copy.overview-editorial-copy>p {
  border-top: 1px solid #dce9df !important;
  padding-top: 12px;
}
.express-reading .overview-copy.overview-editorial-copy>.overview-lead {
  font-size: clamp(16px,1.4vw,20px) !important;
  color: #47634f !important;
  border-bottom: 1px solid #dce9df !important;
}
.overview-rail.overview-action-panel {
  background: #f3f8f4 !important;
  border: 1px solid #d9e8dc !important;
  color: #102719 !important;
  box-shadow: none !important;
  border-radius: 17px;
  padding: 21px;
}
.overview-rail * {
  color: #264532 !important;
}
.overview-mini {
  border-color: #d9e8dc !important;
}
.overview-mini-num,.step-count {
  background: #0c2a19 !important;
  color: #7be96a !important;
  border-radius: 11px !important;
}
.overview-market-row a {
  background: #e8f5e9 !important;
  color: #246932 !important;
  border: 1px solid #cce5d1 !important;
  border-radius: 10px;
}
.overview-market-row a:hover {
  border-color: #4bc53b !important;
}
/* Three-column grids apply only to multi-card content; bilingual root cards use both columns. */
.express-card-grid,.market-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr)) !important;
  gap: 14px !important;
  max-width: none !important;
  align-items: stretch;
}
.benefit-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  gap: 18px !important;
  max-width: none !important;
  align-items: stretch;
}
.root-language-grid,.root-context-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  gap: 14px !important;
  width: 100%;
  max-width: none !important;
  align-items: stretch;
}
.express-card-grid>.express-card,.express-market-card,.express-booking-card,.market,.benefit,.root-language-card,.root-context-card,.express-related-card,.express-usecase-card {
  background: #f5f9f6 !important;
  border: 1px solid #e1ebe2 !important;
  border-radius: 17px !important;
  box-shadow: none !important;
  padding: 22px !important;
  min-width: 0;
}
.market a,.express-booking-card,.express-card a,.benefit a {
  color: #184c2b !important;
  text-decoration: none;
}
.market:hover,.express-market-card:hover,.benefit:hover,.express-card:hover {
  border-color: #60c755 !important;
  background: #f0faee !important;
}
.market-primary,.express-market-card {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 14px;
  width: 100%;
  height: 100%;
}
.market .code,.express-card .k,.country-card-top .k,.benefit .n,.overview-mini-num {
  display: inline-grid;
  place-items: center;
  background: #e8f5e9 !important;
  color: #286a35 !important;
  border-radius: 11px !important;
  font-weight: 850 !important;
  min-height: 37px;
  min-width: 37px;
  padding: 8px !important;
}
.market-cta,.card-cta,.cta,.regional-pull-cta,.home-final .cta,.root-language-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  min-height: 44px;
  padding: 11px 16px !important;
  border-radius: 12px !important;
  background: #55dd3d !important;
  color: #102719 !important;
  font-weight: 850 !important;
  text-decoration: none !important;
  border: 1px solid #55dd3d !important;
  box-shadow: none !important;
}
.market-cta:hover,.card-cta:hover,.cta:hover,.regional-pull-cta:hover {
  background: #72eb5f !important;
  color: #102719 !important;
}
.regional-pull-card,.home-final-box {
  display: grid;
  grid-template-columns: minmax(0,1.4fr) minmax(0,.6fr);
  gap: 24px;
  align-items: center;
  border: 1px solid #d9e8dc !important;
  background: #f3f8f4 !important;
  color: #102719 !important;
  border-radius: 17px !important;
  padding: clamp(20px,3vw,38px) !important;
  box-shadow: none !important;
}
.regional-pull-points>div {
  border-bottom: 1px solid #d9e8dc;
  padding: 10px 0;
}
.regional-pull-points strong {
  color: #286a35;
}
.express-visual-band {
  padding-top: 0 !important;
}
.express-visual-feature {
  border-radius: 17px !important;
  border: 1px solid #d9e8dc !important;
  background: #fff !important;
  box-shadow: none !important;
}
.express-visual-feature img {
  border-radius: 12px !important;
}
.cargo-image-card {
  border-radius: 16px !important;
  background: #fff !important;
  border: 1px solid #d9e8dc;
  overflow: hidden;
}
.faq details,.faq-list details {
  border: 1px solid #dfe9e0 !important;
  background: #fbfdfb !important;
  border-radius: 13px !important;
  margin-bottom: 11px;
  padding: 17px 20px !important;
  color: #102719 !important;
}
.faq summary {
  color: #102719 !important;
}
/* subpage headings have the same bright article presentation as x25money guide pages. */
.x25-inner-hero {
  margin: 0 !important;
  padding: clamp(27px,4.5vw,65px) var(--gutter) 30px !important;
  background: #fff !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: #102719 !important;
}
.x25-inner-hero::before,.x25-inner-hero::after {
  display: none !important;
}
.x25-inner-hero h1 {
  font-size: clamp(30px,3.4vw,51px) !important;
  line-height: 1.12 !important;
  font-weight: 850 !important;
  color: #11291b !important;
  margin: 10px 0 14px !important;
  max-width: 100%;
}
.x25-inner-hero .lead {
  font-size: clamp(16px,1.4vw,20px) !important;
  color: #47634f !important;
  line-height: 1.65 !important;
  max-width: 880px;
}
.x25-inner-hero .chips {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 22px;
}
.x25-inner-hero .chip {
  padding: 13px 16px !important;
  background: #f3f8f4 !important;
  border: 1px solid #d4e5d7 !important;
  border-radius: 12px !important;
  color: #265537 !important;
  font-weight: 750 !important;
}
.x25-breadcrumbs {
  display: flex;
  gap: 9px;
  align-items: center;
  flex-wrap: wrap;
  font-size: .84rem;
  color: #50705b;
  margin: 0 0 25px;
}
.x25-breadcrumbs a {
  color: #1a7a34;
  text-decoration: underline;
  font-weight: 700;
}
/* Dark green footer is the identical x25money family background. */
footer.footer {
  background: #0b2417 !important;
  color: #c4d7c8 !important;
  padding: 35px var(--gutter) 44px !important;
  display: block !important;
  box-shadow: none !important;
  border: 0 !important;
}
footer.footer .x25-footer-identity {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  border-bottom: 1px solid #345340;
  padding-bottom: 24px;
  margin-bottom: 22px;
}
footer.footer .x25-footer-identity img {
  width: 180px;
  height: auto;
  max-width: 100%;
}
footer.footer .x25-footer-identity span {
  font-size: .82rem;
  color: #c4d7c8;
}
footer.footer .seo-footer-grid {
  display: grid !important;
  grid-template-columns: repeat(4,minmax(0,1fr)) !important;
  gap: 30px !important;
  background: transparent !important;
}
footer.footer .seo-footer-grid>div {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
footer.footer .seo-footer-grid strong {
  color: #fff !important;
  font-size: .91rem;
}
footer.footer a,footer.footer .seo-footer-grid a {
  color: #deecde !important;
  font-size: .80rem;
  font-weight: 700;
  text-decoration: none;
}
footer.footer a:hover {
  text-decoration: underline;
  color: #72eb5f !important;
}
footer.footer .seo-author-attribution {
  border-top: 1px solid #345340;
  margin-top: 24px !important;
  padding-top: 20px !important;
  color: #c4d7c8 !important;
}
/* Retain the existing pop-out booking control but make it green on green family. */
.quick-apply-picker summary,.quick-apply-picker>summary {
  background: #0b2618 !important;
  color: #fff !important;
  border: 1px solid #55dd3d !important;
  box-shadow: 0 10px 28px rgba(10,37,22,.2) !important;
}
.quick-apply-picker[open] {
  background: #fff !important;
  border-radius: 16px !important;
}
/* Root language choice uses x25money.com/index.html root-choice look */
/* Main navigation is visible on the bilingual root page as well. */
body[data-page="root"] main.language-entry {
  background: #fff !important;
}
body[data-page="root"] .x25-root-choice {
  min-height: 100svh;
  background: radial-gradient(circle at 12% 15%,#1c5730,transparent 44%),#0a2416;
  color: #fff;
  padding: 28px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}
body[data-page="root"] .x25-root-choice h1 {
  font-size: clamp(42px,6vw,74px) !important;
  color: #fff !important;
  margin: 12px 0 !important;
}
body[data-page="root"] .x25-root-choice h1 span {
  color: #72eb5f;
}
body[data-page="root"] .x25-root-choice p {
  color: #d1e3d5;
}
body[data-page="root"] .root-actions a {
  background: #55dd3d;
  color: #102715;
  padding: 16px 27px;
  text-decoration: none;
  font-weight: 800;
  border-radius: 12px;
}
/* Mobile exactly follows money stacking and spacing. */
@media(max-width:1080px) {
  body .landing .hero-layout {
    grid-template-columns: minmax(0,.95fr) minmax(0,1.05fr) !important;
  }
}
@media(max-width:760px) {
  .site-header {
    padding: 12px 16px !important;
    gap: 10px;
  }
  .site-header nav {
    gap: 12px;
  }
  .site-header nav a {
    font-size: .78rem !important;
  }
  .site-header-actions {
    margin-left: auto;
  }
  .site-header .language {
    font-size: .78rem !important;
    padding: 7px 9px !important;
  }
  .site-header .burger {
    width: 36px;
    min-width: 36px;
    height: 36px;
    min-height: 36px;
  }
  body .landing {
    padding: 10px !important;
  }
  body .landing .hero-layout {
    grid-template-columns: minmax(0,1fr) !important;
    min-height: 0 !important;
    border-radius: 20px !important;
  }
  body .landing .hero-dark {
    padding: 24px 25px 23px !important;
  }
  body .landing .hero-brand img {
    width: 178px;
  }
  body .landing .hero-body {
    margin-top: 20px !important;
  }
  body .landing .hero-dark h1 {
    font-size: clamp(25px,5.2vw,33px) !important;
  }
  body .landing .hero-lead {
    font-size: 14px !important;
    line-height: 1.55 !important;
    margin: 14px 0 0 !important;
  }
  body .landing .hero-reward {
    margin-top: 18px;
    padding: 12px 14px;
    gap: 10px;
  }
  body .landing .hero-light {
    padding: 25px 25px 29px !important;
  }
  body .landing .panel-title {
    font-size: 26px;
  }
  body .landing .panel-desc {
    font-size: 14px !important;
    line-height: 1.55 !important;
    margin: 9px 0 19px !important;
  }
  body .landing .country-card {
    padding: 10px 12px;
    min-height: 67px;
  }
  main.express-language-home>section:not(.landing),main.express-subpage>section,main.inner-main>section,main.language-entry>section:not(.landing) {
    padding: 32px 18px !important;
  }
  .express-card-grid,.market-grid,.benefit-grid {
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  }
  .root-language-grid,.root-context-grid {
    grid-template-columns: 1fr !important;
  }
  .regional-pull-card,.home-final-box {
    grid-template-columns: 1fr;
  }
}
@media(max-width:480px) {
  .site-header {
    padding: 12px 16px !important;
    gap: 8px !important;
  }
  .site-header .wordmark img {
    width: 174px;
  }
  .site-header nav {
    order: 3;
    width: 100%;
    justify-content: space-between;
    gap: 7px;
  }
  .site-header nav a {
    font-size: .75rem !important;
  }
  body .landing {
    padding: 7px !important;
  }
  body .landing .hero-layout {
    border-radius: 16px !important;
  }
  body .landing .hero-dark {
    padding: 21px 20px 20px !important;
  }
  body .landing .hero-body {
    margin-top: 17px !important;
  }
  body .landing .hero-dark h1 {
    font-size: clamp(24px,6.3vw,29px) !important;
  }
  body .landing .hero-lead {
    font-size: 13px !important;
    margin-top: 11px !important;
  }
  body .landing .hero-reward {
    margin-top: 15px;
    padding: 11px 12px;
  }
  body .landing .hero-light {
    padding: 23px 20px 25px !important;
  }
  body .landing .panel-title {
    font-size: 25px;
  }
  body .landing .entry-trust {
    display: grid;
    grid-template-columns: 1fr;
    gap: 7px;
  }
  .express-card-grid,.market-grid,.benefit-grid {
    grid-template-columns: 1fr !important;
  }
  footer.footer .seo-footer-grid {
    grid-template-columns: 1fr !important;
  }
  .hero-shortcuts {
    padding-top: 18px;
  }
  .hero-shortcuts a {
    font-size: .75rem;
    padding: 8px 12px;
  }
}
@media(prefers-reduced-motion:reduce) {
  .country-card {
    animation: none !important;
    transition: none !important;
  }
}
/* Root language selector: same dark full-page background as the actual x25money root. */
body[data-page="root"] main.language-entry>.x25-root-choice {
  min-height: 100svh !important;
  background: radial-gradient(circle at 12% 15%,#1c5730,transparent 44%),#0a2416 !important;
  color: #fff !important;
  padding: 28px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: center !important;
  text-align: center !important;
}
body[data-page="root"] main.language-entry>.x25-root-choice h1 {
  color: #fff !important;
  font-weight: 850 !important;
  letter-spacing: -.06em !important;
}
body[data-page="root"] main.language-entry>.x25-root-choice h1 span {
  color: #72eb5f !important;
}
body[data-page="root"] main.language-entry>.x25-root-choice p {
  color: #d1e3d5 !important;
}
body[data-page="root"] main.language-entry>.x25-root-choice a {
  color: #102715 !important;
}
/* 2026-10-26: actual logo ratio, semantic dropdown and consistent benefit-card alignment. */
.site-header .wordmark {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  min-width: 0;
}
.site-header .wordmark img {
  display: block;
  max-height: 52px;
  object-fit: contain;
}
.site-header nav {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
}
.site-header .x25-cases-dropdown {
  position: relative;
  flex: 0 0 auto;
}
.x25-cases-dropdown summary {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  list-style: none;
  cursor: pointer;
  color: #355241;
  font-weight: 750;
  font-size: .89rem;
  white-space: nowrap;
}
.x25-cases-dropdown summary::-webkit-details-marker {
  display: none;
}
.x25-cases-dropdown summary::after {
  content: '';
  width: 7px;
  height: 7px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: translateY(-2px) rotate(45deg);
}
.x25-cases-dropdown[open] summary::after {
  transform: translateY(2px) rotate(225deg);
}
.x25-cases-dropdown summary:hover,.x25-cases-dropdown summary:focus-visible {
  color: #168533;
}
.x25-cases-dropdown summary:focus-visible {
  outline: 2px solid #2ca63c;
  outline-offset: 7px;
  border-radius: 5px;
}
.x25-cases-popover {
  position: absolute;
  top: calc(100% + 19px);
  left: 50%;
  transform: translateX(-50%);
  z-index: 160;
  display: grid;
  grid-template-columns: repeat(2,minmax(215px,1fr));
  column-gap: 15px;
  row-gap: 2px;
  width: min(540px,calc(100vw - 32px));
  padding: 14px;
  background: #fff;
  border: 1px solid #dce8dd;
  border-radius: 16px;
  box-shadow: 0 22px 46px rgba(9,37,19,.17);
}
.x25-cases-popover a {
  display: block;
  max-width: none;
  white-space: normal;
  line-height: 1.32;
  font-size: 13px !important;
  font-weight: 680 !important;
  padding: 13px 10px;
  border-radius: 9px;
  color: #173e28;
  text-decoration: none;
}
.x25-cases-popover a:hover,.x25-cases-popover a:focus-visible {
  background: #edf8ef;
  color: #11682c;
}
.benefit-grid .benefit {
  display: flex;
  flex-direction: column;
  min-width: 0;
  align-items: flex-start;
  justify-content: flex-start;
  height: 100%;
}
.benefit-grid .benefit .minor-heading {
  width: 100%;
  min-height: 2.6em;
  display: block;
  margin: 12px 0 8px !important;
}
.benefit-grid .benefit p {
  width: 100%;
  max-width: none;
  margin: 0 !important;
  line-height: 1.57 !important;
  align-self: stretch;
}
.x25-footer-cookie-row {
  margin-top: 20px;
  padding-top: 15px;
  border-top: 1px solid rgba(255,255,255,.17);
}
.x25-footer-cookie-settings {
  background: transparent;
  border: 1px solid rgba(255,255,255,.25);
  color: inherit;
  font: inherit;
  font-size: 13px;
  padding: 9px 13px;
  border-radius: 10px;
  cursor: pointer;
}
.x25-footer-cookie-settings:hover,.x25-footer-cookie-settings:focus-visible {
  border-color: #72eb5f;
  color: #72eb5f;
}
@media(max-width:1080px) {
  .site-header>nav {
    display: none !important;
  }
  .site-header .wordmark img {
    width: clamp(180px,27vw,224px);
  }
}
@media(max-width:760px) {
  .site-header .site-header-actions {
    display: flex;
    align-items: center;
    gap: 8px;
  }
  .menu .menu-brandmark img {
    width: 200px;
  }
  .benefit-grid {
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  }
}
@media(max-width:540px) {
  .site-header .wordmark img {
    width: clamp(148px,41vw,185px);
  }
  .benefit-grid {
    grid-template-columns: 1fr !important;
  }
  .benefit-grid .benefit .minor-heading {
    min-height: 0;
  }
  .menu .menu-brandmark img {
    width: 170px;
  }
}
/* x25express: typography, spacing and balanced editorial reading (2026-10-26)
   Separate, reversible patch. Booking links, the original x25money CSS and favicons remain untouched. */
:root {
  --x25-reading-max: 1180px;
  --x25-space-1: 12px;
  --x25-space-2: 20px;
  --x25-space-3: 32px;
  --x25-space-4: clamp(42px,5vw,80px);
}
/* Prevent walls of text, and preserve equal left and right outer gutters. */
main.express-language-home>section:not(.landing),
main.express-subpage>section:not(.x25-inner-hero),
main.inner-main>section:not(.x25-inner-hero),
main.language-entry>section:not(.landing) {
  padding: var(--x25-space-4) clamp(18px,3.5vw,56px) !important;
}
main.express-language-home>section>.section-grid,
main.express-subpage>section>.section-grid,
main.inner-main>section>.section-grid,
main.express-language-home>section>.home-section-head,
main.express-language-home>section>.market-grid,
main.express-language-home>section>.benefit-grid,
main.express-language-home>section>.regional-pull-card,
main.express-language-home>section>.home-final-box,
main.express-subpage>section>.regional-pull-card,
main.express-subpage>section>.home-final-box,
main.inner-main>section>.regional-pull-card,
main.inner-main>section>.home-final-box {
  width: 100%;
  max-width: var(--x25-content-max) !important;
  margin-inline: auto !important;
}
/* Number/eyebrow gets its own left rail on desktop; right text starts at a shared x-position. */
@media (min-width:981px) {
  .express-section .section-grid:not(.x25-no-num) {
    display: grid !important;
    grid-template-columns: minmax(122px, .19fr) minmax(0, 1.81fr) !important;
    column-gap: clamp(26px,3.8vw,64px) !important;
    row-gap: 18px !important;
    align-items: start;
  }
  .express-section .section-grid>.num {
    margin-top: 11px !important;
  }
}
@media (max-width:980px) {
  .express-section .section-grid {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
    gap: 14px !important;
  }
}
/* Pair editorial paragraphs with matched padding. A full-width lead and conclusion frame the pair. */
@media (min-width:1050px) {
  .express-reading .overview-copy.overview-editorial-copy {
    display: grid !important;
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    column-gap: clamp(24px,3.2vw,46px) !important;
    row-gap: 16px !important;
    max-width: 100% !important;
    align-items: stretch;
  }
  .express-reading .overview-copy.overview-editorial-copy>p:not(.overview-lead):not(.seo-intent-context) {
    display: block;
    margin: 0 !important;
    padding: 18px 0 19px !important;
    border-top: 1px solid #dbe8dd !important;
    line-height: 1.72 !important;
    overflow-wrap: break-word;
    max-width: none;
  }
  .express-reading .overview-copy.overview-editorial-copy>.overview-lead,
  .express-reading .overview-copy.overview-editorial-copy>.seo-intent-context {
    grid-column: 1/-1;
  }
}
@media (max-width:1049px) {
  .express-reading .overview-copy.overview-editorial-copy {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
    gap: 0 !important;
  }
  .express-reading .overview-copy.overview-editorial-copy>p:not(.overview-lead):not(.seo-intent-context) {
    padding: 14px 0 17px !important;
    line-height: 1.7 !important;
  }
}
/* Clear spacing between titles, text, cards and FAQ entries – never justified text. */
main :is(.express-reading,.reading,.overview-copy,.regional-pull-card) p {
  text-align: left;
  hyphens: auto;
  overflow-wrap: break-word;
}
main .section-title {
  margin-top: 6px !important;
  margin-bottom: clamp(20px,2.4vw,31px) !important;
  line-height: 1.22 !important;
  text-wrap: balance;
}
main .express-reading>.section-title {
  margin-bottom: 24px !important;
}
main .express-section .section-title + :is(.express-card-grid,.express-related-grid,.market-grid,.benefit-grid,.faq,.faq-list,.express-network-list) {
  margin-top: 22px !important;
}
main .express-reading .overview-copy.overview-editorial-copy>.overview-lead {
  margin-bottom: 9px !important;
  padding-bottom: 24px !important;
  line-height: 1.58 !important;
}
main .express-reading .overview-copy.overview-editorial-copy>.seo-intent-context {
  margin-top: 13px !important;
  padding: 16px 19px !important;
  line-height: 1.65 !important;
}
main .express-reading .overview-layout.overview-editorial {
  gap: clamp(25px,3.4vw,52px) !important;
}
main .overview-rail.overview-action-panel {
  align-self: start;
}
main :is(.express-card-grid,.benefit-grid,.market-grid,.express-related-grid,.cargo-image-grid) {
  column-gap: clamp(14px,2vw,25px) !important;
  row-gap: clamp(17px,2.2vw,29px) !important;
}
main .express-card strong,main .benefit :is(h3,h4),main .market-title {
  display: block;
  margin-bottom: 10px !important;
  line-height: 1.3 !important;
}
main .express-card span,main .benefit p,main .market p {
  line-height: 1.67 !important;
}
main .faq details,main .faq-list details {
  margin-bottom: 15px !important;
}
main .faq :is(summary,p),main .faq-list :is(summary,p) {
  line-height: 1.7 !important;
}
main .faq p,main .faq-list p {
  margin: 12px 0 5px !important;
}
main .home-section-head {
  margin-bottom: 27px !important;
  column-gap: 30px !important;
}
main .home-section-head .section-title {
  margin-bottom: 0 !important;
}
main .regional-pull-card>div,main .home-final-box>div {
  min-width: 0;
}
main .regional-pull-card p+ p,main .home-final-box p+p {
  margin-top: 12px !important;
}
main .x25-inner-hero {
  padding: clamp(32px,4vw,60px) clamp(18px,3.5vw,56px) 43px !important;
}
main .x25-inner-hero>* {
  max-width: var(--x25-content-max) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
main .x25-inner-hero h1 {
  line-height: 1.16 !important;
  margin-top: 13px !important;
  margin-bottom: 21px !important;
}
main .x25-inner-hero .lead {
  max-width: min(90ch,var(--x25-reading-max)) !important;
  line-height: 1.72 !important;
}
footer.footer .seo-footer-grid {
  max-width: var(--x25-content-max) !important;
  margin-inline: auto !important;
  column-gap: clamp(26px,3vw,58px) !important;
  row-gap: 30px !important;
}
footer.footer .seo-footer-grid>div {
  gap: 13px !important;
}
footer.footer .x25-footer-identity,footer.footer .seo-author-attribution {
  max-width: var(--x25-content-max) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
@media(max-width:760px) {
  main.express-language-home>section:not(.landing),main.express-subpage>section:not(.x25-inner-hero),main.inner-main>section:not(.x25-inner-hero) {
    padding: 36px 20px !important;
  }
  main .x25-inner-hero {
    padding: 30px 20px 36px !important;
  }
  main .section-title {
    margin-bottom: 19px !important;
  }
  main .home-section-head {
    margin-bottom: 21px !important;
  }
  main .express-reading .overview-copy.overview-editorial-copy>.overview-lead {
    padding-bottom: 17px !important;
  }
  main .express-reading .overview-copy.overview-editorial-copy>.seo-intent-context {
    padding: 14px 15px !important;
  }
  footer.footer {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}
@media(max-width:420px) {
  main.express-language-home>section:not(.landing),main.express-subpage>section:not(.x25-inner-hero),main.inner-main>section:not(.x25-inner-hero) {
    padding: 32px 17px !important;
  }
  main .x25-inner-hero {
    padding-left: 17px !important;
    padding-right: 17px !important;
  }
}
/* 2026-10-26 | Regional country tiles CH/DE/AT | single-source correction.
   The money-parity adapter previously overrode left/right padding with 0.
   Keep visible, comfortable inset spacing on ALL pages using .regional-pull-points.
   Does not alter booking links, copy, semantics or sitewide card CSS. */
main .regional-pull-card .regional-pull-points {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  grid-template-rows: repeat(3,minmax(0,1fr));
  gap: 10px;
  align-self: stretch;
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
}
main .regional-pull-card .regional-pull-points > div {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  min-width: 0;
  min-height: 79px;
  margin: 0 !important;
  padding: 15px clamp(16px,1.8vw,22px) !important;
  border: 1px solid #d7e7da !important;
  border-radius: 12px;
  background: #fff;
  box-sizing: border-box;
}
main .regional-pull-card .regional-pull-points > div:first-child {
  border: 1px solid #d7e7da !important;
}
main .regional-pull-card .regional-pull-points strong {
  display: block;
  margin: 0 0 5px !important;
  font-size: clamp(20px,1.65vw,25px);
  font-weight: 800;
  line-height: 1.13;
  color: #286a35;
}
main .regional-pull-card .regional-pull-points span {
  display: block;
  margin: 0 !important;
  font-size: 13px;
  line-height: 1.45;
  color: #3c6050;
  overflow-wrap: break-word;
}
@media(max-width:980px) and (min-width:761px) {
  main .regional-pull-card {
    grid-template-columns: minmax(0,1fr) !important;
  }
  main .regional-pull-card .regional-pull-points {
    grid-template-columns: repeat(3,minmax(0,1fr));
    grid-template-rows: 1fr;
    gap: 12px;
  }
  main .regional-pull-card .regional-pull-points > div {
    padding: 16px !important;
    min-height: 88px;
  }
}
@media(max-width:760px) {
  main .regional-pull-card .regional-pull-points {
    grid-template-columns: minmax(0,1fr);
    grid-template-rows: none;
    gap: 10px;
    width: 100%;
  }
  main .regional-pull-card .regional-pull-points > div {
    min-height: 76px;
    padding: 15px 18px !important;
  }
}
/* 2026-10-26: semantic heading cap: 1 H1, 1 H2, 1 H3 per document.
   Remaining section labels use non-heading DIVs with H3-like presentation.
   Other classes, IDs and anchors remain unchanged for styling and linking. */
main .x25-visual-h3,
body[data-page="root"] .x25-visual-h3 {
  display: block;
  font-family: Inter,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  font-size: clamp(20px,1.9vw,26px) !important;
  font-weight: 750 !important;
  line-height: 1.3 !important;
  letter-spacing: -.035em !important;
  color: #11291b !important;
  text-wrap: balance;
  overflow-wrap: anywhere;
  hyphens: auto;
  margin-block: 8px 16px !important;
}
/* Keep small card headings compact, the user sees the appearance of an H3. */
main :is(.express-card,.benefit,.root-context-card,.root-language-card,.express-usecase-card) .x25-visual-h3 {
  font-size: clamp(19px,1.55vw,23px) !important;
  margin-block: 0 12px !important;
}
main .x25-visual-h3.section-title {
  margin-bottom: clamp(18px,2vw,28px) !important;
}
@media (max-width:760px) {
  main .x25-visual-h3,body[data-page="root"] .x25-visual-h3 {
    font-size: 21px !important;
    line-height: 1.32 !important;
  }
  main :is(.express-card,.benefit,.root-context-card,.root-language-card,.express-usecase-card) .x25-visual-h3 {
    font-size: 20px !important;
  }
}
/* 2026-10-26 | Mobile and desktop menu logo, real SVG proportions (320 × 62).
   Root cause: the menu brand was squeezed into a 34/44px grid track. */
.menu .menu-head {
  grid-template-columns: minmax(0,1fr) 42px;
  column-gap: 12px;
}
.menu .menu-head .menu-brandmark {
  grid-column: 1;
  justify-self: start;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  width: fit-content;
  max-width: 100%;
  min-width: 0;
  padding: 0;
}
.menu .menu-head .menu-brandmark img {
  display: block;
  width: clamp(170px,16vw,215px);
  max-width: 100%;
}
.menu .menu-head .close {
  grid-column: 2;
  justify-self: end;
}
@media(max-width:720px) {
  .menu .menu-head {
    grid-template-columns: minmax(0,1fr) 40px;
    column-gap: 9px;
  }
  .menu .menu-head .menu-brandmark img {
    width: clamp(160px,48vw,190px);
  }
}
@media(max-width:360px) {
  .menu .menu-head .menu-brandmark img {
    width: 160px;
  }
}
/* 2026-10-26 | Editorial copy across DE/EN: normal text uses one left edge.
   Keep layout and individual card padding, remove indentation within paragraphs. */
main :is(.express-section,.express-handoff,.home-benefits,.home-markets,.home-final,.landing,.x25-inner-hero)
  :is(p,.express-card span,.benefit p,.market p,.overview-action-sub,.overview-mini p),
main :is(.express-reading,.reading,.overview-copy,.article-copy,.section-grid) p {
  text-align: left !important;
  text-indent: 0 !important;
}
/* Narrative paragraphs are a reading column, not alternating left/right tiles.
   The adjacent booking information rail retains its separate desktop column. */
main .express-reading .overview-copy.overview-editorial-copy {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) !important;
  gap: 0 !important;
  justify-items: stretch;
  min-width: 0;
}
main .express-reading .overview-copy.overview-editorial-copy>p {
  grid-column: 1 !important;
}
main .express-reading .overview-copy.overview-editorial-copy>p:not(.seo-intent-context) {
  padding-inline-start: 0 !important;
  margin-inline-start: 0 !important;
}
main :is(.express-card,.benefit,.market,.express-reading,.reading,.overview-copy) {
  min-width: 0;
}
/* 2026-10-26 | Two independent fixed CTAs with one country chooser each.
   Native details preserve keyboard activation without extra dependencies. */
.quick-action-stack {
  position: fixed;
  z-index: 68;
  right: max(16px,calc(12px + env(safe-area-inset-right)));
  bottom: max(16px,calc(12px + env(safe-area-inset-bottom)));
  display: flex;
  flex-direction: column;
  width: max-content;
  max-width: calc(100vw - 24px);
}
.quick-action-stack > .quick-apply-picker,
.quick-action-stack > .quick-jobs-picker {
  position: relative;
  inset: auto;
  width: 100%;
  padding: 0;
  margin: 0;
  background: transparent;
  border: 0;
}
.quick-action-stack > details > summary {
  display: flex;
  align-items: center;
  justify-content: center;
  list-style: none;
  font-family: inherit;
  font-weight: 850;
  cursor: pointer;
  text-align: center;
  white-space: nowrap;
}
.quick-action-stack > details > summary::-webkit-details-marker {
  display: none;
}
.quick-action-stack > .quick-jobs-picker > summary {
  box-shadow: 0 7px 22px rgba(10,37,22,.16);
}
.quick-action-stack > .quick-jobs-picker > summary:hover,
.quick-action-stack > .quick-jobs-picker[open] > summary {
  border-color: #55dd3d;
  background: #eaf9e6;
  color: #123922;
}
.quick-action-stack > details > summary:focus-visible {
  outline: 3px solid #43bf62;
  outline-offset: 3px;
}
.quick-action-stack > details > .quick-apply-panel {
  right: 0;
  bottom: calc(100% + 10px);
}
@media(max-width:720px) {
  .quick-action-stack {
    right: max(12px,env(safe-area-inset-right));
    bottom: max(12px,env(safe-area-inset-bottom));
    gap: 7px;
  }
  .quick-action-stack > details > summary {
    min-height: 42px;
    padding: 10px 13px;
  }
}
/* v20261026 consolidated final: hero alignment, mobile stability, menu logo, country selectors. */
/* Keep the hero heading and its lead at exactly the same left inset. The former 82ch
   max-width + automatic margins centred the lead even when text-align was left. */
main .x25-inner-hero > :is(h1,.lead,.eyebrow,.chips,.x25-breadcrumbs),
main .x25-inner-hero > p.lead {
  margin-left: 0 !important;
  margin-right: 0 !important;
  text-align: left !important;
  text-indent: 0 !important;
}
main .x25-inner-hero > .lead {
  box-sizing: border-box;
}
/* Do not underline the clickable logo: mobile .menu a mistakenly drew a bottom border. */
.menu .menu-head > .menu-brandmark,
.menu .menu-head > .menu-brandmark:is(:hover,:focus,:active) {
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  text-decoration: none !important;
  background: transparent !important;
  padding: 0 !important;
}
.menu .menu-head > .menu-brandmark::before,
.menu .menu-head > .menu-brandmark::after {
  content: none !important;
  display: none !important;
}
.menu .menu-head .menu-brandmark img {
  aspect-ratio: 320/62;
  height: auto !important;
  object-fit: contain;
}
/* One fixed floating surface per selector, placed above BOTH buttons. No overlap
   with sibling button or document flow; each panel is mobile-width aware. */
.quick-action-stack {
  isolation: isolate;
  align-items: stretch;
  gap: 8px;
}
.quick-action-stack > details {
  width: 100%;
  min-width: 0;
}
.quick-action-stack > details > summary {
  width: 100%;
  box-sizing: border-box;
  min-width: 194px;
  min-height: 46px;
  padding: 12px 18px;
  border-radius: 13px;
  font-size: 13px;
  letter-spacing: 0;
  line-height: 1.25;
  box-shadow: 0 9px 26px rgba(6,35,20,.16);
}
.quick-action-stack > .quick-apply-picker > summary {
  border-color: #55dd3d !important;
  background: #0d3420 !important;
  color: #fff !important;
}
.quick-action-stack > .quick-apply-picker[open] > summary,
.quick-action-stack > .quick-apply-picker > summary:hover {
  background: #194e2e !important;
  color: #fff !important;
}
.quick-action-stack > .quick-jobs-picker > summary {
  border: 1px solid #b3dbbb !important;
  background: #fff !important;
  color: #15452a !important;
}
.quick-action-stack > .quick-jobs-picker[open] > summary,
.quick-action-stack > .quick-jobs-picker > summary:hover {
  background: #ecf9ec !important;
  color: #15452a !important;
}
.quick-action-stack > details > .quick-apply-panel {
  position: fixed !important;
  inset: auto max(12px,env(safe-area-inset-right)) calc(max(14px,env(safe-area-inset-bottom)) + 120px) auto !important;
  box-sizing: border-box;
  width: min(354px,calc(100vw - 24px)) !important;
  max-width: calc(100vw - 24px) !important;
  max-height: min(64svh,370px) !important;
  overflow-y: auto;
  padding: 13px !important;
  border-radius: 19px !important;
  border: 1px solid #d5e6d8 !important;
  background: #fff !important;
  box-shadow: 0 19px 60px rgba(6,35,20,.2) !important;
  z-index: 80;
}
.quick-action-stack .quick-title {
  color: #577361;
  padding: 4px 6px 12px !important;
  letter-spacing: .085em;
  font-size: 11px;
  font-weight: 850;
}
.quick-action-stack .quick-apply-panel a {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 12px;
  min-height: 56px;
  box-sizing: border-box;
  padding: 12px 13px !important;
  border: 1px solid #e0ebe2;
  border-radius: 12px;
  background: #f6fbf7;
  color: #173b27 !important;
  font-size: 13px;
  line-height: 1.35;
  font-weight: 750;
  overflow-wrap: break-word;
  text-align: left;
}
.quick-action-stack .quick-apply-panel a + a {
  margin-top: 8px;
}
.quick-action-stack .quick-apply-panel a:hover,
.quick-action-stack .quick-apply-panel a:focus-visible {
  background: #e8f7e9 !important;
  border-color: #64bd76 !important;
  outline-offset: 2px;
}
.quick-action-stack .quick-apply-panel a span:last-child {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 38px;
  height: 30px;
  border-radius: 8px;
  background: #e3f1e5;
  color: #20552d !important;
  font-size: 11px;
}
/* Prevent narrow / bouncing mobile columns without changing desktop card counts. */
@media(max-width:760px) {
  html,body {
    max-width: 100%;
    overflow-x: clip;
  }
  body :is(main,main>section,.landing,.hero-layout,.hero-dark,.hero-light,.home-shell,
    .section-grid,.overview-layout,.overview-editorial,.overview-copy,.express-reading,
    .express-section,.home-section-head,.regional-pull-card,.home-final-box,
    .market-grid,.benefit-grid,.express-card-grid,.express-related-grid,
    .root-language-grid,.root-context-grid,.express-market-grid,.cargo-image-grid,
    .seo-footer-grid,.site-header) {
    box-sizing: border-box;
    max-width: 100%;
    min-width: 0;
  }
  main :is(.section-grid,.overview-layout,.overview-editorial,.overview-copy,
    .express-reading,.regional-pull-card,.home-final-box,.express-market-grid,
    .express-card-grid,.market-grid,.benefit-grid,.express-related-grid,
    .cargo-image-grid,.root-language-grid,.root-context-grid) {
    width: 100% !important;
    min-width: 0 !important;
    grid-template-columns: minmax(0,1fr) !important;
  }
  main :is(.section-grid,.overview-layout,.overview-editorial,.overview-copy,
    .express-reading,.express-card,.market,.benefit,.express-market-card,
    .regional-pull-card,.home-final-box,.faq,.faq-list) > * {
    max-width: 100%;
    min-width: 0;
  }
  main :is(p,li,span,a,h1,h2,h3,h4,.section-title,.x25-visual-h3) {
    overflow-wrap: break-word;
  }
  .site-header {
    width: 100% !important;
    max-width: 100%;
    flex-wrap: nowrap !important;
  }
  .site-header .wordmark {
    flex: 0 1 auto !important;
    min-width: 0 !important;
  }
  .site-header .wordmark img {
    width: clamp(132px,40vw,185px) !important;
    max-width: 100% !important;
    height: auto !important;
  }
  .site-header .site-header-actions {
    flex: 0 0 auto;
    margin-left: auto;
  }
  .menu .menu-head {
    width: 100%;
    box-sizing: border-box;
  }
  .menu .menu-head .menu-brandmark {
    width: max-content;
    max-width: 100%;
  }
  .menu .menu-head .menu-brandmark img {
    width: clamp(155px,51vw,200px) !important;
    max-width: 100% !important;
  }
  .quick-action-stack {
    width: 202px;
    max-width: calc(100vw - 24px);
  }
  .quick-action-stack > details > summary {
    width: 100%;
    min-width: 0;
    min-height: 44px;
    padding: 10px 12px;
  }
  .quick-action-stack > details > .quick-apply-panel {
    bottom: calc(max(12px,env(safe-area-inset-bottom)) + 112px) !important;
  }
  footer.footer .x25-footer-identity {
    flex-wrap: wrap;
    justify-content: flex-start;
  }
  footer.footer .seo-footer-grid {
    grid-template-columns: minmax(0,1fr) !important;
  }
}
@media(max-width:360px) {
  .site-header {
    padding-inline: 10px !important;
    gap: 6px !important;
  }
  .site-header .wordmark img {
    width: clamp(125px,40vw,148px) !important;
  }
  .quick-action-stack {
    width: 190px;
  }
}
/* 2026-10-27 | SITEWIDE CONTENT GRID v3 - 1360px desktop width.
   IMPORTANT: This downstream variable must match --x25-content-max above.
   The v2 value (1240px) overrode an earlier 1360px change without visual effect.
   2026-10-27 | SITEWIDE CONTENT GRID v2
   Single content axis for CH/DE/AT landing, service/topic/editorial, legal and footer.
   Full-bleed section backgrounds remain full viewport width; only the content is bounded.
   Replaces conflicting viewport / section / nested max-widths from preceding styles.
   Keep the root language-selection splash centred as intentionally designed. */
:root {
  --x25-layout-max: calc(100vw - var(--x25-layout-gutter) - var(--x25-layout-gutter));
  --x25-layout-gutter: clamp(14px, 2.1vw, 92px);
  --x25-layout-side: max(var(--x25-layout-gutter), calc((100% - var(--x25-layout-max)) / 2));
  --x25-content-max: var(--x25-layout-max);
}
/* IMPORTANT: section box fills viewport; padding supplies precisely one content track.
   On subpages .x25-inner-hero must use the same padding as every other section. */
main:is(.express-language-home,.express-subpage,.inner-main,.language-entry)
  > section:not(.landing):not(.x25-root-choice),
main:is(.express-language-home,.express-subpage,.inner-main,.language-entry)
  > section.x25-inner-hero {
  box-sizing: border-box !important;
  display: block;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  margin-inline: 0 !important;
  padding-inline: var(--x25-layout-side) !important;
}
/* Preserve normal section grids and card columns. Only normalise their outer boxes. */
main:is(.express-language-home,.express-subpage,.inner-main,.language-entry)
  > section:not(.landing):not(.x25-root-choice) > :is(
    .section-grid,.home-section-head,.market-grid,.benefit-grid,.express-visual-feature,
    .regional-pull-card,.home-final-box,.root-about-shell,.root-context-shell,
    .express-market-grid,.express-card-grid,.express-reading,.root-language-grid,
    .root-context-grid,.faq,.faq-list
  ) {
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  margin-inline: 0 !important;
}
/* Hero children start on the same axis. Reading text may remain shorter, never centred. */
main :is(.x25-inner-hero) > :is(.x25-breadcrumbs,.eyebrow,h1,.lead,.chips) {
  margin-inline: 0 !important;
  text-align: left !important;
}
main .x25-inner-hero > .lead {
  width: 100% !important;
  max-width: 80ch !important;
}
/* Full-width backgrounds, but a 1240px aligned hero card on the landing pages. */
body main:is(.express-language-home,.language-entry) > section.landing {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  margin-inline: 0 !important;
  padding-inline: var(--x25-layout-side) !important;
}
body main:is(.express-language-home,.language-entry) > section.landing > .hero-layout {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-inline: 0 !important;
}
/* Align the header's logo and footer columns to the same grid as the body. */
body > .site-header {
  box-sizing: border-box !important;
  padding-inline: var(--x25-layout-side) !important;
}
footer.footer {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  padding-inline: var(--x25-layout-side) !important;
}
footer.footer > :is(.x25-footer-identity,.seo-footer-grid,.seo-author-attribution,.x25-footer-cookie-row) {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-inline: 0 !important;
}
/* Background uses the viewport, not the old width:calc(100% - 2*gutter). */
main:is(.express-language-home,.express-subpage,.inner-main,.language-entry)
  > section:not(.landing):not(.x25-root-choice) {
  overflow-wrap: break-word;
}
@media (max-width: 760px) {
  main:is(.express-language-home,.express-subpage,.inner-main,.language-entry)
    > section:not(.landing):not(.x25-root-choice) > :is(
      .section-grid,.home-section-head,.market-grid,.benefit-grid,.express-visual-feature,
      .regional-pull-card,.home-final-box,.root-about-shell,.root-context-shell
    ) {
    min-width: 0 !important;
    max-width: 100% !important;
  }
  /* Keep the mobile language-selection splash and its centred text intact. */
  body[data-page="root"] main.language-entry > section.x25-root-choice {
    padding-inline: 28px !important;
  }
}
/* R12 legal pages: outer whitespace is separate from the inner legal card. */
main.inner-main:not(.x25-error-page) {
  box-sizing: border-box;
  padding-block: clamp(22px, 2.4vw, 38px) clamp(30px, 3vw, 48px);
}
main.inner-main:not(.x25-error-page) > section.express-section {
  padding-block: clamp(22px, 2.5vw, 40px) !important;
}
main.inner-main .x25-legal-followup {
  box-sizing: border-box;
  margin-top: clamp(20px, 2vw, 30px);
  padding-top: clamp(16px, 1.55vw, 23px);
  border-top: 1px solid #dde9df;
}
main.inner-main .x25-legal-followup > h3 {
  margin: 0 0 10px;
  line-height: 1.28;
}
main.inner-main .x25-legal-followup > p {
  margin: 0;
  line-height: 1.6;
}
/* Privacy dialog: appearance adapted from the x25jobs.com reference. */
.cookie-banner {
  position: fixed;
  left: 50%;
  right: auto;
  bottom: 20px;
  transform: translateX(-50%);
  z-index: 250;
  width: min(980px,calc(100vw - 40px));
  max-height: calc(100dvh - 40px);
  overflow: auto;
  box-sizing: border-box;
}
.cookie-banner[hidden],.cookie-modal[hidden] {
  display: none !important;
}
.cookie-inner {
  width: 100%;
  box-sizing: border-box;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  background: #fff;
  border: 1px solid #dde4dd;
  border-radius: 18px;
  padding: 18px 20px;
  box-shadow: 0 22px 60px rgba(7,18,12,.2);
}
.cookie-copy {
  flex: 1;
  min-width: 0;
}
.cookie-copy strong {
  display: block;
  font-size: 21px;
  line-height: 1.15;
  color: #142c1e;
}
.cookie-copy p {
  font-size: .83rem;
  color: #667169;
  margin: 5px 0 0;
  line-height: 1.5;
}
.cookie-actions {
  display: flex;
  flex: 0 0 auto;
  gap: 8px;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-end;
}
.cookie-button {
  white-space: nowrap;
  border: 1px solid rgba(7,25,24,.18);
  border-radius: 999px;
  min-height: 44px;
  padding: 10px 16px;
  background: #fff;
  color: #102719;
  font-weight: 800;
  font-size: 12px;
  cursor: pointer;
}
.cookie-button:hover,.cookie-button:focus-visible {
  border-color: #227534;
  outline: 2px solid #227534;
  outline-offset: 2px;
}
.cookie-modal {
  position: fixed;
  inset: 0;
  z-index: 260;
  background: rgba(2,17,15,.66);
  padding: clamp(16px,4vw,44px);
  overflow: auto;
  display: grid;
  place-items: center;
}
.cookie-dialog {
  width: min(760px,100%);
  max-height: calc(100dvh - 32px);
  overflow: auto;
  background: #fff;
  border: 1px solid #dbe4df;
  border-radius: 22px;
  box-shadow: 0 28px 90px rgba(0,0,0,.28);
  padding: clamp(22px,3vw,34px);
  color: var(--x25-cookie-ink,#102719);
}
.cookie-dialog-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
}
.cookie-dialog-close {
  width: 42px;
  height: 42px;
  border: 1px solid var(--x25-cookie-border,#dde6df);
  border-radius: 50%;
  background: #fff;
  color: var(--x25-cookie-dark,#102719);
  font-size: 24px;
  cursor: pointer;
  flex: 0 0 auto;
}
.x25-cookie-ui-heading {
  font-size: clamp(20px,3vw,25px);
  font-weight: 800;
  line-height: 1.18;
}
.cookie-tabs {
  display: flex;
  gap: 6px;
  overflow: auto;
  margin: 22px 0 18px;
  padding-bottom: 3px;
}
.cookie-tab {
  border: 1px solid var(--x25-cookie-border,#dde6df);
  border-radius: 999px;
  background: #fff;
  color: var(--x25-cookie-muted,#59685c);
  font-size: 11px;
  font-weight: 800;
  padding: 10px 12px;
  white-space: nowrap;
  cursor: pointer;
}
.cookie-tab[aria-selected="true"] {
  background: var(--x25-cookie-dark,#102719);
  border-color: var(--x25-cookie-dark,#102719);
  color: #fff;
}
.cookie-panel[hidden] {
  display: none !important;
}
.cookie-panel p {
  color: var(--x25-cookie-muted,#59685c);
  margin: 8px 0 0;
  font-size: 13px;
  line-height: 1.55;
}
.cookie-purpose {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 22px;
  padding: 16px 0;
  border-top: 1px solid var(--x25-cookie-border,#dde6df);
}
.cookie-legal-links {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 16px;
}
.cookie-legal-links a {
  font-size: 12px;
  font-weight: 750;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.x25-cookie-ui-subheading {
  font-size: 15px;
  font-weight: 800;
}
.cookie-state {
  background: #eef8ee;
  border-radius: 10px;
  padding: 7px 10px;
  font-size: 12px;
  color: #28683d;
  white-space: nowrap;
}
.cookie-modal-actions {
  margin-top: 20px;
}
body.cookie-modal-open {
  overflow: hidden;
}
.cookie-button.primary {
  color: #fff;
  background: #238c35;
  border-color: #238c35;
}
.cookie-dialog .eyebrow {
  color: #278a3b;
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: 11px;
  font-weight: 800;
}
@media(max-width:650px) {
  .cookie-banner {
    width: calc(100vw - 24px);
    bottom: max(12px,env(safe-area-inset-bottom));
  }
  .cookie-inner {
    flex-direction: column;
    align-items: stretch;
    padding: 15px;
  }
  .cookie-actions {
    width: 100%;
    justify-content: stretch;
    flex-wrap: wrap;
  }
  .cookie-actions .cookie-button {
    flex: 1 1 125px;
  }
  .cookie-dialog {
    width: 100%;
    padding: 18px;
  }
  .cookie-tabs {
    gap: 5px;
  }
}

/* RELAUNCH CONTENT - single integrated module, not a separate cascade layer.
   The site-wide canonical layout tokens and header/footer remain authoritative.
   Applies only to new informational pages under main.x25r-main. */
main.x25r-main {
  --x25r-side: max(var(--x25-layout-gutter, var(--x25-gutter, 17px)), calc((100% - var(--x25-layout-max, var(--x25-max, 1360px))) / 2));
  box-sizing: border-box;
  width: 100%;
  max-width: none;
  min-width: 0;
  margin: 0;
  padding: clamp(22px, 2.5vw, 38px) var(--x25r-side) clamp(32px, 3.3vw, 52px);
  background: #fff;
  color: var(--ink, #15352b);
  font-size: 17px;
  line-height: 1.65;
  overflow-wrap: break-word;
}
.x25r-main *, .x25r-main *::before, .x25r-main *::after { box-sizing: border-box; }
.x25r-main > * { min-width: 0; max-width: 100%; }
.x25r-main .x25r-hero {
  display: block;
  width: 100%;
  min-width: 0;
  margin: 0 0 clamp(24px, 2.7vw, 36px);
  padding: clamp(24px, 3.3vw, 48px);
  border: 1px solid rgba(111, 230, 186, .20);
  border-radius: clamp(16px, 1.7vw, 24px);
  background: linear-gradient(125deg, #0a2926 0%, #124339 66%, #1b5544 100%);
  color: #fff;
}
.x25r-main .x25r-eyebrow {
  margin: 0;
  color: #b9ecdb;
  font-size: .78rem;
  font-weight: 760;
  letter-spacing: .095em;
  line-height: 1.5;
  text-transform: uppercase;
}
.x25r-main .x25r-hero h1 {
  max-width: 24ch;
  margin: 12px 0 18px;
  color: #fff;
  font-size: clamp(2rem, 3.55vw, 3.75rem);
  line-height: 1.12;
  letter-spacing: -.035em;
  overflow-wrap: normal;
  hyphens: auto;
}
.x25r-main .x25r-hero p {
  max-width: 75ch;
  margin: 0 0 18px;
  color: #edf8f2;
  font-size: clamp(1rem, 1.2vw, 1.13rem);
  line-height: 1.65;
}
.x25r-main .x25r-nav {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 195px), 1fr));
  gap: 10px;
  margin: 0 0 clamp(24px, 3vw, 40px);
  padding: 0;
}
.x25r-main .x25r-nav a {
  display: flex;
  align-items: center;
  min-width: 0;
  min-height: 44px;
  padding: 10px 14px;
  border: 1px solid #d6e6dd;
  border-radius: 11px;
  background: #f8fbf9;
  color: #164a39;
  font-size: .88rem;
  font-weight: 660;
  line-height: 1.4;
  text-decoration: none;
  overflow-wrap: break-word;
}
.x25r-main .x25r-nav a:hover { background: #ecf7ef; border-color: #99cbb0; }
.x25r-main .x25r-section {
  display: block;
  margin: 0;
  padding: clamp(23px, 2.15vw, 32px) 0;
  border: 0;
  border-bottom: 1px solid #dcebe3;
  border-radius: 0;
  background: transparent;
}
.x25r-main > .x25r-hero + .x25r-section { padding-top: 0; }
.x25r-main .x25r-section:last-child { border-bottom: 0; }
/* Balanced editorial content: intentional two-column groupings, not oversized single text lines. */
.x25r-main .x25r-topic-grid, .x25r-main .x25r-copy-pair {
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:clamp(14px,2.1vw,34px);
  align-items:stretch;
  width:100%;
  min-width:0;
}
.x25r-main .x25r-topic {
  min-width:0;
  padding:clamp(19px,1.6vw,31px);
  border:1px solid #dcebe3;
  border-radius:15px;
  background:#f8fbf9;
}
.x25r-main .x25r-topic > :last-child {margin-bottom:0}
.x25r-main .x25r-topic .x25r-note {max-width:none}
.x25r-main .x25r-copy-pair > p {
  min-width:0;
  padding:clamp(19px,1.5vw,29px);
  border:1px solid #dcebe3;
  border-radius:13px;
  background:#f8fbf9;
}
/* HOMEPAGE LANGUAGE GUIDANCE
   One equal-height card per language. Other pages use their existing layout. */
.x25r-main .x25r-home-guidance-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(16px, 1.8vw, 32px);
  align-items: stretch;
  width: 100%;
  min-width: 0;
}
.x25r-main .x25r-guidance-card {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: clamp(12px, 1.1vw, 20px);
  min-width: 0;
  height: 100%;
  margin: 0;
  padding: clamp(20px, 1.55vw, 32px);
  border: 1px solid #dcebe3;
  border-radius: 13px;
  background: #f8fbf9;
}
.x25r-main .x25r-guidance-card > h4,
.x25r-main .x25r-guidance-card > p {
  margin: 0;
  min-width: 0;
}
.x25r-main .x25r-guidance-card > h4 { line-height: 1.35; }
.x25r-main .x25r-guidance-card > p {
  line-height: 1.67;
  overflow-wrap: break-word;
}
@media (max-width: 1079px) {
  .x25r-main .x25r-home-guidance-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
  }
  .x25r-main .x25r-guidance-card {
    padding: clamp(17px, 4.5vw, 24px);
  }
}

.x25r-main .x25r-section-headline {display:grid;grid-template-columns:minmax(0,1fr);gap:8px 28px;align-items:start}
@media(min-width:1080px) {
 .x25r-main .x25r-topic-grid,.x25r-main .x25r-copy-pair{grid-template-columns:repeat(2,minmax(0,1fr))}
 .x25r-main .x25r-section-headline{grid-template-columns:minmax(0,.55fr) minmax(0,1fr)}
 .x25r-main .x25r-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);column-gap:clamp(26px,4vw,94px);row-gap:12px;align-items:center}
 .x25r-main .x25r-hero .x25r-eyebrow{grid-column:1/-1}
 .x25r-main .x25r-hero h1{grid-column:1;grid-row:2/span 2;margin:3px 0}
 .x25r-main .x25r-hero p{grid-column:2;grid-row:2;margin:0;max-width:none}
 .x25r-main .x25r-hero>a.x25r-cta{grid-column:2;grid-row:3;justify-self:start}
}
.x25r-main .x25r-section :is(h2,h3,h4,h5,h6) {
  max-width: 35ch;
  margin: 0 0 14px;
  color: #103d2c;
  line-height: 1.25;
  letter-spacing: -.025em;
  font-size: clamp(1.2rem, 1.65vw, 1.46rem);
  font-weight: 760;
}
.x25r-main .x25r-section h2 { max-width: none; font-size: clamp(1.6rem, 2.5vw, 2.16rem); }
.x25r-main .x25r-section h3 { font-size: clamp(1.35rem, 1.9vw, 1.65rem); }
.x25r-main .x25r-section :is(p, ul, ol) {
  max-width: none;
  margin: 0 0 14px;
  padding: 0;
  font-size: 1rem;
  line-height: 1.72;
}
.x25r-main .x25r-section :is(ul,ol) { padding-inline-start: 24px; }
.x25r-main .x25r-section :is(p,ul,ol):last-child { margin-bottom: 0; }
.x25r-main .x25r-note {
  max-width: 104ch;
  padding: 15px 18px !important;
  margin: 18px 0 0;
  border-left: 4px solid #20865a;
  border-radius: 0 9px 9px 0;
  background: #f0f8f3;
}
.x25r-main :is(.x25r-grid,.x25r-market,.x25r-links) {
  display: grid;
  gap: clamp(12px, 1.55vw, 22px);
  align-items: stretch;
  width: 100%;
  margin: 22px 0 0;
  padding: 0;
}
/* Each grid has its own number of tracks: two language choices are not five slots. */
.x25r-main .x25r-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.x25r-main .x25r-market { grid-template-columns:repeat(3,minmax(0,1fr)); }
.x25r-main .x25r-links { grid-template-columns:repeat(3,minmax(0,1fr)); }
.x25r-main .x25r-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  margin: 0;
  padding: clamp(18px, 2vw, 27px);
  border: 1px solid #d7e8de;
  border-radius: 16px;
  background: #f8fbf9;
  color: #173b2e;
}
.x25r-main .x25r-card :is(h4,h5,h6) { max-width: none; font-size: 1.22rem; }
.x25r-main .x25r-card p { max-width: none; margin: 0 0 14px; line-height: 1.65; }
.x25r-main .x25r-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  max-width: 100%;
  min-height: 44px;
  padding: 10px 17px;
  margin: 7px 0 0;
  border: 1px solid transparent;
  border-radius: 10px;
  background: #ddf4e5;
  color: #123c29;
  font-size: .91rem;
  font-weight: 750;
  line-height: 1.35;
  text-decoration: none;
  text-align: center;
  overflow-wrap: break-word;
}
.x25r-main .x25r-cta:hover { background: #bce9d0; }
.x25r-main .x25r-card .x25r-cta { margin-top: auto; }
.x25r-main .x25r-card a:not(.x25r-cta) {
  color: #10624a;
  text-decoration: underline;
  text-underline-offset: 3px;
  overflow-wrap: anywhere;
}
@media (max-width: 1099px) {
 .x25r-main .x25r-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
 .x25r-main .x25r-market,.x25r-main .x25r-links {grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 680px) {
 main.x25r-main { font-size: 16px; padding-top: 22px; padding-bottom: 48px; }
 .x25r-main .x25r-hero { padding: clamp(21px, 5vw, 30px); }
 .x25r-main .x25r-hero h1 { font-size: clamp(1.95rem, 7.8vw, 2.7rem); max-width: none; }
 .x25r-main .x25r-nav { grid-template-columns: minmax(0, 1fr); gap: 8px; }
 .x25r-main :is(.x25r-grid,.x25r-market,.x25r-links) { grid-template-columns: minmax(0, 1fr); }
 .x25r-main .x25r-section { padding-block: 25px; }
 .x25r-main .x25r-card { padding: 19px; }
}

/* R5: fluid site-wide content track, governed by one responsive token. */
@media (max-width: 3439px) { :root { --x25-layout-gutter: 76px; } }
@media (max-width: 2559px) { :root { --x25-layout-gutter: 56px; } }
@media (max-width: 1919px) { :root { --x25-layout-gutter: 40px; } }
@media (max-width: 1599px) { :root { --x25-layout-gutter: 32px; } }
@media (max-width: 1279px) { :root { --x25-layout-gutter: 28px; } }
@media (max-width: 1023px) { :root { --x25-layout-gutter: 24px; } }
@media (max-width: 767px) { :root { --x25-layout-gutter: 20px; } }
@media (max-width: 599px) { :root { --x25-layout-gutter: 17px; } }
@media (max-width: 389px) { :root { --x25-layout-gutter: 14px; } }
@media (min-width: 3440px) { :root { --x25-layout-gutter: 92px; } }
/* Top bar is a first-class navigation region on DE and EN pages. */
.x25r-topbar{box-sizing:border-box;width:100%;max-width:none;min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px var(--x25-layout-side, max(var(--x25-gutter, 17px), calc((100% - var(--x25-max, 1360px))/2)));background:#102f28;color:#edf7ef;font-size:.82rem;line-height:1.4}
.x25r-topbar span{min-width:0;font-weight:600;white-space:nowrap}
.x25r-topbar nav{display:flex;align-items:center;justify-content:flex-end;gap:clamp(9px,1.7vw,25px);min-width:0}
.x25r-topbar a{color:#f1fcf6;text-decoration:none;font-weight:650;min-height:28px;display:inline-flex;align-items:center;white-space:nowrap}
.x25r-topbar a:hover,.x25r-topbar a:focus-visible{text-decoration:underline;text-underline-offset:4px}
.x25r-main .x25r-deep-dive{box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr);gap:14px 28px;width:100%;margin:24px 0 0;padding:clamp(20px,2vw,34px);border:1px solid #d7e7de;border-radius:16px;background:#f4faf6}
.x25r-main .x25r-deep-dive h4{max-width:none;grid-column:1/-1;margin:0;color:#153e2e;font-size:clamp(1.2rem,1.4vw,1.5rem)}
.x25r-main .x25r-deep-dive p{max-width:75ch;margin:0;font-size:1rem;line-height:1.75}
.x25r-main .x25r-hero p{max-width:92ch}
@media (min-width:1180px){
 .x25r-main .x25r-deep-dive{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (min-width:1500px){
 .x25r-main .x25r-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
 .x25r-main .x25r-market {grid-template-columns:repeat(3,minmax(0,1fr))}
 .x25r-main .x25r-links {grid-template-columns:repeat(4,minmax(0,1fr))}
 .x25r-main .x25r-nav{grid-template-columns:repeat(4,minmax(0,1fr))}
 .x25r-main .x25r-hero{padding:clamp(36px,2.6vw,54px)}
}
@media (min-width:2300px){
 .x25r-main .x25r-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
 .x25r-main .x25r-market {grid-template-columns:repeat(3,minmax(0,1fr))}
 .x25r-main .x25r-links {grid-template-columns:repeat(5,minmax(0,1fr))}
 .x25r-main .x25r-nav{grid-template-columns:repeat(5,minmax(0,1fr))}
 .x25r-main .x25r-hero h1{max-width:28ch;font-size:clamp(3.4rem,3.5vw,5.1rem)}
 .x25r-main .x25r-card{padding:clamp(24px,1.6vw,39px)}
}
@media (max-width:767px){
 .x25r-topbar{gap:8px;min-height:36px;padding-block:4px}
 .x25r-topbar span{display:none}
 .x25r-topbar nav{width:100%;justify-content:space-between}
 .x25r-topbar a{font-size:.77rem}
}
@media (max-width:389px){.x25r-topbar a{font-size:.72rem}}

/* R10: editorial use-case hub components, scoped to case hub; responsive and full-width */
.x25-case-hub .x25-case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(16px,2vw,28px);margin:24px 0 0}
.x25-case-hub .x25-case-card{min-width:0;padding:clamp(19px,2vw,32px);border:1px solid #d6e8dc;border-radius:17px;background:#f7fbf8;scroll-margin-top:115px}
.x25-case-hub .x25-case-card h4{margin:0 0 14px;font-size:clamp(1.23rem,1.5vw,1.65rem);line-height:1.22;color:#123a29}
.x25-case-hub .x25-case-card p{max-width:70ch;margin:0 0 14px;font-size:clamp(15px,.95vw,17px);line-height:1.62}
.x25-case-hub .x25-case-card-actions{margin-top:14px}
.x25-case-hub .x25-case-card-actions a,.x25-case-hub .x25-case-related a{display:inline-flex;padding:10px 13px;border-radius:9px;background:#e0f2e5;color:#12442c;font-weight:750;text-decoration:none}
.x25-case-hub .x25-case-related{display:flex;flex-wrap:wrap;gap:12px;margin:22px 0}
.x25-case-hub .x25-case-markets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:20px}
.x25-case-hub .x25-case-markets a{display:flex;flex-direction:column;gap:6px;padding:23px 20px;border-radius:13px;border:1px solid #cfdfd4;background:#f0f8f3;color:#12442c;text-decoration:none}
.x25-case-hub .x25-case-markets span{font-size:14px}
@media (max-width:830px){.x25-case-hub .x25-case-grid{grid-template-columns:1fr}}
@media (max-width:650px){.x25-case-hub .x25-case-markets{grid-template-columns:1fr}.x25-case-hub .x25-case-card{padding:19px}}


/* X25-R3-CONTENT-FIX5-SPACING-BEGIN
   Scoped rhythm fixes: no changes to columns, width, colors or button geometry. */
main.x25r-main .x25r-topic > :is(h2,h3,.x25-visual-h3),
main.x25r-main .x25r-card > .x25-visual-h3,
main.x25r-main .x25r-deep-dive > .x25-visual-h3 {
  margin-top: 0;
  margin-bottom: 10px;
}
main.x25r-main .x25r-topic > p,
main.x25r-main .x25r-card > p {
  margin-top: 0;
  margin-bottom: 12px;
  line-height: 1.65;
}
main.x25r-main .x25r-topic > p + p,
main.x25r-main .x25r-card > p + p { margin-top: 0; }
main.x25r-main .x25r-topic > :last-child,
main.x25r-main .x25r-card > :last-child { margin-bottom: 0; }
/* Restore the pre-heading-conversion grid placement and visual hierarchy. */
main.x25r-main .x25r-deep-dive > .x25-visual-h3 {
  grid-column: 1 / -1;
  margin: 0;
  font-size: clamp(1.2rem, 1.4vw, 1.5rem);
  line-height: 1.25;
}
main.x25r-main .x25r-topic > .x25-visual-h3,
main.x25r-main .x25r-section-headline > .x25-visual-h3 {
  font-size: clamp(1.2rem, 1.65vw, 1.46rem);
  line-height: 1.25;
}
main.x25r-main .x25r-card > .x25-visual-h3 { font-size: 1.22rem; }
main.x25r-main .x25r-section > .x25-visual-h3 {
  margin: 0 0 13px;
  font-size: clamp(1.2rem, 1.65vw, 1.46rem);
}
main.x25r-main .x25r-guidance-card > .x25-visual-h3 {
  margin: 0;
  font-size: clamp(1.2rem, 1.65vw, 1.46rem);
  line-height: 1.35;
}
main.x25r-main .x25r-deep-dive > p { margin: 0; line-height: 1.68; }
main.x25r-main .x25r-section-headline > .x25-visual-h3,
main.x25r-main .x25r-section-headline > p { margin-top: 0; }
main.x25r-main .x25r-section-headline > p { margin-bottom: 0; }
main.x25r-main .x25-r3-hero .x25-r3-eyebrow { margin: 0 0 8px; }
main.x25r-main .x25-r3-hero h1 { margin: 0 0 14px; }
main.x25r-main .x25-r3-hero .x25-r3-lead { margin: 0; }
main.x25r-main .x25-r3-card > :is(h2,h3) { margin: 0 0 10px; }
main.x25r-main .x25-r3-card > p { margin: 0 0 12px; line-height: 1.67; }
main.x25r-main .x25-r3-card > p:has(> strong:only-child) { margin: 0 0 8px; }
main.x25r-main .x25-r3-card > p + p { margin-top: 0; }
main.x25r-main .x25-r3-card > :last-child { margin-bottom: 0; }
main.x25r-main .x25-r3-booking .x25-r3-inner > p:has(> strong:only-child) { margin: 0 0 8px; }
main.x25r-main .x25-r3-booking .x25-r3-inner > p + p { margin-top: 0; }
main.x25r-main .x25p2-section .x25p2-visual-heading { margin: 0 0 10px; }
main.x25r-main .x25p2-section p { margin-top: 0; margin-bottom: 12px; line-height: 1.67; }
main.x25r-main .x25p2-section p + p { margin-top: 0; }
main.x25r-main .x25p2-section p:last-child { margin-bottom: 0; }
@media (max-width: 680px) {
  main.x25r-main .x25r-topic > p,
  main.x25r-main .x25r-card > p,
  main.x25r-main .x25-r3-card > p { margin-bottom: 11px; }
  main.x25r-main .x25r-deep-dive > p,
  main.x25r-main .x25-r3-card > p { line-height: 1.64; }
}
/* X25-R3-CONTENT-FIX5-SPACING-END */


/* X25-EXPRESS-DESKTOP-NAV-ALIGN-R1-BEGIN
   Only align the four desktop navigation controls; leave grid, menu, and all links intact. */
@media (min-width:1081px) {
  body > .site-header > nav[aria-label="Hauptnavigation"] {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: nowrap;
    column-gap: clamp(19px, 2vw, 29px);
    min-height: 44px;
  }
  body > .site-header > nav[aria-label="Hauptnavigation"] > a,
  body > .site-header > nav[aria-label="Hauptnavigation"] > .x25-cases-dropdown > summary {
    display: inline-flex;
    box-sizing: border-box;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    height: 44px;
    margin: 0;
    padding: 0;
    font-size: .89rem;
    line-height: 1.4;
    font-weight: 750;
    vertical-align: middle;
    white-space: nowrap;
  }
  body > .site-header > nav[aria-label="Hauptnavigation"] > .x25-cases-dropdown {
    display: flex;
    align-items: center;
    align-self: center;
    position: relative;
    margin: 0;
    padding: 0;
  }
  body > .site-header > nav[aria-label="Hauptnavigation"] > .x25-cases-dropdown > summary {
    gap: 9px;
  }
  body > .site-header > nav[aria-label="Hauptnavigation"] > .x25-cases-dropdown > summary::after {
    flex: 0 0 7px;
    margin: 0 0 3px 0;
    transform: rotate(45deg);
  }
  body > .site-header > nav[aria-label="Hauptnavigation"] > .x25-cases-dropdown[open] > summary::after {
    margin: 3px 0 0 0;
    transform: rotate(225deg);
  }
}
/* X25-EXPRESS-DESKTOP-NAV-ALIGN-R1-END */

/* X25-R8-LEGAL-FOOTER-START */
footer.x25-legal-only-footer {
  box-sizing: border-box !important;
  padding: 22px max(20px,var(--x25-gutter,20px)) 100px !important;
  min-height: 0 !important;
}
footer.x25-legal-only-footer .x25-legal-inner {
  box-sizing: border-box !important;
  max-width: var(--x25-max,var(--x25-content-max,1360px)) !important;
  width: 100% !important;
  margin: 0 auto !important;
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: 11px !important;
}
footer.x25-legal-only-footer .x25-legal-copyright {
  font-size: 12px !important;
  line-height: 1.5 !important;
  color: #cee2d0 !important;
}
footer.x25-legal-only-footer .x25-legal-nav {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px 20px !important;
  align-items: center !important;
}
footer.x25-legal-only-footer .x25-legal-nav a {
  margin: 0 !important;
  padding: 0 !important;
  color: #e5f0e6 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
  font-weight: 600 !important;
}
footer.x25-legal-only-footer .x25-footer-cookie-settings {
  margin: 0 !important;
  padding: 0 !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
  width: auto !important;
  min-height: 22px !important;
  background: transparent !important;
  border: 0 !important;
  color: #e5f0e6 !important;
  cursor: pointer;
}
footer.x25-legal-only-footer a:hover,
footer.x25-legal-only-footer button:hover { color: #8bff98 !important; }
footer.x25-legal-only-footer a:focus-visible,
footer.x25-legal-only-footer button:focus-visible {
  outline: 2px solid #a1fbb5 !important; outline-offset: 4px;
}
@media (max-width: 600px) {
  footer.x25-legal-only-footer { padding: 20px 18px 105px !important; }
  footer.x25-legal-only-footer .x25-legal-nav {gap: 10px 16px !important;}
}
/* X25-R8-LEGAL-FOOTER-END */
