/* Base reset */
*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

body {
  min-height: 100vh;
  line-height: 1.5;
  overflow-wrap: break-word;
  word-break: normal;
}

img,
picture,
video,
canvas,
svg {
  display: block;
  max-width: 100%;
}

input,
button,
textarea,
select {
  font: inherit;
}

a {
  color: inherit;
  text-decoration: none;
}

ul,
ol {
  list-style: none;
  margin: 0;
  padding: 0;
}

table {
  border-collapse: collapse;
}

/* Shared form styles */
.leadform {
  display: grid;
  gap: 1rem;
  max-width: 36rem;
  width: 100%;
  overflow-wrap: break-word;
  word-break: normal;
  position: relative;
}

.leadform .form-group {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  width: 100%;
  min-width: 0;
  position: relative;
  padding-bottom: 1.2rem; /* reserved so .error-msg never shifts inputs */
}

.leadform label {
  font-weight: 600;
}

.leadform input[type="text"],
.leadform input[type="email"],
.leadform input[type="tel"] {
  width: 100%;
  box-sizing: border-box;
  padding: 0.65rem 0.75rem;
  border: 1px solid #cbd5e1;
  border-radius: 0.375rem;
  background: #fff;
}

/* intl-tel-input: keep full-width control; do not crush the number field */
.leadform .iti {
  display: block;
  width: 100%;
  min-width: 0;
}

.leadform .iti input.iti__tel-input,
.leadform .iti input[type="tel"] {
  width: 100% !important;
  box-sizing: border-box;
  min-height: 2.75rem;
  height: auto !important;
}

.leadform .iti__country-container {
  z-index: 2;
}

.leadform .iti--separate-dial-code .iti__selected-dial-code {
  margin-left: 0.35rem;
  white-space: nowrap;
}

.leadform button[type="submit"] {
  cursor: pointer;
  padding: 0.75rem 1.25rem;
  border: 0;
  border-radius: 0.375rem;
  background: #ea580c;
  color: #fff;
  font-weight: 600;
}

/* Form-level error (leadform-open) must not occupy grid space */
.leadform > .error-msg {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  z-index: 4;
  margin: 0;
  pointer-events: none;
}

.leadform .error-msg {
  color: #b91c1c;
  font-size: 0.8125rem;
  line-height: 1.2;
  font-weight: 600;
}

.leadform .form-group .error-msg {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0;
  min-height: 1.1rem;
}

.leadform .error-msg.hide,
.leadform .hide {
  display: none !important;
}

.form-preloader-orange {
  width: 1.5rem;
  height: 1.5rem;
  border: 3px solid #fed7aa;
  border-top-color: #ea580c;
  border-radius: 50%;
  animation: form-spin 0.8s linear infinite;
}

.form-preloader-orange.hidden {
  display: none;
}

@keyframes form-spin {
  to {
    transform: rotate(360deg);
  }
}

/* Shared template styles */
@font-face {
  font-family: "JetBrains Mono";
  src: url("../fonts/jetbrains-mono-400.woff2") format("woff2");
  font-weight: 400; font-style: normal; font-display: swap;
}

@font-face {
  font-family: "JetBrains Mono";
  src: url("../fonts/jetbrains-mono-500.woff2") format("woff2");
  font-weight: 500; font-style: normal; font-display: swap;
}

@font-face {
  font-family: "JetBrains Mono";
  src: url("../fonts/jetbrains-mono-600.woff2") format("woff2");
  font-weight: 600; font-style: normal; font-display: swap;
}

@font-face {
  font-family: "JetBrains Mono";
  src: url("../fonts/jetbrains-mono-700.woff2") format("woff2");
  font-weight: 700; font-style: normal; font-display: swap;
}

@font-face {
  font-family: "Inter";
  src: url("../fonts/inter-400.woff2") format("woff2");
  font-weight: 400; font-style: normal; font-display: swap;
}

@font-face {
  font-family: "Inter";
  src: url("../fonts/inter-500.woff2") format("woff2");
  font-weight: 500; font-style: normal; font-display: swap;
}

@font-face {
  font-family: "Inter";
  src: url("../fonts/inter-600.woff2") format("woff2");
  font-weight: 600; font-style: normal; font-display: swap;
}

:root {
  --bg: #051424;
  --bg-elev: #0a1c30;
  --bg-panel: #071a2c;
  --border: rgba(147, 204, 255, 0.18);
  --text: #e8f1fa;
  --muted: #8aa4bc;
  --accent: #0284C7;
  --accent-soft: #93CCFF;
  --green: #34d399;
  --amber: #fbbf24;
  --red: #f87171;
  --radius: 0px;
  --font-display: "JetBrains Mono", ui-monospace, monospace;
  --font-body: "Inter", system-ui, sans-serif;
  --max: 1180px;
}

*, *::before, *::after { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  margin: 0;
  background: var(--bg);
  color: var(--text);
  font-family: var(--font-body);
  font-size: 16px;
  line-height: 1.55;
  overflow-wrap: break-word;
  word-break: normal;
}

a { color: var(--accent-soft); text-decoration: none; }

