:root {
  --bg: #04111d;
  --bg-deep: #020914;
  --panel: rgba(4, 18, 31, 0.84);
  --panel-strong: rgba(3, 15, 27, 0.93);
  --line: rgba(206, 132, 28, 0.62);
  --line-soft: rgba(206, 132, 28, 0.40);
  --gold: #f0a000;
  --gold-soft: #f5c067;
  --gold-bright: #ffd37c;
  --text: #e8eef4;
  --muted: #b9c5cf;
  --container: 1250px;
  --header-h: 48px;
  --header-offset: 48px;
}

* { box-sizing: border-box; }
html {
  scroll-behavior: smooth;
  scroll-padding-top: var(--header-offset);
  background: var(--bg-deep);
}
body {
  margin: 0;
  min-width: 320px;
  color: var(--text);
  font-family: Arial, Helvetica, sans-serif;
  background:
    radial-gradient(circle at 18% 32%, rgba(10, 50, 79, .48), transparent 31%),
    radial-gradient(circle at 88% 45%, rgba(11, 40, 61, .32), transparent 33%),
    linear-gradient(180deg, #020a14 0%, #041421 48%, #020912 100%);
  line-height: 1.5;
  overflow-x: hidden;
}
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; height: auto; }
button, input, select, textarea { font: inherit; }
sup { line-height: 0; }
.svg-defs { position: absolute; width: 0; height: 0; overflow: hidden; }
.container {
  width: min(var(--container), calc(100% - 40px));
  margin-inline: auto;
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  min-height: var(--header-h);
  background: rgba(2, 11, 19, .97);
  border-bottom: 1px solid rgba(197, 128, 33, .24);
  backdrop-filter: blur(15px);
}
.header-inner {
  min-height: var(--header-h);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}
.logo {
  display: inline-block;
  flex: 0 0 auto;
  color: #fff;
  font-size: clamp(16px, 1.54vw, 22px);
  font-weight: 900;
  letter-spacing: .28em;
  line-height: 1;
  text-transform: uppercase;
  white-space: nowrap;
}
.logo sup {
  position: relative;
  top: -.52em;
  margin-left: 1px;
  font-size: .48em;
  letter-spacing: 0;
}
.primary-nav {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: clamp(16px, 3.1vw, 44px);
  color: #ffffff;
  font-size: clamp(8px, .83vw, 12px);
  font-weight: 900;
  letter-spacing: .055em;
  line-height: 1;
  text-transform: uppercase;
  white-space: nowrap;
}
.primary-nav a { opacity: .92; transition: color .16s ease, opacity .16s ease; }
.primary-nav a:hover { color: var(--gold-soft); opacity: 1; }

.hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
}
.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
  background:
    linear-gradient(90deg, rgba(3, 13, 23, .99) 0%, rgba(3, 13, 23, .92) 32%, rgba(3, 13, 23, .34) 60%, rgba(3, 13, 23, .05) 100%),
    url("../images/hero-map.jpg?v=20260514a") right top / cover no-repeat;
}
.hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    radial-gradient(circle at 70% 26%, rgba(255, 188, 75, .12), transparent 16%),
    radial-gradient(circle at 45% 59%, rgba(255, 166, 54, .08), transparent 18%),
    linear-gradient(180deg, rgba(4, 17, 29, 0) 61%, rgba(4, 17, 29, .93) 100%);
}
.hero-inner {
  min-height: clamp(468px, 46.2vw, 550px);
  display: flex;
  align-items: flex-start;
  padding-top: clamp(54px, 6vw, 78px);
}
.hero-copy { width: min(45.5%, 540px); min-width: 320px; }
.hero h1 {
  margin: 0 0 8px;
  color: #fff;
  font-size: clamp(54px, 7vw, 98px);
  font-weight: 900;
  line-height: .96;
  letter-spacing: .05em;
  text-transform: uppercase;
  text-shadow: 0 10px 30px rgba(0,0,0,.42);
}
.hero h1 span { display: block; }
.hero h1 sup {
  position: relative;
  top: -.88em;
  margin-left: 4px;
  font-size: .31em;
  letter-spacing: 0;
}
.hero-tagline {
  margin: 0 0 8px;
  color: var(--gold);
  font-size: clamp(17px, 1.86vw, 30px);
  font-weight: 900;
  line-height: 1.1;
  letter-spacing: .02em;
  text-transform: uppercase;
  white-space: nowrap;
}
.hero-tagline sup {
  position: relative;
  top: -.30em;
  margin-left: 1px;
  font-size: .54em;
}
.hero-subtitle {
  display: inline-flex;
  min-width: min(100%, 400px);
  min-height: clamp(42px, 4.1vw, 66px);
  margin: 0 0 clamp(18px, 2vw, 30px);
  padding: 0 clamp(18px, 2.3vw, 35px);
  align-items: center;
  color: var(--gold-soft);
  border: 2px solid rgba(209, 126, 21, .82);
  background: rgba(3, 15, 27, .45);
  font-size: clamp(22px, 2.75vw, 39px);
  font-weight: 800;
  line-height: 1.1;
}
.hero-points {
  list-style: none;
  margin: 0 0 clamp(28px, 3.3vw, 46px);
  padding: 0;
  max-width: 640px;
  color: #edf2f6;
  font-size: clamp(12px, 1.03vw, 16px);
  line-height: 1.48;
}
.hero-points li {
  position: relative;
  margin: 0 0 clamp(9px, 1.1vw, 15px);
  padding-left: 28px;
}
.hero-points li::before {
  content: "";
  position: absolute;
  left: 2px;
  top: .58em;
  width: 8px;
  height: 8px;
  transform: rotate(45deg);
  background: var(--gold);
  box-shadow: 0 0 12px rgba(255, 178, 51, .76);
}
.button {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 0 28px;
  border: 1px solid rgba(253, 209, 122, .52);
  border-radius: 2px;
  color: #12100a;
  background: linear-gradient(90deg, #ffd988 0%, #e4a143 49%, #ffd57d 100%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.44), 0 18px 34px rgba(213, 139, 43, .20);
  cursor: pointer;
  font-size: clamp(11px, .98vw, 14px);
  font-weight: 900;
  letter-spacing: .19em;
  line-height: 1.2;
  text-align: center;
  text-transform: uppercase;
  transition: transform .16s ease, filter .16s ease;
}
.button:hover { transform: translateY(-1px); filter: brightness(1.05); }
.button svg {
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.hero-cta { width: min(100%, 485px); }
.hero-bars { padding-bottom: clamp(18px, 2.4vw, 34px); }
.included-bar,
.eutm-bar {
  width: 100%;
  border: 1px solid var(--line-soft);
  background: linear-gradient(180deg, rgba(5, 21, 36, .70), rgba(2, 12, 22, .86));
  box-shadow: inset 0 0 0 1px rgba(255, 209, 112, .015);
}
.included-bar {
  display: grid;
  min-height: clamp(78px, 7.7vw, 110px);
  grid-template-columns: 238px repeat(3, minmax(0, 1fr));
  align-items: stretch;
}
.included-heading {
  display: flex;
  align-items: center;
  padding: 0 34px;
  color: var(--gold);
  border-right: 1px solid var(--line-soft);
  font-size: clamp(12px, 1.12vw, 17px);
  font-weight: 900;
  letter-spacing: .28em;
  line-height: 1.28;
  text-transform: uppercase;
}
.included-item {
  display: flex;
  align-items: center;
  gap: clamp(12px, 1.6vw, 21px);
  min-width: 0;
  padding: 0 clamp(15px, 2vw, 35px);
  border-right: 1px solid var(--line-soft);
}
.included-item:last-child { border-right: 0; }
.included-item svg,
.euipo-mark {
  width: clamp(38px, 4.2vw, 58px);
  height: clamp(38px, 4.2vw, 58px);
  flex: 0 0 clamp(38px, 4.2vw, 58px);
  color: var(--gold);
  fill: none;
  stroke: currentColor;
  stroke-width: 2.35;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.euipo-mark {
  color: #f2f6fb;
  filter: drop-shadow(0 0 14px rgba(255, 255, 255, .12));
}
.euipo-mark .euipo-orbit {
  fill: rgba(255,255,255,.015);
  stroke: rgba(241,247,255,.78);
  stroke-width: 1.45;
  stroke-dasharray: 2.1 3.2;
}
.euipo-mark .euipo-inner {
  fill: rgba(3, 13, 23, .58);
  stroke: rgba(241,247,255,.58);
  stroke-width: 1.15;
}
.euipo-stars {
  fill: rgba(244,248,255,.92);
  stroke: none;
}
.euipo-letter {
  fill: #ffffff;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 23px;
  font-weight: 900;
  letter-spacing: 0;
}
.included-item strong {
  display: block;
  color: #fff;
  font-size: clamp(16px, 1.55vw, 22px);
  font-weight: 900;
  line-height: 1.1;
}
.included-item small {
  display: block;
  margin-top: 4px;
  color: #d8dee5;
  font-size: clamp(12px, 1.18vw, 17px);
  line-height: 1.1;
}
.eutm-bar {
  display: grid;
  min-height: clamp(56px, 6vw, 78px);
  margin-top: 18px;
  grid-template-columns: minmax(265px, 36.5%) 1fr;
  align-items: center;
}
.eutm-label {
  display: flex;
  align-items: center;
  gap: 18px;
  height: 100%;
  padding: 0 28px;
  border-right: 1px solid var(--line-soft);
  color: var(--gold);
  font-size: clamp(11px, 1.08vw, 15px);
  letter-spacing: .06em;
  text-transform: uppercase;
}
.eutm-label svg {
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.5;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.eutm-bar p {
  margin: 0;
  padding: 0 28px;
  color: #e1e8ee;
  font-size: clamp(10px, .91vw, 13px);
  line-height: 1.55;
}

.section[id] { scroll-margin-top: var(--header-offset); }
.section { padding: clamp(22px, 3.2vw, 42px) 0 0; }
.section-kicker {
  margin: 0 0 8px;
  color: var(--gold);
  font-size: clamp(11px, 1.02vw, 14px);
  font-weight: 900;
  letter-spacing: .28em;
  line-height: 1.25;
  text-align: center;
  text-transform: uppercase;
}
.section-title {
  margin: 0 0 clamp(18px, 2.2vw, 28px);
  color: #f2f5f8;
  font-size: clamp(24px, 2.55vw, 38px);
  font-weight: 300;
  letter-spacing: .005em;
  line-height: 1.15;
  text-align: center;
}
.advantage-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(8px, 1.1vw, 16px);
}
.text-card,
.asset-card,
.transaction-card,
.fact-card,
.contact-card {
  border: 1px solid var(--line-soft);
  background: linear-gradient(180deg, rgba(5, 22, 37, .78), rgba(2, 13, 24, .88));
  box-shadow: inset 0 0 0 1px rgba(255, 208, 116, .026), 0 14px 32px rgba(0,0,0,.10);
}
.compact-card {
  min-height: clamp(108px, 9.9vw, 144px);
  padding: clamp(18px, 2vw, 28px) clamp(15px, 1.9vw, 28px);
  text-align: center;
}
h3 {
  margin: 0;
  color: var(--gold);
  font-size: clamp(11px, .98vw, 14px);
  font-weight: 900;
  letter-spacing: .1em;
  line-height: 1.28;
  text-transform: uppercase;
}
.text-card p {
  margin: 16px 0 0;
  color: #e4ebf1;
  font-size: clamp(11px, .9vw, 13px);
  line-height: 1.62;
}
.industries-section { padding-top: clamp(34px, 4.1vw, 58px); }
.industry-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: clamp(6px, .7vw, 10px);
}
.industry-card {
  min-height: clamp(278px, 28.1vw, 410px);
  overflow: hidden;
  border: 1px solid var(--line-soft);
  background: rgba(3, 15, 27, .87);
}
.industry-card img {
  width: 100%;
  height: clamp(138px, 14.1vw, 204px);
  object-fit: cover;
  border-bottom: 1px solid rgba(206, 132, 28, .24);
}
.industry-copy {
  padding: clamp(14px, 1.4vw, 20px) clamp(10px, 1vw, 16px);
}
.industry-copy h3 {
  color: #f5f7fa;
  font-size: clamp(11px, 1.02vw, 15px);
  letter-spacing: .015em;
  line-height: 1.25;
}
.industry-copy p {
  margin: clamp(14px, 1.6vw, 23px) 0 0;
  color: #d6dfe7;
  font-size: clamp(10px, .86vw, 13px);
  line-height: 1.62;
}
.asset-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(8px, .9vw, 14px);
}
.asset-card,
.transaction-card {
  display: flex;
  align-items: flex-start;
  gap: clamp(12px, 1.15vw, 17px);
  min-height: clamp(120px, 10.6vw, 158px);
  padding: clamp(20px, 2vw, 31px) clamp(16px, 1.8vw, 27px);
}
.asset-card svg,
.transaction-card svg {
  width: clamp(30px, 3.1vw, 44px);
  height: clamp(30px, 3.1vw, 44px);
  flex: 0 0 clamp(30px, 3.1vw, 44px);
  color: var(--gold);
  fill: none;
  stroke: currentColor;
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.asset-card p,
.transaction-card p {
  margin: clamp(12px, 1.4vw, 18px) 0 0;
  color: #dbe4ea;
  font-size: clamp(9px, .78vw, 11px);
  line-height: 1.62;
}
.transaction-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: clamp(7px, .85vw, 12px);
}
.transaction-card {
  min-height: clamp(130px, 12.2vw, 184px);
  flex-direction: column;
}
.transaction-card h3 { line-height: 1.35; }
.transaction-section { padding-top: clamp(28px, 3.6vw, 50px); }
.package-section { padding-top: clamp(34px, 3.8vw, 54px); }

.fact-contact-section {
  padding: clamp(28px, 3.4vw, 50px) 0 0;
  scroll-margin-top: var(--header-offset);
}
.fact-contact-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(10px, 1.3vw, 18px);
}
.fact-card,
.contact-card {
  min-height: clamp(290px, 29.2vw, 420px);
  padding: clamp(26px, 2.5vw, 40px) clamp(23px, 2.3vw, 35px);
}
.fact-card h2,
.contact-card h2 {
  margin: 0 0 clamp(22px, 2.1vw, 32px);
  color: var(--gold);
  font-size: clamp(15px, 1.34vw, 20px);
  font-weight: 900;
  letter-spacing: .28em;
  line-height: 1.25;
  text-transform: uppercase;
}
.fact-card-inner {
  display: grid;
  grid-template-columns: minmax(150px, 42%) 1fr;
  align-items: center;
  gap: clamp(18px, 2vw, 30px);
}
.fact-mockup {
  width: 100%;
  max-width: 270px;
  filter: drop-shadow(0 18px 24px rgba(0,0,0,.42));
  transform: rotate(-7deg);
}
.fact-copy p {
  margin: 0 0 clamp(28px, 3vw, 42px);
  color: #dce5eb;
  font-size: clamp(11px, .91vw, 13px);
  line-height: 2.05;
}
.download-button { width: min(100%, 360px); }
.contact-intro {
  margin: 0 0 clamp(18px, 1.8vw, 25px);
  color: #dce5eb;
  font-size: clamp(11px, .93vw, 13px);
  line-height: 1.62;
}
.form-alert {
  display: none;
  margin: 0 0 14px;
  padding: 10px 12px;
  border: 1px solid rgba(240,160,0,.42);
  color: #f6d18a;
  background: rgba(240,160,0,.08);
  font-size: 12px;
}
.form-alert[aria-hidden="false"] { display: block; }
.form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px 14px;
}
.field input,
.field select,
.field textarea {
  width: 100%;
  min-height: clamp(42px, 4.1vw, 52px);
  padding: 0 14px;
  border: 1px solid rgba(206, 132, 28, .29);
  border-radius: 0;
  outline: none;
  color: #eef3f7;
  background: rgba(1, 10, 18, .48);
  font-size: clamp(11px, .91vw, 13px);
  line-height: 1.3;
}
.field textarea {
  height: calc(clamp(42px, 4.1vw, 52px) * 2 + 12px);
  padding-top: 13px;
  resize: vertical;
}
.field select {
  appearance: none;
  background-image:
    linear-gradient(45deg, transparent 50%, #d7e0e6 50%),
    linear-gradient(135deg, #d7e0e6 50%, transparent 50%);
  background-position: calc(100% - 16px) 50%, calc(100% - 11px) 50%;
  background-size: 5px 5px, 5px 5px;
  background-repeat: no-repeat;
}
.field input::placeholder,
.field textarea::placeholder { color: #aebbc6; opacity: 1; }
.field input:focus,
.field select:focus,
.field textarea:focus { border-color: rgba(244, 181, 74, .82); }
.message-field { grid-row: span 2; }
.submit-button {
  width: 100%;
  margin-top: 16px;
}
.security-note {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin: 18px 0 0;
  color: #b9c5cf;
  font-size: clamp(11px, .88vw, 13px);
  line-height: 1.4;
}
.security-note svg {
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
  color: var(--gold);
  fill: none;
  stroke: currentColor;
  stroke-width: 2.5;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.honeypot { position: absolute; left: -9999px; opacity: 0; }
.notice { padding: clamp(16px, 1.8vw, 26px) 0 0; }
.notice-inner {
  display: grid;
  grid-template-columns: 34px 1fr;
  align-items: center;
  gap: 18px;
  padding: 0 10px clamp(12px, 1.2vw, 18px);
}
.notice-inner svg {
  width: 28px;
  height: 28px;
  color: var(--gold);
  fill: none;
  stroke: currentColor;
  stroke-width: 2.55;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.notice-inner p {
  margin: 0;
  color: #d6dfe7;
  font-size: clamp(10px, .86vw, 12px);
  line-height: 1.5;
}
.site-footer {
  min-height: 52px;
  background: rgba(2, 9, 16, .98);
  border-top: 1px solid rgba(206, 132, 28, .12);
}
.footer-inner {
  min-height: 52px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}
.footer-brand .logo { font-size: clamp(14px, 1.3vw, 20px); }
.footer-brand p {
  margin: 4px 0 0;
  color: #aeb9c2;
  font-size: clamp(9px, .78vw, 12px);
  line-height: 1.1;
}
.copyright {
  margin: 0;
  color: #aeb9c2;
  font-size: clamp(9px, .78vw, 12px);
  line-height: 1.35;
  text-align: right;
}

@media (max-width: 820px) {
  :root { --header-h: 48px; }
  .container { width: calc(100% - 40px); }
  .header-inner { gap: 18px; }
  .primary-nav { gap: 18px; font-size: 8px; letter-spacing: .04em; }
  .hero-copy { width: 50%; min-width: 302px; }
  .included-bar { grid-template-columns: 122px repeat(3, minmax(0, 1fr)); }
  .included-heading { padding: 0 18px; letter-spacing: .24em; }
  .included-item { padding: 0 14px; gap: 11px; }
  .euipo-mark, .included-item svg { width: 43px; height: 43px; flex-basis: 43px; }
  .industry-copy { padding-left: 9px; padding-right: 9px; }
  .asset-card, .transaction-card { padding-left: 15px; padding-right: 15px; }
  .fact-card, .contact-card { padding-left: 25px; padding-right: 25px; }
}

@media (max-width: 620px) {
  :root { --header-h: 82px; }
  .container { width: calc(100% - 28px); }
  .header-inner {
    min-height: var(--header-h);
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 12px;
    padding: 12px 0;
  }
  .primary-nav {
    width: 100%;
    justify-content: flex-start;
    overflow-x: auto;
    padding-bottom: 2px;
    scrollbar-width: none;
  }
  .primary-nav::-webkit-scrollbar { display: none; }
  .hero::before {
    background:
      linear-gradient(90deg, rgba(3,13,23,.99) 0%, rgba(3,13,23,.94) 54%, rgba(3,13,23,.42) 100%),
      url("../images/hero-map.jpg?v=20260514a") 67% top / cover no-repeat;
  }
  .hero-inner { min-height: 510px; padding-top: 46px; }
  .hero-copy { width: 100%; min-width: 0; }
  .hero-tagline { white-space: normal; }
  .included-bar { grid-template-columns: 1fr; }
  .included-heading { min-height: 58px; border-right: 0; border-bottom: 1px solid var(--line-soft); }
  .included-item { min-height: 68px; border-right: 0; border-bottom: 1px solid var(--line-soft); }
  .included-item:last-child { border-bottom: 0; }
  .eutm-bar { grid-template-columns: 1fr; }
  .eutm-label { min-height: 54px; border-right: 0; border-bottom: 1px solid var(--line-soft); }
  .eutm-bar p { padding: 14px 20px; }
  .advantage-grid, .asset-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .industry-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .industry-card { min-height: 300px; }
  .industry-card img { height: 170px; }
  .transaction-grid { grid-template-columns: 1fr; }
  .transaction-card { min-height: auto; flex-direction: row; }
  .fact-contact-grid { grid-template-columns: 1fr; }
  .fact-card-inner { grid-template-columns: minmax(135px, 36%) 1fr; }
  .form-grid { grid-template-columns: 1fr; }
  .message-field { grid-row: auto; }
  .field textarea { height: 104px; }
  .footer-inner { flex-direction: column; align-items: flex-start; padding: 14px 0; }
  .copyright { text-align: left; }
}

@media (max-width: 430px) {
  .advantage-grid, .asset-grid, .industry-grid { grid-template-columns: 1fr; }
  .industry-card img { height: 180px; }
  .fact-card-inner { grid-template-columns: 1fr; }
  .fact-mockup { max-width: 260px; margin: 0 auto; }
}

/* final production compacting adjustments for the approved desktop preview */
@media (min-width: 621px) and (max-width: 820px) {
  .hero-inner { min-height: 480px; padding-top: 40px; }
  .hero h1 { margin-bottom: 6px; }
  .hero-tagline { margin-bottom: 5px; }
  .hero-subtitle { min-height: 41px; margin-bottom: 15px; }
  .hero-points { margin-bottom: 24px; line-height: 1.43; }
  .hero-points li { margin-bottom: 7px; }
  .included-bar { min-height: 78px; }
  .eutm-bar { min-height: 54px; margin-top: 14px; }
  .hero-bars { padding-bottom: 18px; }
  .section { padding-top: 24px; }
  .industries-section { padding-top: 34px; }
  .package-section { padding-top: 30px; }
  .transaction-section { padding-top: 26px; }
  .section-title { margin-bottom: 16px; }
  .compact-card { min-height: 100px; padding: 18px 14px; }
  .industry-card { min-height: 276px; }
  .industry-card img { height: 138px; }
  .industry-copy { padding-top: 12px; padding-bottom: 12px; }
  .industry-copy p { margin-top: 12px; line-height: 1.56; }
  .asset-card { min-height: 120px; padding: 16px 12px; gap: 10px; }
  .asset-card svg { width: 28px; height: 28px; flex-basis: 28px; }
  .asset-card p { margin-top: 8px; font-size: 8.8px; line-height: 1.48; }
  .asset-card h3 { font-size: 9px; letter-spacing: .07em; }
  .transaction-card { min-height: 128px; padding: 15px 12px; gap: 10px; }
  .transaction-card svg { width: 27px; height: 27px; flex-basis: 27px; }
  .transaction-card p { margin-top: 8px; font-size: 8.8px; line-height: 1.5; }
  .transaction-card h3 { font-size: 8.8px; letter-spacing: .07em; }
  .fact-contact-section { padding-top: 26px; }
  .fact-contact-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .fact-card, .contact-card { min-height: 318px; padding: 22px 24px; }
  .fact-card h2, .contact-card h2 { margin-bottom: 18px; font-size: 13px; letter-spacing: .24em; }
  .fact-card-inner { grid-template-columns: 42% 1fr; gap: 16px; }
  .fact-copy p { margin-bottom: 22px; line-height: 1.78; }
  .form-grid { gap: 9px 10px; }
  .field input, .field select, .field textarea { min-height: 41px; font-size: 10px; }
  .field textarea { height: 91px; }
  .submit-button { margin-top: 12px; min-height: 44px; }
  .security-note { margin-top: 12px; }
  .notice { padding-top: 12px; }
}

@media (min-width: 621px) and (max-width: 820px) {
  .package-section { padding-top: 22px; }
  .transaction-section { padding-top: 20px; }
  .asset-card { min-height: 122px; height: 122px; padding: 13px 11px; gap: 9px; overflow: hidden; }
  .asset-card svg { width: 25px; height: 25px; flex-basis: 25px; }
  .asset-card p { margin-top: 7px; font-size: 8.9px; line-height: 1.43; }
  .asset-card h3 { font-size: 9.2px; letter-spacing: .055em; }
  .transaction-card { min-height: 126px; height: 126px; padding: 13px 11px; gap: 8px; overflow: hidden; }
  .transaction-card svg { width: 24px; height: 24px; flex-basis: 24px; }
  .transaction-card p { margin-top: 7px; font-size: 8.9px; line-height: 1.44; }
  .transaction-card h3 { font-size: 9px; letter-spacing: .055em; }
  .fact-contact-section { padding-top: 20px; }
  .fact-card, .contact-card { min-height: 342px; height: 342px; padding: 20px 23px; overflow: hidden; }
  .fact-card h2, .contact-card h2 { margin-bottom: 14px; font-size: 12.8px; letter-spacing: .22em; }
  .contact-intro { margin-bottom: 13px; line-height: 1.5; }
  .fact-card-inner { gap: 14px; }
  .fact-copy p { margin-bottom: 19px; line-height: 1.66; }
  .button { min-height: 42px; }
  .form-grid { gap: 8px 9px; }
  .field input, .field select, .field textarea { min-height: 38px; padding-left: 12px; padding-right: 12px; font-size: 10.6px; }
  .field textarea { height: 84px; padding-top: 11px; }
  .submit-button { margin-top: 10px; min-height: 42px; }
  .security-note { margin-top: 9px; font-size: 9.4px; }
  .security-note svg { width: 17px; height: 17px; flex-basis: 17px; }
  .notice { padding-top: 8px; }
  .notice-inner { height: 40px; padding-bottom: 6px; gap: 12px; grid-template-columns: 28px 1fr; }
  .notice-inner svg { width: 24px; height: 24px; }
  .notice-inner p { font-size: 9px; line-height: 1.34; }
  .site-footer, .footer-inner { min-height: 43px; }
  .footer-inner { gap: 14px; }
  .footer-brand p, .copyright { font-size: 8px; }
}

@media (min-width: 621px) and (max-width: 820px) {
  .industry-card:last-child .industry-copy h3 { font-size: 10.2px; letter-spacing: -.02em; }
  .industry-copy h3 { letter-spacing: -.005em; }
  .industry-copy p { font-size: 9.2px; line-height: 1.5; }
}

/* production polish pass: card copy readability and final optical fit */
.asset-card p,
.transaction-card p {
  font-size: clamp(10px, .84vw, 13px);
  line-height: 1.58;
}
@media (min-width: 621px) and (max-width: 820px) {
  .industry-card:last-child .industry-copy {
    padding-left: 6px;
    padding-right: 6px;
  }
  .industry-card:last-child .industry-copy h3 {
    font-size: 10.2px;
    letter-spacing: -.055em;
  }
}
@media (min-width: 621px) and (max-width: 820px) {
  .asset-card p,
  .transaction-card p {
    font-size: 8.9px;
    line-height: 1.44;
  }
}
.scroll-end-spacer {
  display: block;
  height: 0;
  pointer-events: none;
}

/* 2026-05-13 final 1:1 production alignment pass */
.advantage-icon {
  width: clamp(40px, 4.2vw, 58px);
  height: clamp(40px, 4.2vw, 58px);
  margin: 0 auto clamp(16px, 1.5vw, 22px);
  color: var(--gold);
  fill: none;
  stroke: currentColor;
  stroke-width: 2.25;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.euipo-mark {
  color: var(--gold);
  filter: drop-shadow(0 0 10px rgba(240, 160, 0, .24));
}
.euipo-mark .euipo-stars { fill: currentColor; stroke: none; }
.euipo-mark .euipo-shield,
.euipo-mark .euipo-columns,
.euipo-mark .euipo-base {
  fill: none;
  stroke: currentColor;
  stroke-width: 2.15;
  stroke-linecap: round;
  stroke-linejoin: round;
}

@media (min-width: 621px) and (max-width: 820px) {
  .container { width: calc(100% - 36px); }
  .header-inner { gap: 16px; }
  .primary-nav { gap: clamp(13px, 2.2vw, 18px); font-size: clamp(7.8px, 1.15vw, 8.8px); letter-spacing: .045em; }

  .hero::before {
    background:
      linear-gradient(90deg, rgba(3, 13, 23, .99) 0%, rgba(3, 13, 23, .88) 32%, rgba(3, 13, 23, .26) 60%, rgba(3, 13, 23, .05) 100%),
      url("../images/hero-map.jpg?v=20260514a") right top / cover no-repeat;
  }
  .hero-inner { min-height: 454px; padding-top: 36px; }
  .hero-copy { width: 296px; min-width: 296px; margin-left: 10px; }
  .hero h1 { margin-bottom: 7px; font-size: 54px; line-height: .96; letter-spacing: .055em; }
  .hero h1 sup { top: -.86em; margin-left: 0; font-size: .34em; }
  .hero-tagline { margin-bottom: 9px; font-size: 18px; letter-spacing: .015em; }
  .hero-tagline sup { top: -.34em; margin-left: 0; font-size: .54em; }
  .hero-subtitle {
    width: 224px;
    min-width: 224px;
    min-height: 42px;
    margin-bottom: 12px;
    padding: 0 18px;
    font-size: 23px;
    border-width: 2px;
  }
  .hero-points { width: 360px; max-width: 360px; margin-bottom: 20px; font-size: 12.4px; line-height: 1.36; }
  .hero-points li { margin-bottom: 8px; padding-left: 28px; }
  .hero-points li::before { width: 8px; height: 8px; left: 2px; top: .50em; }
  .hero-cta { width: 296px; min-height: 37px; padding-left: 22px; padding-right: 22px; font-size: 11.5px; letter-spacing: .18em; }
  .hero-bars { padding-bottom: 0; }
  .included-bar { min-height: 78px; grid-template-columns: 130px repeat(3, minmax(0, 1fr)); }
  .included-heading { padding: 0 21px; font-size: 12.8px; letter-spacing: .24em; line-height: 1.25; }
  .included-item { padding: 0 19px; gap: 12px; }
  .trademark-item { padding-left: 19px; }
  .euipo-mark, .included-item svg { width: 45px; height: 45px; flex-basis: 45px; }
  .included-item strong { font-size: 17px; line-height: 1.04; }
  .included-item small { margin-top: 3px; font-size: 13.5px; }
  .eutm-bar { min-height: 58px; margin-top: 8px; grid-template-columns: 228px 1fr; }
  .eutm-label { gap: 16px; padding: 0 29px; font-size: 11.6px; }
  .eutm-label svg { width: 31px; height: 31px; flex-basis: 31px; }
  .eutm-bar p { padding: 0 30px; font-size: 10.6px; line-height: 1.45; }

  .section { padding-top: 22px; }
  .section-kicker { margin-bottom: 6px; font-size: 11.2px; letter-spacing: .30em; line-height: 1.15; }
  .section-title { margin-bottom: 12px; font-size: 24px; line-height: 1.12; }

  .advantage-grid { gap: 10px; }
  .compact-card { height: 170px; min-height: 170px; padding: 21px 16px 18px; }
  .advantage-icon { width: 43px; height: 43px; margin-bottom: 18px; stroke-width: 2.2; }
  .compact-card h3 { font-size: 11.4px; letter-spacing: .055em; }
  .text-card p { margin-top: 10px; font-size: 12.1px; line-height: 1.48; }

  .industries-section { padding-top: 16px; }
  .industry-grid { gap: 7px; }
  .industry-card { height: 286px; min-height: 286px; }
  .industry-card img { height: 139px; }
  .industry-copy { padding: 12px 8px; }
  .industry-copy h3 { font-size: 10.7px; line-height: 1.22; letter-spacing: -.01em; }
  .industry-copy p { margin-top: 10px; font-size: 9.8px; line-height: 1.5; }
  .industry-card:last-child .industry-copy { padding-left: 5px; padding-right: 5px; }
  .industry-card:last-child .industry-copy h3 { font-size: 9.7px; letter-spacing: -.06em; }

  .package-section { padding-top: 22px; }
  .asset-grid { gap: 8px; }
  .asset-card { height: 143px; min-height: 143px; padding: 15px 12px; gap: 10px; }
  .asset-card svg { width: 27px; height: 27px; flex-basis: 27px; }
  .asset-card h3 { font-size: 9.2px; letter-spacing: .05em; line-height: 1.24; }
  .asset-card p { margin-top: 8px; font-size: 8.9px; line-height: 1.42; }

  .transaction-section { padding-top: 20px; }
  .transaction-grid { gap: 8px; }
  .transaction-card { height: 144px; min-height: 144px; padding: 14px 11px; gap: 11px; }
  .transaction-card svg { width: 26px; height: 26px; flex-basis: 26px; }
  .transaction-card h3 { font-size: 9.1px; letter-spacing: .045em; line-height: 1.27; }
  .transaction-card p { margin-top: 8px; font-size: 8.8px; line-height: 1.40; }

  .fact-contact-section { padding-top: 19px; }
  .fact-contact-grid { grid-template-columns: 1.05fr 1fr; gap: 10px; }
  .fact-card, .contact-card { height: 265px; min-height: 265px; padding: 17px 24px; overflow: hidden; }
  .fact-card h2, .contact-card h2 { margin-bottom: 14px; font-size: 12.6px; letter-spacing: .23em; line-height: 1.18; }
  .fact-card-inner { grid-template-columns: 41% 1fr; gap: 13px; align-items: center; }
  .fact-mockup { max-width: 128px; }
  .fact-copy p { margin-bottom: 16px; font-size: 10.8px; line-height: 1.62; }
  .download-button { min-height: 44px; padding-left: 12px; padding-right: 12px; font-size: 10.6px; letter-spacing: .16em; }
  .download-button svg { width: 18px; height: 18px; }
  .contact-intro { margin-bottom: 12px; font-size: 10.9px; line-height: 1.46; }
  .form-grid { gap: 7px 10px; }
  .field input, .field select, .field textarea { min-height: 33px; padding-left: 11px; padding-right: 11px; font-size: 9.4px; }
  .field textarea { height: 73px; padding-top: 10px; }
  .submit-button { min-height: 33px; margin-top: 10px; font-size: 10.5px; letter-spacing: .17em; }
  .security-note { margin-top: 8px; font-size: 8.7px; gap: 8px; }
  .security-note svg { width: 15px; height: 15px; flex-basis: 15px; }
  .notice { padding-top: 8px; }
  .notice-inner { height: 35px; grid-template-columns: 28px 1fr; gap: 10px; padding: 0 8px 5px; }
  .notice-inner svg { width: 22px; height: 22px; }
  .notice-inner p { font-size: 8.5px; line-height: 1.25; }
  .site-footer, .footer-inner { min-height: 40px; }
  .footer-inner { gap: 12px; }
  .footer-brand .logo { font-size: 14px; }
  .footer-brand p, .copyright { font-size: 7.5px; }
}

/* final optical correction after browser render verification */
@media (min-width: 621px) and (max-width: 820px) {
  .hero-subtitle { height: 42px; white-space: nowrap; margin-bottom: 16px; }
  .industries-section { padding-top: 10px; }
  .package-section { padding-top: 13px; }
  .transaction-section { padding-top: 15px; }
}
@media (min-width: 621px) and (max-width: 820px) {
  .site-footer { min-height: 40px; }
  .footer-inner { min-height: 39px; }
}


/* 2026-05-13b production corrections: CTA spacing, EUIPO symbol, readable white copy, larger fact-sheet mockup */
.hero-inner {
  min-height: clamp(505px, 48.8vw, 595px);
}
.hero-points {
  font-size: clamp(13px, 1.09vw, 17px);
  line-height: 1.56;
}
.hero-cta {
  margin-bottom: clamp(22px, 2.6vw, 40px);
}
.euipo-mark-img {
  display: block;
  width: clamp(50px, 4.9vw, 68px);
  height: clamp(50px, 4.9vw, 68px);
  flex: 0 0 clamp(50px, 4.9vw, 68px);
  object-fit: contain;
  filter: drop-shadow(0 0 12px rgba(240, 160, 0, .32));
}
.text-card p,
.industry-copy p,
.asset-card p,
.transaction-card p,
.fact-copy p,
.contact-intro,
.notice-inner p,
.footer-brand p,
.copyright {
  text-rendering: geometricPrecision;
}
.text-card p {
  font-size: clamp(12.4px, .98vw, 14.8px);
  line-height: 1.66;
}
.industry-copy p {
  font-size: clamp(11.4px, .94vw, 14px);
  line-height: 1.66;
}
.asset-card p,
.transaction-card p {
  font-size: clamp(11.2px, .91vw, 13.6px);
  line-height: 1.62;
}
.eutm-bar p {
  font-size: clamp(11.2px, .96vw, 14px);
  line-height: 1.58;
}
.fact-copy p {
  font-size: clamp(12.4px, 1vw, 14.6px);
  line-height: 1.86;
}
.contact-intro {
  font-size: clamp(12.4px, 1vw, 14.4px);
  line-height: 1.66;
}
.field input,
.field select,
.field textarea {
  font-size: clamp(12px, .98vw, 14px);
}
.security-note {
  font-size: clamp(11.6px, .93vw, 13.4px);
}
.notice-inner p {
  font-size: clamp(10.8px, .9vw, 12.8px);
  line-height: 1.55;
}
.footer-brand p,
.copyright {
  font-size: clamp(9.6px, .81vw, 12.4px);
}
.compact-card {
  min-height: clamp(132px, 10.9vw, 168px);
}
.industry-card {
  min-height: clamp(315px, 29.2vw, 430px);
}
.asset-card {
  min-height: clamp(140px, 11.8vw, 178px);
}
.transaction-card {
  min-height: clamp(150px, 13.2vw, 205px);
}
.fact-card,
.contact-card {
  min-height: clamp(330px, 31.2vw, 460px);
}
.fact-card-inner {
  grid-template-columns: minmax(185px, 45%) 1fr;
}
.fact-mockup {
  max-width: 335px;
}

@media (min-width: 621px) and (max-width: 820px) {
  .hero-inner {
    min-height: 492px;
    padding-top: 36px;
  }
  .hero-points {
    margin-bottom: 22px;
    font-size: 13.2px;
    line-height: 1.44;
  }
  .hero-points li {
    margin-bottom: 8px;
  }
  .hero-cta {
    width: 306px;
    min-height: 39px;
    margin-bottom: 30px;
    font-size: 11.8px;
  }
  .included-bar {
    min-height: 84px;
  }
  .included-item {
    padding-left: 18px;
    padding-right: 18px;
  }
  .euipo-mark-img {
    width: 52px;
    height: 52px;
    flex-basis: 52px;
  }
  .included-item strong {
    font-size: 17.4px;
  }
  .included-item small {
    font-size: 14px;
  }
  .eutm-bar {
    min-height: 64px;
    margin-top: 10px;
  }
  .eutm-bar p {
    font-size: 11.5px;
    line-height: 1.5;
  }
  .compact-card {
    height: auto;
    min-height: 184px;
    padding: 23px 17px 20px;
    overflow: visible;
  }
  .compact-card h3 {
    font-size: 11.7px;
  }
  .text-card p {
    margin-top: 11px;
    font-size: 12.8px;
    line-height: 1.54;
  }
  .industries-section {
    padding-top: 15px;
  }
  .industry-card {
    height: auto;
    min-height: 318px;
    overflow: hidden;
  }
  .industry-card img {
    height: 146px;
  }
  .industry-copy {
    padding: 13px 9px 14px;
  }
  .industry-copy h3 {
    font-size: 11.1px;
    line-height: 1.24;
  }
  .industry-copy p {
    margin-top: 11px;
    font-size: 10.9px;
    line-height: 1.52;
  }
  .industry-card:last-child .industry-copy h3 {
    font-size: 10.2px;
    letter-spacing: -.045em;
  }
  .asset-card {
    height: auto;
    min-height: 168px;
    padding: 16px 12px;
    overflow: visible;
  }
  .asset-card h3 {
    font-size: 9.9px;
    line-height: 1.27;
  }
  .asset-card p {
    margin-top: 9px;
    font-size: 9.9px;
    line-height: 1.48;
  }
  .transaction-card {
    height: auto;
    min-height: 170px;
    padding: 15px 12px;
    overflow: visible;
  }
  .transaction-card h3 {
    font-size: 9.8px;
    line-height: 1.3;
  }
  .transaction-card p {
    margin-top: 9px;
    font-size: 9.9px;
    line-height: 1.48;
  }
  .fact-contact-section {
    padding-top: 22px;
  }
  .fact-card,
  .contact-card {
    height: auto;
    min-height: 326px;
    padding: 19px 23px 21px;
    overflow: visible;
  }
  .fact-card h2,
  .contact-card h2 {
    margin-bottom: 15px;
    font-size: 13px;
  }
  .fact-card-inner {
    grid-template-columns: 46% 1fr;
    gap: 15px;
  }
  .fact-mockup {
    max-width: 176px;
  }
  .fact-copy p {
    margin-bottom: 18px;
    font-size: 11.8px;
    line-height: 1.66;
  }
  .download-button {
    min-height: 45px;
    font-size: 10.8px;
  }
  .contact-intro {
    margin-bottom: 13px;
    font-size: 11.6px;
    line-height: 1.52;
  }
  .field input,
  .field select,
  .field textarea {
    min-height: 36px;
    font-size: 10.5px;
  }
  .field textarea {
    height: 80px;
  }
  .submit-button {
    min-height: 36px;
  }
  .security-note {
    margin-top: 9px;
    font-size: 9.7px;
  }
  .notice-inner {
    min-height: 44px;
    height: auto;
  }
  .notice-inner p {
    font-size: 9.4px;
    line-height: 1.34;
  }
  .footer-brand p,
  .copyright {
    font-size: 8.4px;
  }
}

@media (max-width: 620px) {
  .hero-inner {
    min-height: 540px;
  }
  .hero-cta {
    margin-bottom: 24px;
  }
  .euipo-mark-img {
    width: 48px;
    height: 48px;
    flex-basis: 48px;
  }
  .fact-card-inner {
    grid-template-columns: minmax(155px, 41%) 1fr;
  }
  .fact-mockup {
    max-width: 290px;
  }
}

@media (max-width: 430px) {
  .fact-card-inner { grid-template-columns: 1fr; }
  .fact-mockup { max-width: min(300px, 92%); margin: 0 auto; }
}


/* 2026-05-13b final fit corrections after preview render */
.industry-copy h3 { overflow-wrap: normal; }
@media (min-width: 621px) and (max-width: 820px) {
  .included-item {
    gap: 10px;
    padding-left: 14px;
    padding-right: 14px;
  }
  .trademark-item {
    padding-left: 13px;
    padding-right: 12px;
    gap: 9px;
  }
  .euipo-mark-img {
    width: 50px;
    height: 50px;
    flex-basis: 50px;
  }
  .included-item strong {
    font-size: 16px;
    letter-spacing: -.01em;
  }
  .included-item small {
    font-size: 13.2px;
  }
  .fact-card-inner {
    grid-template-columns: 50% 1fr;
    gap: 12px;
  }
  .fact-mockup {
    max-width: 190px;
  }
  .fact-copy p {
    font-size: 11.7px;
    line-height: 1.64;
  }
}


/* 2026-05-13e limited requested corrections: added hero bullet fit, EUIPO SVG cache, sharper local industry assets, subtle fact-sheet mockup scale */
.hero-inner {
  min-height: clamp(526px, 50.2vw, 622px);
}

@media (min-width: 621px) and (max-width: 820px) {
  .hero-inner {
    min-height: 520px;
  }
}

.fact-mockup {
  max-width: 360px;
}

@media (min-width: 621px) and (max-width: 820px) {
  .fact-card-inner {
    grid-template-columns: 50% 1fr;
  }
  .fact-mockup {
    max-width: 207px;
  }
}

@media (max-width: 620px) {
  .fact-mockup {
    max-width: 305px;
  }
}

@media (max-width: 430px) {
  .fact-mockup {
    max-width: min(318px, 92%);
  }
}

.fact-mockup {
  transform: rotate(-7deg) scale(1.08);
  transform-origin: center center;
}


/* 2026-05-14a requested production corrections: first-fold fit, form notices, Privacy Notice, card readability */
@media (min-width: 821px) and (max-height: 930px) {
  .hero {
    min-height: calc(100vh - var(--header-h));
    display: flex;
    flex-direction: column;
  }
  .hero-inner {
    flex: 1 1 auto;
    min-height: 0;
    padding-top: clamp(32px, 4.9vh, 44px);
  }
  .hero-copy { width: min(47%, 520px); }
  .hero h1 {
    margin-bottom: 5px;
    font-size: clamp(62px, 6.05vw, 82px);
    line-height: .94;
    letter-spacing: .052em;
  }
  .hero-tagline {
    margin-bottom: 6px;
    font-size: clamp(18px, 1.58vw, 23px);
    line-height: 1.06;
  }
  .hero-subtitle {
    min-height: clamp(40px, 5.2vh, 46px);
    margin-bottom: clamp(13px, 1.9vh, 17px);
    padding-inline: clamp(18px, 2.1vw, 28px);
    font-size: clamp(24px, 2.18vw, 31px);
  }
  .hero-points {
    max-width: 575px;
    margin-bottom: clamp(16px, 2.2vh, 22px);
    font-size: clamp(12px, .99vw, 14px);
    line-height: 1.40;
  }
  .hero-points li {
    margin-bottom: clamp(7px, 1.06vh, 10px);
    padding-left: 27px;
  }
  .hero-cta {
    width: min(100%, 440px);
    min-height: clamp(42px, 5.6vh, 46px);
    margin-bottom: 0;
    font-size: clamp(10.8px, .92vw, 12.4px);
    letter-spacing: .17em;
  }
  .hero-bars { padding-bottom: clamp(9px, 1.5vh, 14px); }
  .included-bar {
    min-height: clamp(76px, 9.8vh, 86px);
    grid-template-columns: minmax(190px, 18.5%) repeat(3, minmax(0, 1fr));
  }
  .included-heading {
    padding-inline: clamp(22px, 2.1vw, 30px);
    font-size: clamp(11.4px, .96vw, 14px);
    line-height: 1.22;
  }
  .included-item { padding-inline: clamp(17px, 1.7vw, 27px); }
  .euipo-mark-img {
    width: clamp(46px, 3.8vw, 56px);
    height: clamp(46px, 3.8vw, 56px);
    flex-basis: clamp(46px, 3.8vw, 56px);
  }
  .included-item svg {
    width: clamp(40px, 3.5vw, 52px);
    height: clamp(40px, 3.5vw, 52px);
    flex-basis: clamp(40px, 3.5vw, 52px);
  }
  .included-item strong { font-size: clamp(15px, 1.28vw, 18px); }
  .included-item small { font-size: clamp(11.5px, 1.02vw, 14px); }
  .eutm-bar {
    min-height: clamp(54px, 7.3vh, 62px);
    margin-top: clamp(8px, 1.2vh, 12px);
    grid-template-columns: minmax(280px, 34%) 1fr;
  }
  .eutm-label {
    padding-inline: clamp(22px, 2vw, 28px);
    font-size: clamp(10.2px, .88vw, 12.2px);
  }
  .eutm-label svg { width: 26px; height: 26px; flex-basis: 26px; }
  .eutm-bar p {
    padding-inline: clamp(22px, 2vw, 28px);
    font-size: clamp(10.4px, .86vw, 12.2px);
    line-height: 1.45;
  }
}

@media (min-width: 821px) {
  .text-card p { font-size: clamp(12.8px, .98vw, 15px); line-height: 1.68; }
  .industry-copy h3 { overflow-wrap: normal; text-wrap: balance; }
  .industry-copy p { font-size: clamp(11.8px, .9vw, 14.2px); line-height: 1.68; }
  .asset-card p,
  .transaction-card p { font-size: clamp(11.3px, .83vw, 13.4px); line-height: 1.62; }
  .fact-copy p,
  .contact-intro,
  .process-note { font-size: clamp(12.8px, .92vw, 14.8px); line-height: 1.70; }
  .fact-card,
  .contact-card { padding: clamp(28px, 2.35vw, 42px) clamp(25px, 2.25vw, 38px); }
}

.process-note {
  margin: -6px 0 clamp(16px, 1.6vw, 24px);
  color: #c8d2dc;
  font-size: clamp(11.6px, .9vw, 13.6px);
  line-height: 1.58;
}
.contact-card {
  box-shadow: inset 0 0 0 1px rgba(255, 208, 116, .035), 0 20px 42px rgba(0, 0, 0, .16);
}
.field input,
.field select,
.field textarea {
  border-color: rgba(206, 132, 28, .42);
  background-color: rgba(1, 10, 18, .58);
}
.field input:focus,
.field select:focus,
.field textarea:focus {
  box-shadow: 0 0 0 2px rgba(240, 160, 0, .10);
}
.security-note {
  align-items: flex-start;
  text-align: center;
}
.security-note span { display: inline-block; }
.security-note a,
.privacy-back a {
  color: var(--gold-soft);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.security-note a:hover,
.privacy-back a:hover { color: var(--gold-bright); }

@media (max-width: 820px) {
  .asset-card p,
  .transaction-card p { font-size: clamp(10.5px, 1.45vw, 12.4px); line-height: 1.55; }
  .industry-copy h3 { text-wrap: balance; overflow-wrap: normal; }
  .industry-copy p { font-size: clamp(11px, 1.55vw, 12.6px); line-height: 1.58; }
  .fact-card,
  .contact-card { height: auto; overflow: visible; }
}

@media (max-width: 620px) {
  .header-inner { position: relative; gap: 8px; }
  .header-inner::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 12px;
    width: 34px;
    height: 34px;
    pointer-events: none;
    background: linear-gradient(90deg, rgba(2, 11, 19, 0), rgba(2, 11, 19, .96) 78%);
  }
  .primary-nav {
    gap: 16px;
    padding-right: 36px;
    padding-bottom: 5px;
    font-size: 9.4px;
    letter-spacing: .038em;
    line-height: 1.1;
    scrollbar-width: thin;
    scrollbar-color: rgba(245, 192, 103, .62) rgba(245, 192, 103, .10);
    -webkit-overflow-scrolling: touch;
    -webkit-mask-image: linear-gradient(90deg, #000 calc(100% - 42px), transparent 100%);
    mask-image: linear-gradient(90deg, #000 calc(100% - 42px), transparent 100%);
  }
  .primary-nav a {
    display: flex;
    align-items: center;
    min-height: 28px;
    flex: 0 0 auto;
  }
  .primary-nav::-webkit-scrollbar { display: block; height: 2px; }
  .primary-nav::-webkit-scrollbar-track { background: rgba(245, 192, 103, .10); }
  .primary-nav::-webkit-scrollbar-thumb { background: rgba(245, 192, 103, .62); border-radius: 999px; }
  .hero-inner { min-height: auto; padding-top: 32px; padding-bottom: 24px; }
  .hero h1 { font-size: clamp(48px, 14.5vw, 62px); }
  .hero-tagline { font-size: clamp(17px, 5.1vw, 20px); line-height: 1.12; }
  .hero-subtitle { min-height: 42px; margin-bottom: 16px; font-size: clamp(23px, 6.4vw, 28px); }
  .hero-points { margin-bottom: 22px; font-size: 13px; line-height: 1.48; }
  .hero-points li { margin-bottom: 8px; }
  .hero-cta { min-height: 46px; margin-bottom: 0; font-size: 11.2px; letter-spacing: .16em; }
  .process-note { margin-top: -4px; margin-bottom: 14px; }
  .security-note { justify-content: flex-start; text-align: left; }
}

.privacy-page { background: var(--bg-deep); }
.privacy-hero {
  min-height: calc(100vh - var(--header-h));
  padding: clamp(42px, 5vw, 78px) 0;
  background:
    linear-gradient(180deg, rgba(3, 13, 23, .94), rgba(4, 17, 29, .96)),
    url("../images/hero-map.jpg?v=20260514a") center top / cover no-repeat;
}
.privacy-card {
  max-width: 980px;
  border: 1px solid var(--line-soft);
  background: linear-gradient(180deg, rgba(5, 22, 37, .88), rgba(2, 13, 24, .94));
  padding: clamp(30px, 4vw, 58px);
  box-shadow: 0 24px 60px rgba(0,0,0,.24);
}
.privacy-card h1 {
  margin: 0 0 18px;
  color: #fff;
  font-size: clamp(32px, 4.2vw, 58px);
  line-height: 1.04;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.privacy-lead {
  margin: 0 0 30px;
  color: #dce5eb;
  font-size: clamp(14px, 1.25vw, 17px);
  line-height: 1.7;
}
.privacy-section { margin-top: 24px; }
.privacy-section h2 {
  margin: 0 0 10px;
  color: var(--gold);
  font-size: clamp(14px, 1.12vw, 17px);
  line-height: 1.35;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.privacy-section p {
  margin: 7px 0;
  color: #d8e2ea;
  font-size: clamp(13px, 1vw, 15px);
  line-height: 1.68;
}
.privacy-bullet { padding-left: 18px; }
.privacy-back { margin: 32px 0 0; }

/* 2026-05-17 typographic readability patch: selective CSS-only readability corrections. */
.primary-nav {
  font-size: clamp(11.5px, .93vw, 12.5px);
  line-height: 1.2;
  letter-spacing: .045em;
}
.hero-points {
  font-size: clamp(13.2px, 1.05vw, 15.5px);
  line-height: 1.58;
}
.eutm-label {
  font-size: clamp(12.2px, .95vw, 13.4px);
  line-height: 1.25;
  letter-spacing: .045em;
}
.eutm-label strong { line-height: 1.25; }
.eutm-bar p {
  font-size: clamp(12.4px, .96vw, 13.6px);
  line-height: 1.62;
}
.text-card p {
  font-size: clamp(12.4px, .98vw, 14.4px);
  line-height: 1.65;
}
.industry-copy h3 {
  font-size: clamp(12px, .95vw, 13.4px);
  line-height: 1.28;
  letter-spacing: .01em;
}
.industry-copy p {
  font-size: clamp(12px, .92vw, 13.2px);
  line-height: 1.62;
}
.asset-card h3,
.transaction-card h3 {
  font-size: clamp(11.7px, .88vw, 12.6px);
  line-height: 1.32;
  letter-spacing: .055em;
}
.asset-card p,
.transaction-card p {
  font-size: clamp(12px, .92vw, 13.2px);
  line-height: 1.62;
}
.fact-copy p,
.contact-intro,
.process-note {
  font-size: clamp(12.2px, .94vw, 13.6px);
  line-height: 1.62;
}
.field input,
.field select,
.field textarea {
  min-height: clamp(44px, 4.1vw, 52px);
  font-size: clamp(12.6px, .96vw, 13.6px);
  line-height: 1.42;
}
.field textarea {
  height: clamp(98px, 8.4vw, 116px);
  padding-top: 13px;
}
.security-note {
  font-size: clamp(11px, .9vw, 12.2px);
  line-height: 1.45;
}
.notice-inner p {
  font-size: clamp(11.2px, .9vw, 12.2px);
  line-height: 1.55;
}
.footer-brand p,
.copyright {
  font-size: clamp(10px, .78vw, 11px);
  line-height: 1.35;
}

@media (min-width: 621px) and (max-width: 820px) {
  .header-inner { gap: 12px; }
  .primary-nav {
    flex: 1 1 auto;
    min-width: 0;
    gap: clamp(9px, 1.45vw, 12px);
    overflow-x: auto;
    padding-bottom: 2px;
    font-size: 11px;
    line-height: 1.18;
    letter-spacing: .018em;
    scrollbar-width: none;
  }
  .primary-nav::-webkit-scrollbar { display: none; }
  .eutm-bar {
    min-height: 72px;
    grid-template-columns: minmax(242px, 35%) 1fr;
  }
  .eutm-label {
    gap: 10px;
    padding: 0 18px;
    font-size: 11.8px;
    line-height: 1.25;
    letter-spacing: .02em;
  }
  .eutm-label svg {
    width: 24px;
    height: 24px;
    flex-basis: 24px;
  }
  .eutm-bar p {
    padding: 10px 20px;
    font-size: 12.2px;
    line-height: 1.5;
  }
  .compact-card {
    min-height: 190px;
    overflow: visible;
  }
  .industry-card {
    min-height: 342px;
    overflow: hidden;
  }
  .industry-copy h3 {
    font-size: 12px;
    line-height: 1.26;
    letter-spacing: 0;
  }
  .industry-copy p {
    font-size: 12px;
    line-height: 1.55;
  }
  .industry-card:last-child .industry-copy h3 {
    font-size: 11.8px;
    letter-spacing: -.02em;
  }
  .asset-card {
    min-height: 190px;
    padding: 16px 12px;
    overflow: visible;
  }
  .transaction-card {
    min-height: 212px;
    padding: 16px 12px;
    overflow: visible;
  }
  .asset-card h3,
  .transaction-card h3 {
    font-size: 11.5px;
    line-height: 1.3;
    letter-spacing: .025em;
  }
  .asset-card p,
  .transaction-card p {
    font-size: 12px;
    line-height: 1.52;
  }
  .fact-card,
  .contact-card {
    min-height: 370px;
    padding: 20px 23px 24px;
    overflow: visible;
  }
  .fact-copy p,
  .contact-intro,
  .process-note {
    font-size: 12.2px;
    line-height: 1.55;
  }
  .field input,
  .field select,
  .field textarea {
    min-height: 40px;
    font-size: 12.6px;
    line-height: 1.4;
  }
  .field textarea {
    height: 92px;
    padding-top: 11px;
  }
  .security-note {
    font-size: 11px;
    line-height: 1.45;
  }
  .notice-inner {
    min-height: 58px;
    height: auto;
    padding: 0 8px 10px;
    align-items: center;
  }
  .notice-inner p {
    font-size: 11.2px;
    line-height: 1.45;
  }
  .footer-brand p,
  .copyright {
    font-size: 10.2px;
    line-height: 1.35;
  }
}

@media (max-width: 620px) {
  .primary-nav {
    font-size: 10.8px;
    line-height: 1.2;
    letter-spacing: .025em;
  }
  .eutm-label {
    min-height: 58px;
    font-size: 12px;
    line-height: 1.25;
    letter-spacing: .025em;
  }
  .eutm-bar p {
    font-size: 12.4px;
    line-height: 1.55;
  }
  .industry-copy h3 {
    font-size: 12.4px;
    line-height: 1.28;
  }
  .industry-copy p,
  .asset-card p,
  .transaction-card p {
    font-size: 12.4px;
    line-height: 1.6;
  }
  .asset-card h3,
  .transaction-card h3 {
    font-size: 12px;
    line-height: 1.32;
  }
  .fact-copy p,
  .contact-intro,
  .process-note {
    font-size: 12.6px;
    line-height: 1.6;
  }
  .field input,
  .field select,
  .field textarea {
    min-height: 44px;
    font-size: 13px;
    line-height: 1.42;
  }
  .field textarea {
    height: 108px;
  }
  .security-note {
    font-size: 11.2px;
    line-height: 1.45;
  }
  .notice-inner p {
    font-size: 11.4px;
    line-height: 1.5;
  }
  .footer-brand p,
  .copyright {
    font-size: 10.5px;
    line-height: 1.35;
  }
}

/* 2026-05-17 readability QA guard: remove prior tablet fixed heights where larger type needs natural card height. */
@media (min-width: 621px) and (max-width: 820px) {
  .compact-card,
  .industry-card,
  .asset-card,
  .transaction-card,
  .fact-card,
  .contact-card {
    height: auto;
  }
}

/* 2026-05-17 tablet QA guard: prevent clipping of the longest industry heading after readability increase. */
@media (min-width: 621px) and (max-width: 820px) {
  .industry-card:nth-child(3) .industry-copy h3 {
    font-size: 11.4px;
    letter-spacing: -.035em;
  }
}
