.brand {
  font-size:1.8rem;
  font-weight:800;
  display:flex;
  align-items:center;
  letter-spacing:-.075em;
  line-height:1;
}
.brand>span {
  font-weight:450;
}
.brand svg {
  height:40px;
  width:40px;
  margin-right:8px;
  stroke:var(--ink);
  stroke-width:4.5;
  fill:none;
}
.button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:25px;
  background:var(--accent);
  color:var(--accent-ink);
  font-weight:650;
  font-size:1rem;
  min-height:52px;
  padding:14px 22px;
  border:0;
  border-radius:var(--radius-sm);
  transition:filter .2s,transform .2s;
}
.button:hover {
  filter:brightness(.94);
  transform:translateY(-1px);
}
.button.small {
  min-height:44px;
  font-size:.875rem;
  padding:11px 17px;
  gap:16px;
}
.button span {
  font-size:1.2em;
}
.text-link {
  font-weight:600;
  font-size:.9375rem;
}
.text-link span {
  margin-left:8px;
}
.eyebrow {
  font-size:.75rem;
  font-weight:750;
  letter-spacing:.13em;
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:22px;
}
.line {
  height:2px;
  width:28px;
  background:var(--ink);
}
h1 em {
  font-style:normal;
  color:var(--highlight);
}
.lead {
  font-size:1.125rem;
  line-height:1.8;
  max-width:470px;
  margin-top:26px;
}
.quiet {
  font-size:.8125rem;
  margin-top:18px;
}
.photo-label {
  position:absolute;
  left:26px;
  top:25px;
  color:var(--image-label);
  font-size:.6875rem;
  letter-spacing:.16em;
  font-weight:700;
  text-shadow:0 1px 8px var(--image-shadow);
}
.ride-card {
  position:absolute;
  bottom:24px;
  left:24px;
  right:24px;
  background:var(--paper);
  padding:22px;
  border-radius:var(--radius);
  box-shadow:0 8px 35px var(--card-shadow);
}
.ride-card-top {
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-size:.875rem;
  font-weight:650;
}
.tag {
  font-size:.6875rem;
  letter-spacing:.05em;
  padding:4px 7px;
  background:var(--soft);
  border-radius:var(--radius-tag);
  font-weight:700;
  white-space:nowrap;
}
.ride-stats {
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:14px;
  margin:20px 0;
}
.ride-stats>div {
  display:flex;
  flex-direction:column;
  border-right:1px solid var(--border);
}
.ride-stats>div:last-child {
  border:0;
}
.ride-stats strong {
  font-size:2rem;
  letter-spacing:-.04em;
  line-height:1.2;
}
.ride-stats span {
  font-size:.75rem;
  color:var(--muted);
  margin-top:7px;
}
.ride-bottom {
  border-top:1px solid var(--border);
  padding-top:12px;
  display:flex;
  justify-content:space-between;
  font-size:.75rem;
  color:var(--muted);
}
.principles {
  font-size:.875rem;
  font-weight:500;
  color:var(--muted);
}
.feature {
  background:var(--soft);
  padding:30px;
  border-radius:var(--radius);
  display:flex;
  flex-direction:column;
}
.feature-top {
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:40px;
}
.number {
  font-size:.75rem;
  font-weight:650;
  letter-spacing:.07em;
}
.status {
  font-size:.6875rem;
  border:1px solid var(--border);
  padding:3px 6px;
  border-radius:var(--radius-tag);
  color:var(--muted);
}
.feature h3 {
  font-size:1.625rem;
  line-height:1.2;
}
.feature p {
  margin-top:20px;
  font-size:1rem;
  flex:1;
}
.feature-note {
  border-top:1px solid var(--border);
  padding-top:18px;
  margin-top:30px;
  font-size:.8125rem;
  font-weight:550;
}
.calculator-section .eyebrow {
  color:var(--accent);
}
.calculator-section .lead {
  color:var(--on-dark-muted);
}
.calculator-context {
  font-size:.875rem;
  color:var(--on-dark-secondary);
  max-width:380px;
  margin-top:28px;
}
.calculator {
  padding:34px;
  background:var(--paper);
  color:var(--ink);
  border-radius:var(--radius-lg);
}
.calculator-title {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  margin-bottom:26px;
  flex-wrap:wrap;
}
.calculator-title h3 {
  font-size:1.125rem;
}
.field-grid label {
  font-size:.875rem;
  font-weight:550;
  display:block;
}
.input-unit {
  position:relative;
  margin-top:7px;
}
.input-unit input {
  width:100%;
  min-width:0;
  border:1px solid var(--border);
  border-radius:var(--radius-sm);
  background:var(--soft);
  padding:12px 40px 12px 13px;
  color:var(--ink);
  font-weight:550;
}
.input-unit span {
  position:absolute;
  right:14px;
  top:13px;
  color:var(--muted);
  pointer-events:none;
}
.calculator .button {
  margin-top:24px;
  width:100%;
}
.result {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:15px;
  margin-top:24px;
  padding-top:22px;
  border-top:1px solid var(--border);
}
.result>span {
  font-size:.875rem;
  max-width:150px;
  color:var(--muted);
}
.result strong {
  font-size:2.8rem;
  letter-spacing:-.055em;
  white-space:nowrap;
}
.result small {
  font-size:1rem;
  letter-spacing:0;
}
details {
  font-size:.8125rem;
  color:var(--muted);
  margin-top:20px;
}
details p {
  margin-top:10px;
  line-height:1.6;
}
.steps article>span {
  display:block;
  font-size:2.5rem;
  letter-spacing:-.06em;
  color:var(--highlight);
  font-weight:600;
  margin-bottom:20px;
}
.steps h3 {
  font-size:1.25rem;
}
.steps p {
  margin-top:14px;
}
.offers-section {
  background:var(--soft);
}
.plan {
  border:1px solid var(--border);
  padding:36px;
  border-radius:var(--radius);
  background:var(--paper);
}
.plan-heading {
  display:flex;
  flex-direction:column;
  gap:12px;
}
.plan-heading>span {
  font-size:.875rem;
  color:var(--muted);
}
.plan ul {
  margin:30px 0;
}
.plan li {
  padding:9px 0 9px 25px;
  position:relative;
  font-size:1rem;
}
.plan li:before {
  content:'✓';
  position:absolute;
  left:0;
  font-weight:600;
  color:var(--highlight);
}
.plan-foot {
  font-size:.875rem;
  border-top:1px solid var(--border);
  padding-top:18px;
}
.premium {
  background:var(--navy);
  color:var(--on-dark);
  border-color:var(--navy);
}
.premium .plan-heading>span,.premium .plan-foot {
  color:var(--on-dark-muted);
}
.premium .plan-foot {
  border-color:var(--on-dark-border);
}
.premium li:before {
  color:var(--accent);
}
.offer-note {
  font-size:.8125rem;
  margin-top:24px;
}
.footer>span {
  font-size:.8125rem;
  color:var(--muted);
}
.result,.ride-card-top {
  flex-wrap:wrap;
}
.button {
  text-align:center;
}
.ride-stats {
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.ride-stats strong {
  font-size:clamp(1.4rem,3vw,2rem);
}
.calculator-feedback,.calculator-limits {
  font-size:.8125rem;
  margin-bottom:16px;
}
.calculator-feedback:empty {
  display:none;
}
.calculator-feedback {
  margin-top:16px;
}
.ride-card {
  position: relative;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  margin-top: 140px;
  align-self: end;
  min-width: 0;
}
.photo-label {
  right: 26px;
}