a:hover { color: #fff; }

img { max-width: 100%; display: block; }

h1,h2,h3,h4 { font-family: var(--font-display); font-weight: 700; line-height: 1.2; margin: 0 0 0.75rem; overflow-wrap: break-word; word-break: normal; }

p { margin: 0 0 1rem; overflow-wrap: break-word; word-break: normal; }

.eyebrow {
  font-family: var(--font-display);
  font-size: 0.72rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--muted);
  margin-bottom: 0.6rem;
}

.container { width: min(100% - 2rem, var(--max)); margin-inline: auto; }

.section { padding: 4.5rem 0; }

.section-head { margin-bottom: 2rem; }

.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 0.5rem;
  font-family: var(--font-display); font-size: 0.82rem; font-weight: 500;
  border: 1px solid transparent; border-radius: var(--radius);
  padding: 0.85rem 1.2rem; cursor: pointer; text-decoration: none;
}

.btn-primary { background: var(--accent-soft); color: #04101c; border-color: var(--accent-soft); }

.btn-primary:hover { background: #b8dcff; color: #04101c; }

.btn-ghost { background: transparent; color: var(--accent-soft); border-color: var(--accent); }

.btn-block { width: 100%; }

.hide, .hidden { display: none !important; }

.error-msg { display: block; color: var(--red); font-size: 0.85rem; margin-bottom: 0.75rem; }

.error-msg.hide { display: none !important; }

.form-preloader-orange {
  width: 100%; height: 3px; margin-bottom: 0.75rem;
  background: linear-gradient(90deg, transparent, #f59e0b, transparent);
  animation: pulse 1s infinite;
}

@keyframes pulse { 50% { opacity: 0.4; } }

.site-header {
  position: sticky; top: 0; z-index: 40;
  background: rgba(5,20,36,0.92);
  border-bottom: 1px solid var(--border);
  backdrop-filter: blur(8px);
}

.header-inner {
  display: flex; align-items: center; justify-content: space-between;
  gap: 1rem; min-height: 64px;
}

.brand {
  display: inline-flex; align-items: center; gap: 0.55rem;
  font-family: var(--font-display); font-weight: 700; color: #fff;
  letter-spacing: 0.04em; font-size: 0.92rem;
}

.brand-mark {
  width: 18px; height: 18px;
  background: linear-gradient(135deg, var(--accent), var(--accent-soft));
  clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
}

.nav { display: flex; gap: 1.25rem; flex-wrap: wrap; }

.nav a { color: var(--muted); font-size: 0.88rem; font-family: var(--font-display); }

.nav a:hover { color: #fff; }

.site-footer {
  border-top: 1px solid var(--border);
  padding: 1.5rem 0 2rem;
  background: #030f1b;
}

.footer-inner {
  display: flex; flex-wrap: wrap; gap: 1rem;
  justify-content: space-between; align-items: center;
}

.footer-copy { color: var(--muted); font-size: 0.78rem; margin: 0; }

.footer-links { display: flex; flex-wrap: wrap; gap: 1rem; }

.footer-links a { color: var(--muted); font-size: 0.78rem; font-family: var(--font-display); }

@media (max-width: 820px) {
  .nav { display: none; }
}

.terminal-hero .lead { color: var(--muted); max-width: 42ch; }

.hero-actions { display: flex; flex-wrap: wrap; gap: 0.75rem; margin-top: 1.5rem; }

.feed-body {
  flex: 1; padding: 1rem; font-family: var(--font-display); font-size: 0.78rem;
  line-height: 1.7; color: var(--accent-soft); overflow: auto;
}

.feed-body .ok { color: var(--green); }

.risk-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }

.risk-panel {
  background: var(--bg-panel); border: 1px solid var(--border); padding: 1.25rem;
}

.badge {
  font-family: var(--font-display); font-size: 0.65rem; letter-spacing: 0.08em;
  border: 1px solid var(--border); padding: 0.25rem 0.45rem; color: var(--accent-soft);
}

.meter { margin-bottom: 0.85rem; }

.meter-label {
  display: flex; justify-content: space-between; gap: 0.5rem;
  font-family: var(--font-display); font-size: 0.72rem; color: var(--muted); margin-bottom: 0.35rem;
}

.meter-track { height: 8px; background: #0d2438; border: 1px solid var(--border); }

.meter-fill { height: 100%; background: var(--accent); }

.meter.critical .meter-fill { background: var(--amber); }

.meter.critical .meter-label strong { color: var(--amber); }

.scenario-list { list-style: none; margin: 0; padding: 0; }

.scenario-list li {
  display: flex; justify-content: space-between; gap: 1rem;
  padding: 0.7rem 0; border-bottom: 1px solid var(--border);
  font-family: var(--font-display); font-size: 0.82rem;
}

.scenario-list li:last-child { border-bottom: 0; }

.scenario-list .impact { color: var(--red); }

.workflow-step .num {
  font-family: var(--font-display); color: var(--accent-soft); font-size: 0.85rem; margin-bottom: 0.6rem;
}

.badge-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; }

.gov-badge {
  border: 1px solid var(--border); background: var(--bg-panel);
  text-align: center; padding: 1.4rem 1rem;
}

.gov-icon {
  width: 36px; height: 36px; margin: 0 auto 0.85rem;
  border: 1px solid var(--accent); display: grid; place-items: center;
  color: var(--accent-soft); font-family: var(--font-display); font-size: 0.75rem;
}

.gov-badge h3 { font-size: 0.92rem; }

.gov-badge p { margin: 0; color: var(--muted); font-size: 0.8rem; }

.pillar-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }

.pillar {
  border: 1px solid var(--border); background: var(--bg-panel); padding: 1.35rem;
}

.pillar h3 { font-size: 1rem; }

.pillar p { margin: 0; color: var(--muted); }

.access-panel {
  border: 1px solid var(--border); background: var(--bg-elev);
  padding: 2rem; max-width: 640px; margin: 0 auto;
}

.access-panel .section-head { text-align: center; }

.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0.85rem; margin-bottom: 1rem; }

.field { display: flex; flex-direction: column; gap: 0.35rem; }

.field span {
  font-family: var(--font-display); font-size: 0.68rem; letter-spacing: 0.08em;
  text-transform: uppercase; color: var(--muted);
}

.field input, .field select, .field textarea {
  background: #030d18; border: 1px solid var(--border); border-radius: var(--radius);
  color: var(--text); padding: 0.8rem 0.75rem; font: inherit;
}

.field-full { grid-column: 1 / -1; }

.form-note { color: var(--muted); font-size: 0.78rem; margin: 0.85rem 0 0; text-align: center; }

.legal-doc, .simple-panel {
  border: 1px solid var(--border); background: var(--bg-panel); padding: 2rem; max-width: 800px; margin: 2rem auto;
}

.legal-doc h2, .simple-panel h1 { margin-top: 0; }

.legal-doc h3 { margin-top: 1.5rem; font-size: 1rem; color: var(--accent-soft); }

.mission-points { padding-left: 1.1rem; color: var(--muted); }

.mission-points li { margin-bottom: 0.45rem; }

.page-main { min-height: 60vh; }

.page-hero-lite { padding: 3rem 0 1rem; }

.page-hero-lite h1 { font-size: clamp(1.5rem, 3vw, 2.1rem); }

/* === phone-iti: match other form fields, keep ITI working === */
/* One outline around the whole ITI control (flag switch + number) */
.leadform .iti {
  display: block;
  width: 100%;
  min-width: 0;
  background: #051424;
  border: 1px solid var(--border);
  border-radius: 0;
  box-sizing: border-box;
}

.leadform .iti input.iti__tel-input,
.leadform .iti input[type="tel"],
.leadform .iti input[type="text"] {
  width: 100% !important;
  background: transparent !important;
  color: var(--text) !important;
  border: 0 !important;
  outline: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  caret-color: var(--text);
  /* Keep vertical/right padding; leave padding-left to ITI inline style */
  padding-top: 12px !important;
  padding-bottom: 12px !important;
  padding-right: 12px !important;
  font: inherit !important;
  min-height: auto;
  height: auto !important;
  box-sizing: border-box;
}

.leadform .iti__country-container {
  background: transparent !important;
  border: 0 !important;
  border-right: 1px solid var(--border) !important;
  border-radius: 0 !important;
}

.leadform .iti__selected-country,
.leadform .iti__selected-country-primary {
  background: transparent !important;
  color: var(--text) !important;
}

.leadform .iti__selected-dial-code,
.leadform .iti .iti__selected-dial-code {
  color: var(--text) !important;
}

.leadform .iti__arrow {
  border-top-color: var(--muted) !important;
}

.leadform .iti__arrow--up {
  border-bottom-color: var(--muted) !important;
  border-top-color: transparent !important;
}

.leadform .iti__dropdown-content,
.leadform .iti__country-list {
  background: #0a1c30;
  color: var(--text);
  border: 1px solid var(--border);
  border-radius: 0;
  z-index: 20;
}

.leadform .iti__country-name,
.leadform .iti__dial-code {
  color: var(--text) !important;
}

.leadform .iti__country:hover,
.leadform .iti__country.iti__highlight {
  background: #13212c !important;
}

/* No separate outline on the tel field — wrapper .iti owns the border */
.leadform .form-group input[type="tel"] {
  border: 0 !important;
  background: transparent !important;
  color: var(--text) !important;
}

/* Legal document density */
.legal-doc .legal-intro { margin-bottom: 1.5rem; }

.legal-doc h2 { margin-top: 1.75rem; margin-bottom: 0.65rem; font-size: 1.15rem; }

.legal-doc .legal-list { margin: 0.5rem 0 1.1rem; padding-left: 1.25rem; }

.legal-doc .legal-list li { margin-bottom: 0.4rem; }

.legal-doc .legal-meta { margin-bottom: 1rem; }

:root{--max:1180px}

body{font-family:system-ui,sans-serif}

h1,h2,h3,.brand,.eyebrow,.btn{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}

h1{font-size:clamp(32px,4vw,48px);line-height:1.14}

.lead{max-width:580px;font-size:18px}

.section{padding:64px 0}

.section-head h2{font-size:clamp(24px,3vw,34px);max-width:850px}

.section-head p{color:var(--muted);max-width:750px}

.panel,.card{background:var(--bg-panel);border:1px solid var(--border);padding:26px}

.grid2{display:grid;grid-template-columns:1fr 1fr;gap:24px}

.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}

