:root {
  --lp-navy: #102454;
  --lp-navy-2: #17366f;
  --lp-blue: #2864dc;
  --lp-blue-soft: #edf4ff;
  --lp-amber: #d97706;
  --lp-amber-bright: #ffb515;
  --lp-ink: #13213c;
  --lp-muted: #59677e;
  --lp-line: #dce5f1;
  --lp-surface: #f7f9fc;
  --lp-shadow: 0 22px 54px rgba(16, 36, 84, .13);
}

html { scroll-behavior: smooth; scroll-padding-top: 86px; }
body { overflow-x: hidden; }
button, a, select, summary { touch-action: manipulation; }
.svg-sprite { position: absolute; width: 0; height: 0; overflow: hidden; }
.skip-link { position: fixed; top: 10px; left: 10px; z-index: 300; padding: 11px 15px; border-radius: 8px; background: #fff; color: var(--lp-navy); font-weight: 700; transform: translateY(-150%); transition: transform .2s ease; box-shadow: var(--lp-shadow); }
.skip-link:focus { transform: none; }
.sr-only { position: absolute!important; width: 1px!important; height: 1px!important; padding: 0!important; margin: -1px!important; overflow: hidden!important; clip: rect(0,0,0,0)!important; white-space: nowrap!important; border: 0!important; }

.language-card h2 { font: 700 32px 'Fira Code'; color: var(--navy); margin: 5px; }
.language-options .language-flag { display: block; margin-bottom: 3px; font-size: 26px; line-height: 1; }
.login-copy h2 { font: 700 clamp(34px,4vw,48px)/1.1 'Fira Code'; letter-spacing: -2px; color: var(--navy); margin: 8px 0; }
.admin-header h2 { font: 700 28px 'Fira Code'; color: var(--navy); margin: 2px 0; }

.public-header {
  position: fixed; top: 0; left: 0; z-index: 60; width: 100%; height: 80px; padding: 0 max(24px, calc((100vw - 1240px) / 2));
  display: grid; grid-template-columns: 186px 1fr auto; align-items: center; gap: clamp(20px, 3vw, 42px);
  background: rgba(255,255,255,.94); border-bottom: 1px solid rgba(220,229,241,.9); backdrop-filter: blur(18px);
}
.public-header .brand { min-width: 0; }
.public-header .brand-logo { width: 177px; height: 64px; object-fit: contain; object-position: left center; }
.public-header .btn-primary { background: var(--lp-amber); color: var(--lp-navy); box-shadow: 0 8px 20px rgba(217,119,6,.18); }
.public-header .btn-primary:hover { background: var(--lp-amber-bright); }
.nav-links { display: flex; align-items: center; justify-content: center; gap: clamp(14px, 2vw, 30px); }
.nav-links > a { min-height: 44px; display: inline-flex; align-items: center; color: #3f4e66; font-size: 14px; font-weight: 600; white-space: nowrap; transition: color .2s ease; }
.nav-links > a:hover { color: var(--lp-blue); }
.header-actions { display: flex; align-items: center; gap: 9px; }
.language-select { display: block; }
.language-select select, .footer-meta select { min-height: 44px; padding: 8px 30px 8px 10px; color: var(--lp-navy); font-weight: 700; cursor: pointer; }
.public-menu-toggle, .mobile-nav-actions { display: none; }
.public-menu-toggle { width: 44px; height: 44px; border: 1px solid var(--lp-line); border-radius: 10px; background: #fff; color: var(--lp-navy); cursor: pointer; }
.public-menu-toggle svg { width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; }

#landing-view { padding-top: 80px; color: var(--lp-ink); background: #fff; }
#landing-view section[id] { scroll-margin-top: 86px; }
.lp-shell { width: min(1240px, calc(100% - 48px)); margin: 0 auto; }
.lp-section { padding: clamp(76px, 8vw, 118px) 0; }
.lp-heading { max-width: 750px; margin-bottom: 44px; }
.lp-heading h2, .product-copy h2, .platform-copy h2, .faq-intro h2, .final-cta h2 { margin: 8px 0 16px; font: 700 clamp(30px, 4.2vw, 52px)/1.08 'Fira Code'; letter-spacing: -.045em; color: var(--lp-navy); }
.lp-heading > p:last-child, .product-copy > p, .faq-intro > p:last-child, .final-cta p { font-size: 18px; line-height: 1.7; color: var(--lp-muted); }
#landing-view .eyebrow { color: var(--lp-blue); letter-spacing: .13em; font-size: 12px; }
#landing-view svg { fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
#landing-view .btn { min-height: 48px; border-radius: 9px; cursor: pointer; transition: background-color .2s ease, border-color .2s ease, color .2s ease, box-shadow .2s ease; }
#landing-view .btn-primary { background: var(--lp-amber); color: var(--lp-navy); box-shadow: 0 10px 24px rgba(217,119,6,.2); }
#landing-view .btn-primary:hover { background: var(--lp-amber-bright); box-shadow: 0 12px 28px rgba(217,119,6,.28); }
#landing-view .btn-secondary { border-color: var(--lp-navy); color: var(--lp-navy); background: #fff; }
#landing-view .btn-secondary:hover { background: var(--lp-navy); color: #fff; }
.btn-large { min-height: 54px!important; padding: 13px 22px; font-size: 15px; }
.btn-large svg { width: 18px; height: 18px; }

.lp-hero { position: relative; overflow: hidden; background: radial-gradient(circle at 77% 22%, #e5efff 0, transparent 34%), linear-gradient(145deg,#fff 20%,#f6f9fe 100%); }
.lp-hero::before { content: ''; position: absolute; width: 520px; height: 520px; border: 1px solid #d8e5fa; border-radius: 50%; right: -280px; top: -220px; }
.lp-hero-grid { min-height: 650px; display: grid; grid-template-columns: minmax(0,.88fr) minmax(520px,1.12fr); gap: 54px; align-items: center; padding-top: 62px; padding-bottom: 76px; }
.lp-hero-copy { position: relative; z-index: 2; }
.lp-badge { width: max-content; display: flex; align-items: center; gap: 8px; margin: 0 0 21px; padding: 8px 12px; color: var(--lp-blue); background: var(--lp-blue-soft); border: 1px solid #d7e5ff; border-radius: 999px; font-size: 13px; font-weight: 700; }
.lp-badge svg { width: 20px; height: 20px; }
.lp-hero h1 { margin: 0; max-width: 700px; color: var(--lp-navy); font: 700 clamp(42px, 5.1vw, 69px)/1.02 'Fira Code'; letter-spacing: -.065em; }
.lp-lead { max-width: 650px; margin: 25px 0; color: var(--lp-muted); font-size: clamp(17px,1.6vw,20px); line-height: 1.65; }
.lp-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.lp-microcopy { display: flex; align-items: center; gap: 8px; margin: 16px 0 0; color: #506077; font-size: 13px; }
.lp-microcopy svg { width: 17px; height: 17px; color: #168464; stroke-width: 2.4; }
.lp-product-stage { position: relative; margin: 0; min-width: 0; }
.lp-product-stage picture, .lp-product-stage img { display: block; width: 100%; }
.lp-product-stage img { height: auto; aspect-ratio: 3/2; object-fit: cover; border: 8px solid #fff; border-radius: 26px; box-shadow: 0 30px 80px rgba(16,36,84,.22); }
.product-tag { position: absolute; display: flex; align-items: center; gap: 7px; padding: 9px 12px; border: 1px solid rgba(255,255,255,.9); border-radius: 10px; background: rgba(255,255,255,.94); color: var(--lp-navy); box-shadow: 0 10px 25px rgba(16,36,84,.17); backdrop-filter: blur(10px); font-size: 12px; font-weight: 700; }
.product-tag svg { width: 18px; height: 18px; color: var(--lp-blue); }
.tag-nfc { top: 11%; left: -4%; }.tag-qr { top: 8%; right: -3%; }.tag-link { bottom: 17%; left: -3%; }.tag-metrics { right: -2%; bottom: 12%; }

.trust-strip { background: var(--lp-navy); color: #fff; }
.trust-grid { min-height: 95px; display: grid; grid-template-columns: repeat(4,1fr); align-items: center; }
.trust-grid > div { min-height: 46px; display: flex; align-items: center; justify-content: center; gap: 10px; padding: 12px 20px; border-right: 1px solid rgba(255,255,255,.14); font-weight: 600; font-size: 14px; }
.trust-grid > div:last-child { border: 0; }
.trust-grid svg { width: 24px; height: 24px; color: var(--lp-amber-bright); }

.lp-problem { background: var(--lp-surface); }
.journey-compare { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.journey-card { padding: 28px; border: 1px solid var(--lp-line); border-radius: 18px; background: #fff; }
.journey-short { border-color: #a9c6fb; box-shadow: 0 14px 34px rgba(40,100,220,.1); }
.journey-label { display: inline-block; margin-bottom: 22px; color: var(--lp-muted); font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .09em; }
.journey-short .journey-label { color: var(--lp-blue); }
.journey-flow { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.journey-flow span { padding: 9px 11px; border-radius: 8px; background: #f0f3f8; font-size: 13px; font-weight: 600; }
.journey-short .journey-flow span { background: var(--lp-blue-soft); color: var(--lp-navy); }
.journey-flow i { width: 18px; height: 1px; background: #a8b3c5; }
.journey-short p { margin: 20px 0 0; color: var(--lp-muted); }

.product-section { background: #fff; }
.product-grid { display: grid; grid-template-columns: minmax(320px,.8fr) minmax(0,1.2fr); align-items: center; gap: clamp(54px,8vw,120px); }
.product-front-wrap { position: relative; width: min(470px,100%); margin: auto; padding: 22px; border-radius: 28px; background: linear-gradient(145deg,#edf4ff,#fff); box-shadow: var(--lp-shadow); }
.product-front-wrap picture, .product-front-wrap img { display: block; width: 100%; }
.product-front-wrap img { height: auto; border-radius: 16px; }
.size-badge { position: absolute; right: 8px; top: 8px; padding: 8px 11px; border-radius: 8px; background: var(--lp-navy); color: #fff; font: 700 12px 'Fira Code'; box-shadow: 0 7px 18px rgba(16,36,84,.24); }
.product-copy { max-width: 640px; }
.check-list { display: grid; grid-template-columns: 1fr 1fr; gap: 13px 24px; padding: 0; margin: 26px 0; list-style: none; }
.check-list li { display: flex; align-items: flex-start; gap: 9px; color: #3f4e66; line-height: 1.45; }
.check-list svg { width: 19px; height: 19px; flex: none; color: #168464; stroke-width: 2.5!important; }
.conditions-note { font-size: 13px!important; margin-bottom: 20px; }

.how-section-new { color: #fff; background: var(--lp-navy); }
.how-section-new .lp-heading h2, .how-section-new .eyebrow { color: #fff!important; }
.how-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 20px; counter-reset: item; }
.how-grid article { position: relative; min-height: 280px; padding: 34px; border: 1px solid rgba(255,255,255,.15); border-radius: 18px; background: rgba(255,255,255,.06); }
.step-number { position: absolute; right: 25px; top: 22px; color: rgba(255,255,255,.19); font: 700 32px 'Fira Code'; }
.step-icon { width: 52px; height: 52px; display: grid; place-items: center; border-radius: 13px; background: var(--lp-amber-bright); color: var(--lp-navy); }
.step-icon svg { width: 27px; height: 27px; }
.how-grid h3 { margin: 28px 0 12px; font: 600 20px 'Fira Code'; }
.how-grid p { margin: 0; color: #c8d3e8; line-height: 1.65; }

.benefits-section { background: var(--lp-surface); }
.benefits-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; }
.benefits-grid article { min-height: 170px; padding: 26px; border: 1px solid var(--lp-line); border-radius: 15px; background: #fff; }
.benefits-grid svg { width: 28px; height: 28px; color: var(--lp-blue); }
.benefits-grid h3 { margin: 28px 0 0; font: 600 17px/1.45 'Fira Code'; color: var(--lp-navy); }

.platform-section { overflow: hidden; }
.platform-grid { display: grid; grid-template-columns: minmax(0,.9fr) minmax(510px,1.1fr); gap: 68px; align-items: center; }
.platform-copy h2 { font-size: clamp(30px,3.8vw,49px); }
.platform-features { display: grid; gap: 10px; margin: 27px 0; }
.platform-features article { display: flex; gap: 14px; padding: 14px 0; }
.platform-features > article > svg { width: 25px; height: 25px; flex: none; color: var(--lp-blue); }
.platform-features h3 { margin: 0 0 5px; font: 600 15px 'Fira Code'; color: var(--lp-navy); }
.platform-features p { margin: 0; color: var(--lp-muted); line-height: 1.55; }
.platform-dashboard { position: relative; padding: 20px; transform: rotate(1.2deg); border-radius: 20px; box-shadow: 0 28px 75px rgba(16,36,84,.18); }
.platform-dashboard .preview-top { display: flex; align-items: center; gap: 10px; padding-bottom: 15px; }
.preview-label { margin-left: auto; padding: 5px 8px; border-radius: 999px; background: #edf4ff; color: var(--lp-blue); font-size: 9px; font-weight: 700; text-transform: uppercase; }
.platform-dashboard .preview-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.preview-stat { display: grid; padding: 15px; border: 1px solid var(--lp-line); border-radius: 12px; background: #fff; }
.preview-stat span, .preview-stat small { color: var(--lp-muted); font-size: 10px; }.preview-stat strong { color: var(--lp-navy); font: 700 27px 'Fira Code'; }
.chart-card { margin-top: 12px; padding: 16px; border: 1px solid var(--lp-line); border-radius: 12px; background: #fff; }
.chart-card > div { display: flex; justify-content: space-between; gap: 12px; }.chart-card span { color: var(--lp-muted); font-size: 10px; }.chart-card strong { font: 600 12px 'Fira Code'; color: var(--lp-navy); }
.chart-card svg { display: block; width: 100%; height: 170px; margin-top: 10px; overflow: visible; }.chart-card .grid-line { stroke: #e6ecf4!important; }.chart-card .area { fill: rgba(40,100,220,.12)!important; stroke: none!important; }.chart-card .line { stroke: var(--lp-blue)!important; stroke-width: 3!important; }
.activity-preview { display: flex; align-items: center; gap: 10px; margin-top: 12px; padding: 13px; border-radius: 10px; background: #f5f8fd; }.activity-preview div { display: grid; }.activity-preview small { color: var(--lp-muted); }.activity-preview strong { color: var(--lp-navy); font-size: 11px; }.activity-dot { width: 9px; height: 9px; border-radius: 50%; background: #168464; box-shadow: 0 0 0 5px rgba(22,132,100,.12); }

.business-section { background: var(--lp-surface); }
.business-layout { display: grid; grid-template-columns: 1.12fr .88fr; gap: 28px; align-items: stretch; }
.business-photo { min-height: 440px; overflow: hidden; border-radius: 20px; box-shadow: var(--lp-shadow); }
.business-photo img { display: block; width: 100%; height: 100%; object-fit: cover; }
.business-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.business-grid article { min-height: 132px; display: flex; flex-direction: column; justify-content: space-between; padding: 20px; border: 1px solid var(--lp-line); border-radius: 14px; background: #fff; color: var(--lp-navy); font: 600 14px 'Fira Code'; }
.business-grid svg { width: 29px; height: 29px; color: var(--lp-blue); }

.faq-section { background: #fff; }
.faq-layout { display: grid; grid-template-columns: minmax(280px,.7fr) minmax(0,1.3fr); gap: clamp(50px,8vw,110px); align-items: start; }
.faq-intro { position: sticky; top: 118px; }
.faq-list { border-top: 1px solid var(--lp-line); }
.faq-list details { border-bottom: 1px solid var(--lp-line); }
.faq-list summary { min-height: 72px; display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 17px 42px 17px 0; color: var(--lp-navy); font: 600 15px/1.45 'Fira Code'; cursor: pointer; list-style: none; position: relative; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary::after { content: '+'; position: absolute; right: 5px; font: 400 25px 'Fira Sans'; color: var(--lp-blue); transition: transform .2s ease; }
.faq-list details[open] summary::after { transform: rotate(45deg); }
.faq-list details p { max-width: 720px; margin: -4px 0 22px; color: var(--lp-muted); line-height: 1.7; }

.final-cta { padding: 76px 0; background: linear-gradient(125deg,#102454,#1a3b78); color: #fff; }
.final-cta-inner { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 50px; }
.final-cta h2, .final-cta .eyebrow { color: #fff!important; }.final-cta h2 { max-width: 760px; }.final-cta p { color: #cbd6e9; max-width: 760px; }
.final-cta-actions { display: grid; min-width: 265px; gap: 10px; }
.btn-accent { background: var(--lp-amber-bright); color: var(--lp-navy); font-weight: 700; }.btn-accent:hover { background: #ffc447; }
.btn-on-dark { border: 1px solid rgba(255,255,255,.55); color: #fff; background: transparent; }.btn-on-dark:hover { background: #fff; color: var(--lp-navy); }
.final-cta-actions small { text-align: center; color: #aebdd7; font-size: 10px; }

.commercial-dialog { width: min(720px, calc(100% - 32px)); }
.commercial-dialog form { padding: clamp(22px, 4vw, 34px); }
.commercial-dialog .dialog-head h2 { max-width: 570px; margin: 5px 0 0; color: var(--lp-navy); font: 700 clamp(25px, 4vw, 34px)/1.12 'Fira Sans', system-ui, sans-serif; letter-spacing: -.035em; }
.commercial-dialog .dialog-head .eyebrow { margin: 0; color: var(--lp-blue); }
.commercial-dialog .icon-button { flex: none; cursor: pointer; }
.commercial-intro { margin: -3px 0 3px; color: var(--lp-muted); font-size: 16px; line-height: 1.6; }
.commercial-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.commercial-form-grid label { min-width: 0; }
.commercial-form-grid input, .commercial-form-grid select, .commercial-form-grid textarea { width: 100%; min-height: 46px; padding: 11px 12px; border: 1px solid #cfd9e8; border-radius: 9px; background: #fff; color: var(--lp-ink); font: 16px/1.45 'Fira Sans', system-ui, sans-serif; transition: border-color .2s ease, box-shadow .2s ease; }
.commercial-form-grid textarea { min-height: 112px; resize: vertical; }
.commercial-form-grid input:focus, .commercial-form-grid select:focus, .commercial-form-grid textarea:focus { border-color: var(--lp-blue); outline: none; box-shadow: 0 0 0 3px rgba(40,100,220,.13); }
.commercial-full { grid-column: 1 / -1; }
.commercial-privacy { margin: -2px 0 0; color: var(--lp-muted); font-size: 13px; line-height: 1.5; }
.commercial-dialog .dialog-actions { flex-wrap: wrap; }
.commercial-dialog .dialog-actions .btn { min-height: 48px; }
.form-honey { position: absolute!important; left: -10000px!important; width: 1px!important; height: 1px!important; opacity: 0!important; pointer-events: none!important; }

.public-footer { width: 100%; max-width: none; margin: 0; padding: 54px max(24px, calc((100vw - 1240px) / 2)) 34px; display: grid; grid-template-columns: 1.2fr .8fr auto; gap: 56px; background: #091832; color: #aebbd0; font-size: 13px; }
.footer-brand { max-width: 370px; }.footer-brand img { width: 210px; height: 80px; object-fit: contain; object-position: left; filter: brightness(0) invert(1); }.footer-brand p { line-height: 1.65; }
.public-footer nav { display: grid; align-content: start; gap: 12px; }.public-footer nav a, .public-footer nav button { min-height: 32px; width: max-content; padding: 0; background: transparent; color: #d9e3f3; font-weight: 600; cursor: pointer; }.public-footer nav a:hover, .public-footer nav button:hover { color: #fff; }
.footer-meta { display: flex; flex-direction: column; align-items: flex-end; gap: 18px; }.footer-meta label { color: #d9e3f3; }.footer-meta select { border-color: #314666; background: #102454; color: #fff; }

#landing-view h1 { font-family: 'Fira Sans', system-ui, sans-serif; letter-spacing: -.045em; }
#landing-view h2 { font-family: 'Fira Sans', system-ui, sans-serif; letter-spacing: -.035em; }
#landing-view h3 { font-family: 'Fira Sans', system-ui, sans-serif; letter-spacing: -.02em; }
#landing-view .step-number, #landing-view .size-badge { font-family: 'Fira Code', 'Courier New', monospace; }

a:focus-visible, button:focus-visible, select:focus-visible, summary:focus-visible { outline: 3px solid #70a0ff!important; outline-offset: 3px; }

@media (max-width: 1120px) {
  .public-header { grid-template-columns: 177px 1fr auto; gap: 14px; }
  .public-menu-toggle { display: grid; place-items: center; justify-self: end; grid-column: 2; }
  .nav-links { position: absolute; left: 24px; right: 24px; top: calc(100% + 8px); display: grid; gap: 2px; padding: 16px; border: 1px solid var(--lp-line); border-radius: 14px; background: #fff; box-shadow: var(--lp-shadow); opacity: 0; visibility: hidden; transform: translateY(-8px); transition: opacity .2s ease, transform .2s ease, visibility .2s ease; }
  .public-header.menu-open .nav-links { opacity: 1; visibility: visible; transform: none; }
  .nav-links > a { padding: 0 10px; }
  .mobile-nav-actions { display: none; }
  .header-actions { grid-column: 3; }
  .lp-hero-grid { grid-template-columns: minmax(0,.85fr) minmax(450px,1.15fr); gap: 35px; }
  .platform-grid { grid-template-columns: 1fr 1fr; gap: 38px; }
  .tag-nfc,.tag-link { left: -1%; }.tag-qr,.tag-metrics { right: -1%; }
}

@media (max-width: 900px) {
  .lp-shell { width: min(100% - 36px, 760px); }
  .lp-hero-grid { min-height: auto; grid-template-columns: 1fr; padding-top: 72px; }
  .lp-hero-copy { max-width: 730px; text-align: center; margin: auto; }.lp-badge,.lp-microcopy { margin-left: auto; margin-right: auto; }.lp-actions { justify-content: center; }
  .lp-product-stage { width: min(720px,100%); margin: 10px auto 0; }
  .trust-grid { grid-template-columns: 1fr 1fr; padding: 14px 0; }.trust-grid > div:nth-child(2) { border-right: 0; }.trust-grid > div { justify-content: flex-start; }
  .journey-compare, .product-grid, .platform-grid, .business-layout, .faq-layout { grid-template-columns: 1fr; }
  .product-copy { max-width: none; }.product-front-wrap { width: min(420px,85%); }
  .platform-dashboard { width: min(650px,100%); margin: 20px auto 0; transform: none; }
  .business-photo { min-height: 380px; }.faq-intro { position: static; }.faq-intro h2 { max-width: 720px; }
  .final-cta-inner { grid-template-columns: 1fr; }.final-cta-actions { min-width: 0; width: min(390px,100%); }
  .public-footer { grid-template-columns: 1fr 1fr; }.footer-meta { align-items: flex-start; }
}

@media (max-width: 720px) {
  html { scroll-padding-top: 66px; }
  .public-header { height: 66px; grid-template-columns: 1fr auto; padding: 0 18px; }.public-header .brand-logo { width: 145px; height: 54px; }.public-menu-toggle { grid-column: 2; }
  #landing-view { padding-top: 66px; }
  .header-actions { display: none; }.mobile-nav-actions { display: grid; grid-template-columns: 1fr; gap: 8px; padding-top: 10px; border-top: 1px solid var(--lp-line); }.mobile-nav-actions .btn { width: 100%; }
  .nav-links { left: 12px; right: 12px; max-height: calc(100vh - 82px); overflow-y: auto; }
  .lp-shell { width: min(100% - 30px, 620px); }.lp-section { padding: 72px 0; }
  .lp-heading { margin-bottom: 32px; }.lp-heading h2, .product-copy h2, .platform-copy h2, .faq-intro h2, .final-cta h2 { font-size: clamp(28px,9vw,39px); letter-spacing: -.04em; }
  .lp-heading > p:last-child, .product-copy > p, .faq-intro > p:last-child, .final-cta p { font-size: 16px; }
  .lp-hero-grid { padding-top: 50px; padding-bottom: 56px; }.lp-hero h1 { font-size: clamp(36px,11.2vw,50px); }.lp-lead { font-size: 17px; }.lp-actions { display: grid; }.lp-actions .btn { width: 100%; }
  .lp-product-stage img { border-width: 5px; border-radius: 18px; }.product-tag { padding: 7px 8px; font-size: 10px; }.product-tag svg { width: 15px; height: 15px; }.tag-nfc { top: 4%; }.tag-qr { top: 4%; }.tag-link { bottom: 8%; }.tag-metrics { bottom: 8%; }
  .trust-grid { grid-template-columns: 1fr; padding: 9px 0; }.trust-grid > div { min-height: 50px; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.12); }.trust-grid > div:last-child { border: 0; }
  .journey-compare, .how-grid, .benefits-grid { grid-template-columns: 1fr; }.journey-card { padding: 22px; }.journey-flow { align-items: flex-start; flex-direction: column; }.journey-flow i { width: 1px; height: 12px; margin-left: 16px; }
  .product-grid { gap: 48px; }.product-front-wrap { width: min(390px,92%); padding: 12px; }.check-list { grid-template-columns: 1fr; }
  .how-grid article { min-height: 240px; }.benefits-grid article { min-height: 145px; }
  .platform-dashboard { padding: 12px; }.platform-dashboard .preview-grid { grid-template-columns: 1fr 1fr; }.chart-card svg { height: 120px; }
  .business-photo { min-height: 280px; }.business-grid { grid-template-columns: 1fr 1fr; }.business-grid article { min-height: 120px; }
  .faq-list summary { padding-right: 36px; }.final-cta { padding: 65px 0; }
  .public-footer { grid-template-columns: 1fr; gap: 30px; padding: 44px 24px 30px; }.footer-meta { align-items: flex-start; }
  .commercial-form-grid { grid-template-columns: 1fr; }.commercial-full { grid-column: auto; }.commercial-dialog .dialog-actions { display: grid; grid-template-columns: 1fr; }.commercial-dialog .dialog-actions .btn { width: 100%; }
  .admin-header h2 { font-size: 19px; }
}

@media (max-width: 420px) {
  .product-tag { position: static; display: inline-flex; margin: 8px 4px 0 0; }.lp-product-stage { display: flex; flex-wrap: wrap; }.lp-product-stage picture { flex-basis: 100%; }
  .business-grid { grid-template-columns: 1fr; }.platform-dashboard .preview-grid { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .skip-link, .nav-links, .faq-list summary::after, #landing-view .btn { transition: none!important; }
}
/* Additional products */
.solutions-section{background:var(--lp-surface)}.solutions-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.solution-card{display:flex;min-width:0;flex-direction:column;border:1px solid var(--lp-line);border-radius:24px;overflow:hidden;background:#fff;box-shadow:0 8px 30px #10245408}.solution-visual{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:270px;overflow:hidden;background:var(--lp-blue-soft)}.solution-table-photo img{display:block;width:100%;height:100%;object-fit:cover}.solution-copy{display:flex;flex:1;flex-direction:column;padding:28px}.solution-copy .eyebrow{font-size:11px;letter-spacing:.08em;margin:0 0 12px}.solution-copy h3{margin:0 0 14px;font-size:25px;line-height:1.2;color:var(--lp-navy);letter-spacing:-.025em}.solution-copy>p:not(.eyebrow){margin:0;color:var(--lp-muted);line-height:1.65;font-size:15px}.solution-copy ul{display:grid;gap:13px;list-style:none;padding:22px 0;margin:0 0 10px}.solution-copy li{display:flex;align-items:flex-start;gap:10px;color:var(--lp-ink);font-size:14px;line-height:1.55}.solution-copy li svg{width:18px;height:18px;flex:0 0 18px;margin-top:2px;fill:none;stroke:var(--lp-blue);stroke-width:2}.solution-copy .btn{width:100%;min-height:48px;margin-top:auto;white-space:normal;text-align:center}.solution-bio-preview{background:linear-gradient(145deg,#e6efff,#f4f0ff)}.solution-phone{display:flex;flex-direction:column;align-items:center;width:230px;padding:21px 18px 28px;margin-top:30px;border:5px solid #fff;border-radius:28px 28px 0 0;background:#11284c;color:#fff;box-shadow:0 14px 32px #10245426}.solution-phone>strong{font-size:18px;margin:6px 0}.solution-phone>small{font-size:12px;color:#d1def5}.solution-avatar{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:#fff2;color:#bdd2ff}.solution-avatar svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.6}.solution-mini-links{display:grid;gap:8px;width:100%;margin-top:16px}.solution-mini-links>div{display:flex;align-items:center;gap:8px;padding:9px;border:1px solid #ffffff26;border-radius:10px;background:#fff1;font-size:11px}.solution-mini-links svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;flex:none}.solution-example{position:absolute;bottom:9px;left:0;right:0;color:#3b5277;text-align:center;font-size:11px;background:#eef3fcdf;padding:4px}.solution-menu-preview{background:linear-gradient(145deg,#fff0d3,#fff9ed)}.solution-menu-sheet{width:252px;padding:20px;border:1px solid #e5d3b7;border-radius:16px;background:#fffdf8;box-shadow:0 14px 30px #6b45131a;transform:rotate(-3deg);color:#5b3b15}.solution-menu-sheet>svg{display:block;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;margin-bottom:8px}.solution-menu-sheet>strong{display:block;font-size:16px}.solution-menu-lines{display:grid;gap:9px;margin:14px 0}.solution-menu-lines>div{display:flex;align-items:center;gap:10px;font-size:12px}.solution-menu-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:#f4e8d4}.solution-menu-icon svg,.solution-menu-sheet>small svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7}.solution-menu-sheet>small{display:flex;gap:6px;align-items:center;font-size:10px;border-top:1px solid #eadbc2;padding-top:10px}.business-photo{aspect-ratio:4/5;min-height:0;max-height:650px}.business-photo img{object-position:center 60%}
@media(max-width:1050px) and (min-width:701px){.solutions-grid{gap:16px}.solution-copy{padding:21px}.solution-copy h3{font-size:22px}.solution-visual{height:235px}.solution-phone{width:205px}.solution-menu-sheet{width:220px;padding:16px}}
@media(max-width:700px){.solutions-grid{grid-template-columns:minmax(0,1fr);gap:28px}.solution-visual{height:280px}.solution-table-photo{height:auto;aspect-ratio:4/3}.solution-copy{padding:25px}.solution-copy h3{font-size:27px}.solution-copy li{font-size:15px}.solution-copy>p:not(.eyebrow){font-size:16px}.business-photo{max-height:none;aspect-ratio:4/5}}
.solution-example{top:10px;right:10px;bottom:auto;left:auto;border-radius:999px;padding:4px 8px;background:#ffffffed;box-shadow:0 1px 6px #1024540d}
