:root {
  --landing-ink: #0b1728;
  --landing-copy: #304158;
  --landing-muted: #65758a;
  --landing-page: #eef2f7;
  --landing-white: #ffffff;
  --landing-blue: #075dff;
  --landing-blue-dark: #0046ca;
  --landing-coral: #9b2d21;
  --landing-coral-soft: #ffe3de;
  --landing-line: #d6e0eb;
}

* { box-sizing: border-box; }

html { min-width: 0; overflow-x: hidden; background: var(--landing-page); }

body {
  min-height: 100vh;
  margin: 0;
  color: var(--landing-copy);
  background: var(--landing-page);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 18px;
}

a { -webkit-tap-highlight-color: transparent; }

.landing-header {
  width: min(100% - 32px, 1080px);
  margin: 0 auto;
  padding: 25px 0 18px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.landing-brand {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  color: var(--landing-blue);
  font-size: 1.04rem;
  font-weight: 780;
  letter-spacing: 0.02em;
  text-decoration: none;
}

.landing-brand-mark { display: grid; width: 23px; height: 27px; place-items: center; }
.landing-brand-mark svg { width: 100%; height: 100%; fill: none; stroke: var(--landing-blue); stroke-width: 2.7; stroke-linejoin: round; }
.landing-brand-mark path:last-child { stroke-width: 3.2; stroke-linecap: round; stroke-linejoin: round; }
.landing-header-note { color: #63748a; font-size: 0.68rem; font-weight: 760; letter-spacing: 0.14em; }

.landing-shell { width: min(100% - 32px, 1080px); margin: 0 auto; padding: 17px 0 40px; }
.landing-card { display: grid; overflow: hidden; background: var(--landing-white); border: 1px solid var(--landing-line); box-shadow: 0 14px 40px rgba(24, 52, 85, 0.1); }
.landing-media { position: relative; min-height: 315px; overflow: hidden; }
.landing-media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(5, 19, 37, 0.02), rgba(5, 19, 37, 0.24)); pointer-events: none; }
.landing-media img { display: block; width: 100%; height: 100%; min-height: 315px; object-fit: cover; object-position: center 44%; }
.landing-media-label { position: absolute; z-index: 1; right: 14px; bottom: 14px; padding: 8px 10px; color: #ffffff; background: rgba(7, 27, 50, 0.78); border: 1px solid rgba(255, 255, 255, 0.34); border-radius: 4px; font-size: 0.65rem; font-weight: 800; letter-spacing: 0.12em; }

.landing-copy { padding: 31px 24px 29px; }
.landing-eyebrow { display: block; margin-bottom: 14px; color: #0b6fae; font-size: 0.76rem; font-weight: 800; letter-spacing: 0.13em; }
.landing-copy h1 { margin: 0; color: var(--landing-ink); font-size: clamp(2.35rem, 8.4vw, 4.2rem); font-weight: 560; line-height: 1.12; letter-spacing: -0.045em; overflow: visible; overflow-wrap: break-word; }
.landing-copy h1 span { display: inline; padding: 0.045em 0.08em 0.10em; color: var(--landing-coral); background: var(--landing-coral-soft); border-radius: 0.15em; box-decoration-break: clone; -webkit-box-decoration-break: clone; line-height: 1.18; }
.landing-subhead { max-width: 620px; margin: 21px 0 27px; color: var(--landing-copy); font-size: 1.12rem; line-height: 1.5; }
.landing-cta { display: flex; min-height: 64px; align-items: center; justify-content: center; gap: 14px; padding: 14px 22px; color: #ffffff; background: var(--landing-blue); border: 2px solid var(--landing-blue); border-radius: 9px; box-shadow: 0 9px 20px rgba(7, 93, 255, 0.2); font-size: 1.12rem; font-weight: 800; text-decoration: none; }
.landing-cta:hover { background: var(--landing-blue-dark); border-color: var(--landing-blue-dark); }
.landing-cta:focus-visible { outline: 4px solid #bcd3ff; outline-offset: 3px; }
.landing-cta span { font-size: 1.35rem; line-height: 1; }
.landing-trust { display: grid; gap: 9px; margin-top: 20px; color: var(--landing-muted); font-size: 0.88rem; }
.landing-trust span { display: inline-flex; gap: 8px; align-items: center; }
.landing-trust i { display: grid; width: 19px; height: 19px; place-items: center; color: #0c8a62; border: 1px solid #9bd7c3; border-radius: 50%; font-size: 0.7rem; font-style: normal; font-weight: 800; }
.landing-disclaimer { margin: 16px auto 0; color: var(--landing-muted); font-size: 0.78rem; line-height: 1.45; text-align: center; }

@media (min-width: 760px) {
  .landing-header { padding-top: 32px; }
  .landing-shell { padding-top: 35px; }
  .landing-card { grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr); min-height: 620px; }
  .landing-media { min-height: 620px; order: 2; }
  .landing-media img { min-height: 620px; }
  .landing-copy { display: flex; flex-direction: column; justify-content: center; padding: 58px clamp(38px, 6vw, 84px); }
  .landing-copy h1 { font-size: clamp(2.25rem, 5vw, 3.6rem); }
  .landing-cta { max-width: 420px; }
  .landing-trust { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 600px) {
  .landing-header, .landing-shell { width: min(100% - 20px, 1080px); }
  .landing-header { padding-top: 22px; }
  .landing-header-note { display: none; }
  .landing-shell { padding-top: 8px; }
  .landing-media { height: 340px; min-height: 340px; }
  .landing-media img { height: 340px; min-height: 340px; }
  .landing-copy { padding: 28px 20px 25px; }
  .landing-copy h1 { font-size: clamp(2.35rem, 11vw, 3rem); }
  .landing-subhead { font-size: 1.08rem; }
  .landing-trust { font-size: 0.84rem; }
}