.card p,.panel p{color:var(--muted);font-size:15px}

.card h3{font-size:19px}

.icon{color:var(--accent-soft);font:24px monospace;margin-bottom:20px}

.formbox{padding:24px;background:#0a1c30;border:1px solid var(--border)}

.formbox h2{font-size:20px}

.formbox label{display:block;font-size:12px;color:var(--muted);margin-bottom:5px}

.fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}

.field.full{grid-column:1/-1}

input,select{width:100%;min-width:0;background:#051424;border:1px solid var(--border);padding:12px;color:var(--text);font:inherit;border-radius:0}

input:focus,select:focus{outline:2px solid var(--accent-soft);outline-offset:2px}

.phone{display:grid;grid-template-columns:95px 1fr;gap:8px}

.consent{display:flex!important;align-items:start;gap:8px;font-size:11px!important;margin:15px 0}

.consent input{width:16px;margin-top:2px;flex-shrink:0}

.formbox .btn{width:100%}

.form-note{font-size:11px!important;line-height:1.5;margin:12px 0 0;color:var(--muted)}

.status-message{margin:12px 0 0;color:var(--green);font-size:13px}

.terminal-row{display:flex;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border);font:12px monospace}

.list{list-style:none;padding:0;margin:20px 0}

.list li{padding:10px 0;border-bottom:1px solid var(--border);color:var(--muted);font-size:14px}

.list li:before{content:'✓ ';color:var(--green)}

.split{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:center}

.alternate{background:#061727;border-block:1px solid var(--border)}

.big-number{font:54px monospace;color:var(--accent-soft);line-height:1.2}

.number{font:14px monospace;color:var(--accent-soft);display:block;margin-bottom:20px}

input[type=range]{padding:0;margin:14px 0;accent-color:var(--accent-soft)}

.banner{padding:28px 32px;border:1px solid var(--border);display:flex;justify-content:space-between;gap:24px;align-items:center;background:linear-gradient(100deg,#0a243d,#071a2c)}

.banner h2{font-size:22px;margin-bottom:8px}

.banner p{margin:0;color:var(--muted)}

.quote{margin:0;color:var(--text);font-size:15px;line-height:1.75}

details{border-bottom:1px solid var(--border);padding:19px 0}

summary{cursor:pointer;list-style:none;font:15px monospace;display:flex;justify-content:space-between;gap:20px}

summary:after{content:'+';color:var(--accent-soft)}

details[open] summary:after{content:'−'}

details p{font-size:14px;color:var(--muted);margin-top:16px;max-width:640px}

.dev-note{display:none;background:#122b40;border-left:3px solid var(--accent-soft);padding:14px;font:12px/1.6 monospace;margin:18px 0;color:#b8dcff}

.show-notes .dev-note{display:block}

.reviewbar{background:#020d18;border-bottom:1px solid var(--border);font:11px monospace;padding:9px 16px;display:flex;justify-content:space-between;align-items:center;gap:16px}

.reviewbar button{color:var(--accent-soft);border:1px solid var(--border);background:transparent;padding:6px 10px;cursor:pointer}

.footer-columns{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px;margin-bottom:30px}

.footer-columns a{display:block;font-size:13px;margin:10px 0}

.footer-columns p{color:var(--muted);font-size:13px;max-width:440px}

dialog{max-width:650px;width:calc(100% - 32px);background:var(--bg-elev);color:var(--text);border:1px solid var(--border);padding:30px}

dialog::backdrop{background:#000b}

.mobile-toggle{display:none}

.nav a{font-size:12px}

.access-panel{padding:32px}

.footer-copy{line-height:1.6}

section[id]{scroll-margin-top:90px}

:focus-visible{outline:2px solid var(--accent-soft);outline-offset:4px}

button{font-family:inherit}

.smallheading{font-size:18px}

@media(max-width:540px){.grid2,.grid3,.grid4{grid-template-columns:1fr}.fields{grid-template-columns:1fr}.field{grid-column:1/-1}.section{padding:44px 0}.brand{font-size:11px}.formbox,.panel,.card{padding:20px}.access-panel{padding:20px}.reviewbar{font-size:9px}.grid4.workflow-grid{grid-template-columns:1fr}.stats strong{font-size:22px}.terminal-hero{gap:28px}.signal-grid{grid-template-columns:1fr 1fr}.signal-card .value{font-size:20px}.feed-title{font-size:9px}.feed-live{font-size:9px}}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important}}

.subpage-hero{padding:54px 0 24px}

.breadcrumbs{color:var(--muted);font:12px monospace;margin-bottom:26px}

.legal-doc{max-width:840px;margin:auto}

.legal-doc h1{margin-bottom:24px}

.legal-doc h2{font-size:23px;margin-top:34px}

.legal-doc p,.legal-doc li{color:var(--muted);line-height:1.8}

.legal-doc ul{padding-left:22px}

.legal-meta{font-size:12px}

.simple-panel{max-width:760px;margin:auto;padding:42px;border:1px solid var(--border);background:var(--bg-panel)}

.nav a[aria-current=page]{color:var(--accent-soft);text-decoration:underline;text-underline-offset:6px}

.page-main{min-height:55vh}

.page-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:26px}

.support-details{margin-top:24px}

.support-details dt{font-size:12px;color:var(--accent-soft);margin-top:16px}

.support-details dd{margin:5px 0;color:var(--muted)}

.legal-doc .dev-note{color:#b8dcff}

/* Package adaptations */
body.template-stitch-mult-land2 .dev-note,
body.template-stitch-mult-land2 .ref-bar { display: none !important; }

body.template-stitch-mult-land2 { margin: 0; }

.site-main { display: block; }

.leadform.formbox,
.formbox.leadform {
  display: grid;
  gap: 0;
  max-width: none;
}

.leadform .fields {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.85rem;
}

.leadform .form-group,
.leadform .field {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  min-width: 0;
  position: relative;
  /* Reserve room under the control so absolute .error-msg does not overlap ITI */
  padding-bottom: 1.35rem;
}

.leadform .form-group .error-msg,
.leadform .field .error-msg {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0;
  min-height: 1.1rem;
  line-height: 1.2;
  z-index: 1;
  pointer-events: none;
}

.leadform .field.full,
.leadform .form-group.full { grid-column: 1 / -1; }

.leadform label { font-weight: 500; color: var(--muted); font-size: 0.82rem; font-family: var(--font-display); }

.leadform input[type="text"],
.leadform input[type="email"],
.leadform input[type="tel"] {
  width: 100%; box-sizing: border-box;
  padding: 0.75rem 0.85rem;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  background: var(--bg);
  color: var(--text);
  font: inherit;
}

.leadform button[type="submit"],
.leadform .btn-primary { width: 100%; margin-top: 0.5rem; }

.leadform .consent { display: flex; gap: 0.6rem; align-items: flex-start; font-size: 0.82rem; color: var(--muted); margin: 0.75rem 0; }

.leadform .consent a { color: var(--accent-soft); }

.leadform .error-msg { color: var(--red); font-size: 0.8rem; }

.leadform .hide, .leadform .hidden { display: none !important; }

.nav.open { display: flex; }

@media (max-width: 900px) {
  .leadform .fields { grid-template-columns: 1fr; }
}

.block-legal .legal-doc, .legal-doc { max-width: 48rem; }

.block-legal h1, .legal-doc h1 { font-size: clamp(1.8rem, 3vw, 2.4rem); }

.block-legal h2, .legal-doc h2 { margin-top: 1.75rem; font-size: 1.1rem; }

.block-legal p, .legal-doc p { color: var(--muted); }

.block-legal ul, .legal-doc ul { color: var(--muted); padding-left: 1.2rem; }

.block-thankyou, .block-not-found { padding: 4.5rem 0; text-align: left; }

.page-hero { padding: 3rem 0 1rem; }

.breadcrumbs { color: var(--muted); font-size: 0.82rem; margin-bottom: 1.25rem; font-family: var(--font-display); }

.breadcrumbs a { color: var(--muted); }

/* Light boreal form overrides for mult-land2 */
body.template-stitch-mult-land2 .leadform input[type="text"]:not(.iti__tel-input),
body.template-stitch-mult-land2 .leadform input[type="email"],
body.template-stitch-mult-land2 .leadform input[type="number"],
body.template-stitch-mult-land2 .leadform input[type="tel"]:not(.iti__tel-input) {
  background: #fff;
  color: #18362f;
  border: 1px solid #dce6df;
  border-radius: 12px;
  padding: 12px 14px;
  font: inherit;
}

body.template-stitch-mult-land2 .leadform .iti {
  background: #fff !important;
  border: 1px solid #dce6df !important;
  border-radius: 12px !important;
}

body.template-stitch-mult-land2 .leadform .iti input.iti__tel-input,
body.template-stitch-mult-land2 .leadform .iti input[type="tel"],
body.template-stitch-mult-land2 .leadform .iti input[type="text"],
body.template-stitch-mult-land2 .leadform .form-group input[type="tel"] {
  background: transparent !important;
  color: #18362f !important;
  border: 0 !important;
  box-shadow: none !important;
  padding-top: 12px !important;
  padding-bottom: 12px !important;
  padding-right: 12px !important;
}

body.template-stitch-mult-land2 .leadform .iti__country-container,
body.template-stitch-mult-land2 .leadform .iti__selected-country,
body.template-stitch-mult-land2 .leadform .iti__selected-country-primary {
  background: transparent !important;
  color: #18362f !important;
}

body.template-stitch-mult-land2 .leadform .iti__country-container {
  border-right: 1px solid #dce6df !important;
  /* Gap after dial code; included in ITI width measure via selected-country padding */
  padding-right: 0 !important;
  box-sizing: border-box;
}

body.template-stitch-mult-land2 .leadform .iti__selected-country {
  padding-right: 18px !important;
}

body.template-stitch-mult-land2 .leadform .iti__selected-dial-code {
  color: #18362f !important;
  margin-right: 4px;
}

body.template-stitch-mult-land2 .leadform .iti__dropdown-content,
body.template-stitch-mult-land2 .leadform .iti__country-list {
  background: #fff !important;
  color: #18362f !important;
  border: 1px solid #dce6df !important;
}

body.template-stitch-mult-land2 .leadform label { color: #52665e; }

/* Default submit (non-formbox): dark green on light pages */
body.template-stitch-mult-land2 .leadform:not(.formbox) button[type="submit"] {
  background: #004938;
  color: #fff;
  border: 1px solid #004938;
  border-radius: 999px;
  font-family: var(--font-body);
  padding: 0.85rem 1.2rem;
  cursor: pointer;
}

body.template-stitch-mult-land2 .leadform:not(.formbox) button[type="submit"]:hover {
  background: #005a47;
}

/* Hero/access formbox: lime CTA + links must contrast on dark green panel */
body.template-stitch-mult-land2 .formbox.leadform button[type="submit"],
body.template-stitch-mult-land2 .leadform.formbox button[type="submit"],
body.template-stitch-mult-land2 .formbox .btn,
body.template-stitch-mult-land2 .formbox .btn-primary {
  background: #d6fa03 !important;
  color: #123524 !important;
  border: 0 !important;
  border-radius: 10px !important;
  font-size: 16px !important;
  min-height: 53px !important;
  box-shadow: 0 6px 18px rgba(0, 40, 30, 0.25) !important;
}

body.template-stitch-mult-land2 .formbox.leadform button[type="submit"]:hover,
body.template-stitch-mult-land2 .formbox .btn:hover,
body.template-stitch-mult-land2 .formbox .btn-primary:hover {
  background: #e3ff48 !important;
  color: #123524 !important;
}

body.template-stitch-mult-land2 .formbox a,
body.template-stitch-mult-land2 .formbox .consent a {
  color: #d6fa03 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}

body.template-stitch-mult-land2 .nav.open {
  display: flex;
  flex-direction: column;
  position: absolute;
  top: 64px; left: 0; right: 0;
  background: rgba(255,255,255,0.98);
  padding: 1rem;
  border-bottom: 1px solid #e6eee9;
  gap: 0.75rem;
}

@media (min-width: 901px) {
  body.template-stitch-mult-land2 .nav { display: flex; }
  body.template-stitch-mult-land2 .mobile-toggle { display: none; }
}

/* === Boreal theme (ref2) — primary visual for mult-land2 === */
/* Boreal-inspired visual theme. Presentation only; content and behavior unchanged. */
:root{--bg:#fff;--bg-panel:#fff;--bg-elev:#f1f6f2;--text:#18362f;--muted:#52665e;--border:#dce6df;--accent:#004938;--accent-soft:#005a47;--green:#087351;--amber:#6e6309;--red:#b13c39;--radius:20px;--font-display:"Inter",system-ui,sans-serif;--font-body:"Inter",system-ui,sans-serif;--max:1280px;color-scheme:light}

body{background:#fff;color:var(--text);font-family:var(--font-body);font-size:16px;line-height:1.7}

body:before{display:none}

h1,h2,h3,h4,.brand,.eyebrow,.btn,summary,.tab,.stat strong,.signal-card .value{font-family:var(--font-body);letter-spacing:-.025em}

h1,h2,h3,h4{color:#004938;font-weight:600}

h1{font-size:clamp(34px,4.5vw,60px);line-height:1.12}

h2,.section-head h2{font-size:clamp(28px,3.3vw,44px);line-height:1.18;max-width:850px}

h3{line-height:1.35}

a{color:#005a47}

a:hover{color:#12815e}

.container{width:min(100% - 64px,var(--max))}

.site-header{background:rgba(255,255,255,.97);border-bottom:1px solid #e6eee9;backdrop-filter:blur(14px);box-shadow:0 4px 20px #003b2c06}

.header-inner{min-height:88px;gap:24px}

.brand{color:#004938;font-size:20px;font-weight:700;letter-spacing:-.04em;white-space:nowrap}

.brand:hover{color:#004938}

.brand-mark{width:25px;height:25px;background:#d6fa03;border:6px solid #004938;border-radius:50% 50% 50% 4px;clip-path:none;transform:rotate(-18deg)}

.nav{gap:20px}

.nav a{color:#3f514a;font:500 13px var(--font-body)}

.nav a:hover,.nav a[aria-current=page]{color:#004938}

.btn{border-radius:9px;font:600 14px var(--font-body);padding:15px 24px;min-height:48px;transition:background .2s,box-shadow .2s,transform .2s;letter-spacing:0}

.btn-primary{background:#d6fa03;border-color:#d6fa03;color:#143226;box-shadow:0 5px 14px #003b2c0a}

.btn-primary:hover{background:#e3ff48;border-color:#e3ff48;color:#143226;transform:translateY(-1px)}

.btn-ghost{background:#fff;color:#004938;border-color:#9cb6a9}

.btn-ghost:hover{background:#edf5ef;color:#004938}

.section{padding:90px 0}

.section-head{margin-bottom:36px}

.section-head p{font-size:17px;line-height:1.75;max-width:760px}

.eyebrow,.hero-status{font:600 11px var(--font-body);letter-spacing:.13em;color:#53705e}

.page-index .site-main{background:radial-gradient(ellipse 650px 600px at 93% 7%,#ecf3df 0,transparent 80%),#fff}

.terminal-hero .lead{font-size:18px;line-height:1.75;max-width:53ch;color:#50635b}

.hero-actions{margin-top:26px;gap:14px}

.terminal-hero>div>.form-note{text-align:left;max-width:58ch;font-size:12px!important;color:#62766b}

.formbox{background:linear-gradient(150deg,#005a47,#00382c);border:1px solid #004938;border-radius:28px;padding:32px;color:#fff;box-shadow:0 22px 55px #003c2c22;max-width:none;gap:12px;--muted:#d1e1da;--text:#fff}

.formbox .eyebrow{color:#d6fa03;text-align:center;letter-spacing:.13em;margin:0 0 4px}

.formbox h2{color:#fff;text-align:center;font-size:28px;margin:0 0 4px}

.formbox h2:after{content:"";display:block;width:44px;height:3px;background:#d6fa03;margin:16px auto 0;border-radius:2px}

.formbox p,.formbox .form-note{color:#d1e1da}

.formbox .fields{gap:14px}

.formbox .form-group{padding-bottom:0;gap:6px}

.formbox label{color:#e0ece5;font:500 12px var(--font-body);margin:0}

.formbox input:not([type=checkbox]),.formbox .form-group input[type=tel]{background:#fff!important;color:#19382d!important;border:1px solid #e0e9e1!important;border-radius:10px!important;min-height:49px;padding:12px 14px;box-shadow:none}

.formbox input::placeholder{color:#78867e}

.formbox input:focus{outline:2px solid #d6fa03;outline-offset:2px}

.formbox .consent{color:#d1e1da;line-height:1.6;margin:4px 0!important;font-size:11px!important}

.formbox .consent input{appearance:auto;accent-color:#d6fa03;width:16px;height:16px;min-height:0;padding:0;background:#fff;border:0}

.formbox a{color:#d6fa03;text-decoration:underline;text-underline-offset:3px}

.formbox .btn{background:#d6fa03;color:#123524;border:0;border-radius:10px;font-size:16px;min-height:53px}

.formbox .btn:hover{background:#e3ff48}

.formbox .form-note[role=note]{padding-top:12px;border-top:1px solid #ffffff25;color:#c4d8cd}

.terminal-row{font:500 12px var(--font-body);color:#395a48;border-color:#dce7dc;gap:12px}

.terminal-row span:last-child{text-align:right}

.alternate{background:#f3f7ef;border-block:0}

.panel,.card,.signal-card,.workflow-step,.risk-panel,.access-panel,.legal-doc,.simple-panel{border:1px solid #dce6df;border-radius:22px;background:#fff;box-shadow:0 8px 24px #1b412c04}

.panel,.card{padding:30px}

.card h3{font-size:21px}

.card p,.panel p{font-size:15px;line-height:1.75;color:#52665e}

.icon,.number,.workflow-step .num{color:#004938}

.workflow-step .num{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:#d6fa03;font:600 14px var(--font-body);margin-bottom:22px}

.list li{font-size:15px;padding:13px 0;color:#52665e}

.list li:before{color:#17714f}

input:not([type=checkbox]),select,textarea{background:#fff;border:1px solid #bdcfc1;border-radius:10px;color:#173c2e;padding:12px}

input[type=range]{accent-color:#005a47;background:transparent}

.big-number{font-family:var(--font-body);color:#004938}

.quote{color:#52665e}

summary:after{color:#004938;font-size:20px}

.banner{background:#edf4e6;border:1px solid #d8e6cd;border-radius:24px;padding:38px}

.legal-doc,.simple-panel{padding:40px;max-width:940px;margin:48px auto}

.legal-doc h2{font-size:24px}

.legal-doc h3{color:#004938;font-size:20px}

.legal-doc p,.legal-doc li{line-height:1.85;color:#52665e}

.legal-doc a{text-decoration:underline}

.page-hero-lite{padding:64px 0 28px}

.page-hero-lite h1{font-size:clamp(34px,4vw,54px)}

.site-footer{background:#08271e;border:0;padding:60px 0 30px;--muted:#b6cbbf;--accent-soft:#d6fa03;--text:#edf4ef;--border:#ffffff20}

.site-footer .brand{color:#fff}

.site-footer .brand-mark{border-color:#fff;background:#d6fa03;box-shadow:0 0 0 1px #004938}

.site-footer .eyebrow{color:#d6fa03}

.site-footer a{color:#dce8df}

.site-footer a:hover{color:#d6fa03}

.site-footer p,.site-footer .micro{color:#b6cbbf}

.footer-copy{font-size:12px;line-height:1.8}

.footer-inner{padding-top:22px;border-top:1px solid #ffffff20}

.mobile-toggle{color:#004938!important;background:#eff5ea!important;border:1px solid #d1e0d2!important;border-radius:8px}

:focus-visible{outline:3px solid #4c9b73;outline-offset:4px}

.formbox :focus-visible{outline-color:#d6fa03}

@media(min-width:1001px){.terminal-hero>div:last-child{padding-top:12px}.formbox{position:relative}.split{gap:64px}}

@media(max-width:1100px){.container{width:calc(100% - 40px)}.header-inner{gap:14px}.nav{gap:12px}.nav a{font-size:12px}.brand{font-size:17px}.terminal-hero{gap:36px;grid-template-columns:minmax(0,1fr) minmax(320px,.85fr)}.header-inner>.btn{padding:12px 16px;font-size:12px}.stat{padding:22px 18px}.stat strong{font-size:19px}}

@media(max-width:600px){.container{width:calc(100% - 32px)}.header-inner{gap:10px}.header-inner>.btn{padding:10px;font-size:10px;min-height:38px}.brand{font-size:16px}.brand-mark{width:21px;height:21px;border-width:5px}.terminal-hero{padding-top:30px}.terminal-hero h1{font-size:36px;line-height:1.15;max-width:100%}.hero-status{font-size:9px;letter-spacing:.07em}.terminal-hero .lead{font-size:16px}.hero-actions .btn{flex:1;font-size:12px;padding:13px}.formbox{padding:25px 20px;border-radius:22px}.formbox h2{font-size:25px}.fields{grid-template-columns:1fr;gap:12px}.section{padding:48px 0}.section-head h2{font-size:30px}.section-head p{font-size:16px}.grid2,.grid3,.grid4,.signal-grid,.workflow-grid,.risk-grid{grid-template-columns:1fr}.panel,.card,.signal-card{padding:24px}.stat{padding:20px 14px}.stat strong{font-size:17px}.stat span{font-size:11px}.terminal-row{font-size:11px}.feed-title{font-size:9px}.feed-foot{font-size:9px}.tabs{width:100%;display:grid;grid-template-columns:1fr}.tab{text-align:left}.comparison th,.comparison td{padding:15px 14px}.comparison{font-size:13px}.comparison td:first-child{min-width:105px}.faq-layout summary,.faq-accordion summary{padding:18px;font-size:14px}.faq-layout details p,.faq-accordion-panel{padding:0 18px 18px}.legal-doc,.simple-panel{padding:24px;margin:24px auto}.site-footer{padding-top:42px}.footer-columns{gap:28px}.footer-inner{align-items:flex-start}.section-head{margin-bottom:26px}}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}.btn:hover{transform:none}}

@keyframes lv-scroll{to{transform:translateX(-50%)}}

/* mult-land2 UI fixes: ITI gap, formbox contrast, footer mark */
body.template-stitch-mult-land2 .leadform .iti__selected-country {
  display: flex !important;
  align-items: center !important;
  padding: 0 14px 0 8px !important;
  gap: 6px !important;
}

body.template-stitch-mult-land2 .leadform .iti__selected-dial-code {
  margin-right: 0 !important;
  padding-right: 2px !important;
}

body.template-stitch-mult-land2 .leadform .iti__selected-country-primary {
  gap: 8px !important;
}

body.template-stitch-mult-land2 .formbox.leadform label,
body.template-stitch-mult-land2 .leadform.formbox label,
body.template-stitch-mult-land2 .formbox .consent,
body.template-stitch-mult-land2 .formbox label.consent {
  color: #d1e1da !important;
}

body.template-stitch-mult-land2 .formbox a,
body.template-stitch-mult-land2 .formbox .consent a {
  color: #d6fa03 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}

body.template-stitch-mult-land2 .formbox.leadform button[type="submit"],
body.template-stitch-mult-land2 .leadform.formbox button[type="submit"],
body.template-stitch-mult-land2 .formbox .btn,
body.template-stitch-mult-land2 .formbox .btn-primary {
  background: #d6fa03 !important;
  color: #123524 !important;
  border: 0 !important;
  border-radius: 10px !important;
  font-size: 16px !important;
  min-height: 53px !important;
  box-shadow: 0 6px 18px rgba(0, 40, 30, 0.25) !important;
}

body.template-stitch-mult-land2 .formbox.leadform button[type="submit"]:hover,
body.template-stitch-mult-land2 .formbox .btn:hover,
body.template-stitch-mult-land2 .formbox .btn-primary:hover {
  background: #e3ff48 !important;
  color: #123524 !important;
}

body.template-stitch-mult-land2 .brand-mark {
  display: inline-block;
  flex-shrink: 0;
  box-sizing: border-box !important;
  width: 28px !important;
  height: 28px !important;
  background: #d6fa03 !important;
  border: 5px solid #004938 !important;
  border-radius: 50% 50% 50% 5px !important;
  clip-path: none !important;
  transform: rotate(-18deg);
  vertical-align: middle;
}

body.template-stitch-mult-land2 .site-footer .brand-mark {
  background: #d6fa03 !important;
  border: 5px solid #d6fa03 !important;
  box-shadow: inset 0 0 0 3px #08271e;
}

body.template-stitch-mult-land2 .site-footer .brand {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

/* buyers-land-iti-harden */
/* Do not pad the country shell — ITI sets input padding-left from measured dial width. */
body.template-stitch-mult-land1 .leadform .iti__country-container {
  padding-right: 0 !important;
  box-sizing: border-box !important;
}
/* Never use padding shorthand on ITI tel input — it would reset padding-left. */
body.template-stitch-mult-land1 .leadform .iti input.iti__tel-input,
body.template-stitch-mult-land1 .leadform .iti input[type="tel"],
body.template-stitch-mult-land1 .leadform .iti input[type="text"],
body.template-stitch-mult-land1 .leadform .form-group input.iti__tel-input {
  padding-top: 12px !important;
  padding-bottom: 12px !important;
  padding-right: 12px !important;
  /* padding-left intentionally omitted — inline style from intl-tel-input */
}
.leadform .iti input.iti__tel-input,
.leadform .iti input[type="tel"],
.leadform .iti input[type="text"] {
  padding-top: 12px !important;
  padding-bottom: 12px !important;
  padding-right: 12px !important;
}
.leadform .iti__country-container {
  padding-right: 0 !important;
  box-sizing: border-box !important;
}
