@charset "UTF-8";
/* Shared product LP presentation, adapted from supplied Ver.7. All rules are
   scoped to .product-lp; approved main LP and site chrome are not restyled. */
@font-face {
  font-family: "LAK Product Noto Sans JP";
  src: url("./fonts/noto-sans-jp-product.woff2") format("woff2");
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}
/* Restore the reference's typography defaults inside the shared site shell. */
.product-lp { font-size:16px; }
.product-lp h1, .product-lp h2, .product-lp h3, .product-lp h4 { line-height: normal; letter-spacing: normal; overflow-wrap: normal; }
.product-lp h1 { margin: .67em 0; }
.product-lp h1 > span { display: inline; }
.product-lp p { margin: 1em 0; }
.product-lp svg { display: inline; }
.product-lp button { color: inherit; }
.product-lp { --navy:#142f54;--blue:#0581cb;--blue-dark:#0069ad;--pale:#edf7ff;--ink:#1b3858;--muted:#61778d;--yellow:#ffdc48;--line:#dceaf4;--light:#f7fbff;--shadow:0 16px 45px rgba(27,78,114,.09);font-family:'LAK Product Noto Sans JP','Noto Sans CJK JP','Yu Gothic','Hiragino Kaku Gothic ProN',sans-serif;color:var(--navy);font-synthesis:none }
.product-lp * { box-sizing:border-box }
.product-lp { margin:0;background:#fff;line-height:1.7 }
.product-lp button,
.product-lp a { font:inherit }
.product-lp a { text-decoration:none;color:inherit }
.product-lp button { cursor:pointer }
.product-lp img { max-width:100% }
.product-lp a:focus-visible,
.product-lp button:focus-visible,
.product-lp summary:focus-visible { outline:3px solid #ffba00;outline-offset:4px }
.product-lp .lp-wrap { width:min(1160px,calc(100% - 64px));margin:auto }
.product-lp .lp-btn { display:inline-flex;align-items:center;justify-content:center;gap:12px;border-radius:11px;padding:15px 25px;min-height:53px;font-weight:800;font-size:15px;border:2px solid transparent;box-shadow:0 6px 16px rgba(24,66,103,.08);transition:transform .2s,box-shadow .2s }
.product-lp .lp-btn:hover { transform:translateY(-2px);box-shadow:0 10px 19px rgba(24,66,103,.14) }
.product-lp .lp-btn:active { transform:translateY(0) }
.product-lp .lp-btn-outline { background:#fff;border-color:#0783d2;color:#0071b7 }
.product-lp .lp-btn-yellow { background:var(--yellow);color:#17334f;border-color:var(--yellow) }
.product-lp .lp-btn-white { color:#116eae;background:#fff }
.product-lp .lp-ico { display:inline-grid;place-items:center;flex:none }
.product-lp .lp-ico svg { width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round }
.product-lp .lp-icon-22 { width:22px;height:22px }
.product-lp .lp-breadcrumb { display:flex;gap:11px;align-items:center;font-size:12px;color:#69849c;padding:17px 0 0 }
.product-lp .lp-breadcrumb span:last-child { color:#1c496a }
.product-lp .lp-hero-wrap { overflow:hidden;background:radial-gradient(ellipse 490px 360px at 85% 30%,#d9edff 0%,transparent 75%),radial-gradient(ellipse 380px 340px at 6% 92%,#e2f2fd 0%,transparent 80%),linear-gradient(110deg,#fff 34%,#f1f8ff 100%);position:relative }
.product-lp .lp-hero-wrap::after { content:"";position:absolute;z-index:0;right:-190px;top:-90px;width:580px;height:580px;border:85px solid rgba(92,169,225,.065);border-radius:50%;pointer-events:none }
.product-lp .lp-hero { display:grid;grid-template-columns:50% 50%;min-height:640px;position:relative;padding:40px 0 58px;gap:12px }
.product-lp .lp-hero-copy { z-index:5;position:relative;padding:30px 0 0 }
.product-lp .lp-series-tag { font-size:13px;display:inline-flex;align-items:center;gap:13px;font-weight:750;color:#375e7a }
.product-lp .lp-tag-pill { display:inline-block;padding:4px 16px;color:#fff;background:#007dcc;border-radius:18px }
.product-lp .lp-product-name-row { display:flex;align-items:center;gap:18px;margin-top:23px }
.product-lp .lp-product-icon { background:linear-gradient(140deg,#168edd,#0976b5);display:grid;place-items:center;border-radius:22px;color:#fff;width:84px;height:84px;flex:none;box-shadow:0 13px 25px rgba(10,130,198,.19) }
.product-lp .lp-product-icon svg { width:52px;height:52px;fill:none;stroke:#fff;stroke-width:6;stroke-linecap:round }
.product-lp .lp-product-name { font-size:57px;font-weight:900;letter-spacing:-.075em;white-space:nowrap;line-height:1.13 }
.product-lp .lp-product-name .lp-fast { color:#0081cd;font-style:italic;letter-spacing:-.08em;margin-left:7px }
.product-lp .lp-hero-h2 { font-size:35px;line-height:1.44;letter-spacing:-.035em;margin:30px 0 12px;font-weight:900 }
.product-lp .lp-hero-lead { font-size:16px;line-height:2;color:#4b6581;max-width:510px;margin:0 }
.product-lp .lp-hero-subfeatures { display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin:24px 0 27px }
.product-lp .lp-subfeature { display:flex;gap:9px;align-items:center;color:#076fac;font-weight:800;font-size:14px }
.product-lp .lp-subfeature .lp-symbol { border-radius:50%;width:28px;height:28px;display:grid;place-items:center;background:#d9eefc;color:#017ccb;font-size:16px;font-weight:800 }
.product-lp .lp-hero-actions { display:flex;gap:13px;align-items:center }
.product-lp .lp-hero-actions .lp-btn { min-width:224px;white-space:nowrap }
.product-lp .lp-hero-stage { position:relative;align-self:stretch;z-index:2;min-height:500px }
.product-lp .lp-hero-stage::before { content:"";position:absolute;right:-35px;bottom:14px;width:500px;height:310px;transform:rotate(-13deg);border-radius:50%;background:radial-gradient(ellipse at center,rgba(103,182,235,.20),transparent 70%);pointer-events:none }
.product-lp .lp-hero-ui { position:absolute;top:60px;left:29px;right:-10px;min-height:355px;border-radius:20px;background:#fff;border:1px solid #c8dfef;box-shadow:0 24px 45px rgba(56,102,155,.16);transform:rotate(-1deg);overflow:hidden }
.product-lp .lp-hero-ui-bar { height:49px;background:#f3f9ff;display:flex;justify-content:space-between;align-items:center;padding:0 22px;font-size:13px;font-weight:800;border-bottom:1px solid #d7e7f4 }
.product-lp .lp-hero-ui-body { padding:18px 20px 20px }
.product-lp .lp-ui-search { display:flex;align-items:center;gap:8px;background:#f6fbff;border:1px solid #dceaf5;border-radius:9px;padding:9px;margin-bottom:14px }
.product-lp .lp-search-tokens { flex:1;display:flex;gap:6px }
.product-lp .lp-search-token { border:1px solid #bcdffa;border-radius:6px;background:#e9f5fd;padding:4px 9px;font-size:12px;color:#24638f;font-weight:700 }
.product-lp .lp-search-button { background:#007fca;border:0;border-radius:6px;color:white;padding:6px 15px;font-size:12px;font-weight:800 }
.product-lp .lp-ui-table { border-collapse:collapse;width:100%;font-size:12px;text-align:left;color:#496985 }
.product-lp .lp-ui-table th { background:#e9f3fa;color:#496580;font-size:12px }
.product-lp .lp-ui-table td,
.product-lp .lp-ui-table th { padding:11px 8px;border-bottom:1px solid #e5eff7;white-space:nowrap }
.product-lp .lp-ui-table td:first-child { color:#067bc4;font-weight:800 }
.product-lp .lp-ui-table td:last-child { text-align:right }
.product-lp .lp-stat-panel { position:absolute;right:-18px;bottom:50px;width:250px;background:rgba(255,255,255,.98);border:1px solid #cde4f8;border-radius:16px;padding:15px 18px;box-shadow:0 15px 34px rgba(40,109,164,.16);transform:rotate(1deg);z-index:2 }
.product-lp .lp-stat-title { font-size:13px;color:#0783c4;font-weight:900;display:flex;align-items:center;gap:7px }
.product-lp .lp-stat-line { font-size:12px;display:flex;justify-content:space-between;border-bottom:1px solid #e7f0f7;padding:8px 0;color:#5c7891 }
.product-lp .lp-stat-line:last-child { border:0 }
.product-lp .lp-stat-line strong { font-size:17px;color:#133e6b }
.product-lp .lp-hero-mascot { position:absolute;left:-35px;bottom:-8px;width:265px;z-index:4;filter:drop-shadow(0 9px 7px rgba(70,104,136,.12))}
.product-lp .lp-hero-mascot img { display:block;width:100%;height:auto;transform-origin:bottom}
.product-lp .lp-section { padding:96px 0 }
.product-lp .lp-section-title { font-size:32px;font-weight:900;letter-spacing:-.035em;margin:0 0 13px }
.product-lp .lp-section-desc { margin:0 0 35px;color:#627990;font-size:15px }
.product-lp .lp-section-kicker { font-size:13px;color:#0682c8;font-weight:800;letter-spacing:.12em;margin-bottom:7px;display:block }
.product-lp .lp-problem-section { padding:76px 0 72px }
.product-lp .lp-problem-box { border:1px solid #d9eaf5;border-radius:22px;box-shadow:var(--shadow);display:grid;grid-template-columns:1fr 1fr;padding:43px 46px;background:linear-gradient(120deg,#f9fdff 0%,#fff 48%,#fcfdfb 100%) }
.product-lp .lp-problem-side { padding-right:48px }
.product-lp .lp-problem-side+ .lp-problem-side { border-left:1px solid #d7e7f1;padding-right:0;padding-left:48px }
.product-lp .lp-area-heading { display:flex;align-items:center;gap:14px;margin:0 0 22px;font-size:23px;font-weight:900 }
.product-lp .lp-heading-icon { width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#dff2ff;color:#0c83c8;flex:none }
.product-lp .lp-heading-icon.lp-yellow { background:#fff0a8;color:#b67800 }
.product-lp .lp-bullet-list { list-style:none;margin:0;padding:0;display:grid;gap:20px }
.product-lp .lp-bullet-list li { display:flex;gap:15px;align-items:flex-start;font-size:14px;color:#47627c }
.product-lp .lp-bullet-list li strong { display:block;font-size:15px;margin-bottom:1px;color:#173959 }
.product-lp .lp-bullet-list .lp-tick { font-size:15px;color:#0785ca;font-weight:900;background:#e9f6fe;border-radius:50%;width:25px;height:25px;line-height:25px;text-align:center;flex:none }
.product-lp .lp-bullet-list .lp-tick.lp-yellow { background:#fff4c5;color:#b78400 }
.product-lp .lp-workflow { background:#f7fbff;padding:85px 0 90px }
.product-lp .lp-section-head { display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:24px }
.product-lp .lp-section-head .lp-section-desc { margin:0 }
.product-lp .lp-step-tabs { display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:21px }
.product-lp .lp-step-tab { border:1px solid #d4e7f4;background:#fff;border-radius:12px;padding:14px 15px;font-weight:800;font-size:14px;color:#436987;text-align:left;display:flex;align-items:center;gap:12px;transition:.2s }
.product-lp .lp-step-tab[aria-selected="true"] { border-color:#1a8dce;background:#e7f5ff;color:#0273b8;box-shadow:0 5px 15px rgba(0,130,202,.08) }
.product-lp .lp-step-num { width:28px;height:28px;border-radius:50%;background:#dceefa;color:#087bc0;display:grid;place-items:center;font-size:13px }
.product-lp .lp-step-tab[aria-selected="true"] .lp-step-num { background:#0a83cc;color:white }
.product-lp .lp-work-demo { display:grid;grid-template-columns:37% 63%;align-items:stretch;overflow:hidden;border:1px solid #d4e8f5;border-radius:20px;background:white;box-shadow:var(--shadow);min-height:335px }
.product-lp .lp-work-explain { padding:46px 40px;background:linear-gradient(130deg,#fff,#eef8ff) }
.product-lp .lp-work-explain .lp-overline { font-size:13px;color:#0086d0;font-weight:850 }
.product-lp .lp-work-explain h3 { font-size:28px;line-height:1.5;margin:12px 0 19px }
.product-lp .lp-work-explain p { margin:0;color:#5d7892;font-size:15px }
.product-lp .lp-work-visual { padding:30px 36px;display:grid;place-items:center;position:relative }
.product-lp .lp-demo-card { width:100%;border:1px solid #cbdfe9;border-radius:12px;box-shadow:0 12px 24px rgba(37,96,153,.10);overflow:hidden }
.product-lp .lp-demo-head { background:#f1f7fd;border-bottom:1px solid #d7e6f1;height:36px;display:flex;align-items:center;padding:0 14px;font-size:12px;font-weight:850;color:#386582 }
.product-lp .lp-demo-main { padding:17px }
.product-lp .lp-demo-search { display:flex;gap:9px;align-items:center }
.product-lp .lp-demo-input { background:#f7fbfe;border:1px solid #cbdce9;min-height:39px;display:flex;align-items:center;padding:0 15px;border-radius:7px;flex:1;font-weight:700;color:#457594;font-size:12px }
.product-lp .lp-demo-search .lp-search-button { padding:9px 14px }
.product-lp .lp-demo-grid { display:grid;grid-template-columns:repeat(4,1fr);margin-top:17px;border:1px solid #dbe9f2;border-radius:8px;overflow:hidden }
.product-lp .lp-demo-grid div { font-size:12px;padding:10px 12px;border-right:1px solid #e9f0f5;border-bottom:1px solid #e9f0f5;color:#50708a }
.product-lp .lp-demo-grid div:nth-child(-n+4) { background:#edf6fc;font-weight:800;color:#466580 }
.product-lp .lp-demo-grid div:nth-child(4n) { border-right:0 }
.product-lp .lp-demo-grid div:nth-last-child(-n+4) { border-bottom:0 }
.product-lp .lp-demo-high { color:var(--lp-heading);font-weight:800 }
.product-lp .lp-demo-summary { margin-top:14px;display:flex;gap:10px;align-items:center;justify-content:flex-end }
.product-lp .lp-mini-summary { font-size:12px;background:#e9f7ff;padding:7px 12px;border-radius:9px;color:#0c74b4;font-weight:800 }
.product-lp .lp-mock-caption { position:absolute;bottom:10px;right:20px;color:#7897ae;font-size:12px }
.product-lp .lp-scenario-list { display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:36px }
.product-lp .lp-scenario { padding:0 32px;border-right:1px solid #cfe3f1 }
.product-lp .lp-scenario:first-child { padding-left:0 }
.product-lp .lp-scenario:last-child { border:0 }
.product-lp .lp-scenario strong { font-size:16px;display:block;margin-bottom:4px }
.product-lp .lp-scenario p { font-size:13px;color:#5f7992;margin:0 }
.product-lp .lp-faq-section { padding:84px 0 78px }
.product-lp .lp-faq { border-top:1px solid #daeaf4 }
.product-lp .lp-faq details { border-bottom:1px solid #daeaf4 }
.product-lp .lp-faq summary { cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:16px;font-weight:800;padding:22px 8px;list-style:none;gap:20px }
.product-lp .lp-faq summary::-webkit-details-marker { display:none }
.product-lp .lp-faq summary::after { content:'+';color:#1686c9;font-size:25px;font-weight:400;flex:none }
.product-lp .lp-faq details[open] summary::after { content:'−' }
.product-lp .lp-faq details p { margin:0;padding:0 35px 23px 8px;color:#5a738b;font-size:14px }
.product-lp .lp-final-cta { padding:0 0 75px }
@media (max-width:1180px) {
.product-lp .lp-product-name { font-size:49px }
.product-lp .lp-hero-actions .lp-btn { min-width:0;padding:13px 15px }
.product-lp .lp-hero-stage { min-height:480px }
.product-lp .lp-stat-panel { width:205px;right:0 }
.product-lp .lp-hero-mascot { width:235px }
.product-lp .lp-hero-ui { left:8px;right:0 }
}
@media (max-width:920px) {
.product-lp .lp-hero { grid-template-columns:1fr;min-height:auto;padding:20px 0 24px }
.product-lp .lp-hero-copy { padding:18px 0 0 }
.product-lp .lp-hero-stage { min-height:440px }
.product-lp .lp-hero-ui { top:32px;left:16%;right:6%;min-height:340px }
.product-lp .lp-stat-panel { right:6%;bottom:8px }
.product-lp .lp-hero-mascot { left:9%;bottom:0;width:248px }
.product-lp .lp-problem-box { padding:30px }
.product-lp .lp-problem-side { padding-right:24px }
.product-lp .lp-problem-side+.lp-problem-side { padding-left:24px }
.product-lp .lp-work-explain { padding:30px 25px }
}
@media (max-width:600px) {
.product-lp .lp-wrap { width:min(100% - 40px,480px) }
.product-lp .lp-breadcrumb { padding-top:10px;font-size:12px;gap:7px }
.product-lp .lp-hero { padding:5px 0 32px;gap:0 }
.product-lp .lp-hero-copy { padding-top:19px }
.product-lp .lp-series-tag { font-size:12px;gap:8px }
.product-lp .lp-tag-pill { font-size:12px;padding:3px 10px }
.product-lp .lp-product-name-row { margin-top:19px;gap:11px }
.product-lp .lp-product-icon { width:55px;height:55px;border-radius:14px }
.product-lp .lp-product-icon svg { width:35px;height:35px }
.product-lp .lp-product-name { font-size:39px }
.product-lp .lp-hero-h2 { font-size:25px;line-height:1.45;margin:21px 0 11px }
.product-lp .lp-hero-lead { font-size:13px;line-height:1.85 }
.product-lp .lp-hero-subfeatures { gap:12px;margin:19px 0 21px }
.product-lp .lp-subfeature { gap:4px;font-size:12px }
.product-lp .lp-subfeature .lp-symbol { width:21px;height:21px;font-size:13px }
.product-lp .lp-hero-actions { flex-direction:column;gap:9px }
.product-lp .lp-hero-actions .lp-btn { width:100%;min-height:49px;font-size:14px }
.product-lp .lp-hero-actions .lp-btn-yellow { order:0 }
.product-lp .lp-hero-actions .lp-btn-outline { order:1 }
.product-lp .lp-hero-stage { min-height:325px }
.product-lp .lp-hero-ui { left:3%;right:0;top:28px;min-height:220px;border-radius:13px }
.product-lp .lp-hero-ui-bar { height:32px;padding:0 10px;font-size:12px }
.product-lp .lp-hero-ui-body { padding:11px }
.product-lp .lp-ui-search { padding:5px;margin-bottom:7px }
.product-lp .lp-search-token { font-size:12px;padding:2px 4px }
.product-lp .lp-search-button { font-size:12px;padding:6px 9px }
.product-lp .lp-ui-table { font-size:12px }
.product-lp .lp-ui-table th,
.product-lp .lp-ui-table td { font-size:12px;padding:8px 4px }
.product-lp .lp-hero-mascot { width:167px;left:0;bottom:4px }
.product-lp .lp-stat-panel { width:154px;right:0;bottom:8px;padding:9px 11px;border-radius:11px }
.product-lp .lp-stat-title { font-size:12px }
.product-lp .lp-stat-line { font-size:12px;padding:5px 0 }
.product-lp .lp-stat-line strong { font-size:12px }
.product-lp .lp-section { padding:65px 0 }
.product-lp .lp-section-title { font-size:25px }
.product-lp .lp-section-desc { font-size:13px;margin-bottom:24px }
.product-lp .lp-section-kicker { font-size:12px }
.product-lp .lp-problem-section { padding:50px 0 }
.product-lp .lp-problem-box { grid-template-columns:1fr;padding:20px 22px;border-radius:17px }
.product-lp .lp-problem-side { padding:0 0 23px }
.product-lp .lp-problem-side+.lp-problem-side { border-left:0;border-top:1px solid #dbe8f2;padding:25px 0 0 }
.product-lp .lp-area-heading { font-size:19px;gap:10px;margin-bottom:18px }
.product-lp .lp-heading-icon { height:32px;width:32px }
.product-lp .lp-bullet-list { gap:14px }
.product-lp .lp-bullet-list li { font-size:12px;gap:10px }
.product-lp .lp-bullet-list li strong { font-size:13px }
.product-lp .lp-bullet-list .lp-tick { height:21px;width:21px;line-height:21px;font-size:13px }
.product-lp .lp-workflow { padding:64px 0 }
.product-lp .lp-section-head { display:block }
.product-lp .lp-step-tabs { gap:5px }
.product-lp .lp-step-tab { padding:8px 4px;gap:4px;display:flex;flex-direction:column;text-align:center;font-size:12px;border-radius:10px }
.product-lp .lp-step-num { width:23px;height:23px;font-size:12px }
.product-lp .lp-work-demo { grid-template-columns:1fr;min-height:auto }
.product-lp .lp-work-explain { padding:22px }
.product-lp .lp-work-explain .lp-overline { font-size:12px }
.product-lp .lp-work-explain h3 { font-size:19px;margin:5px 0 9px }
.product-lp .lp-work-explain p { font-size:12px }
.product-lp .lp-work-visual { padding:20px 14px 28px }
.product-lp .lp-demo-main { padding:10px }
.product-lp .lp-demo-grid div { font-size:12px;padding:8px 5px }
.product-lp .lp-demo-input { font-size:12px;padding:6px;min-height:32px }
.product-lp .lp-demo-search .lp-search-button { padding:7px;font-size:12px }
.product-lp .lp-demo-summary { margin-top:7px }
.product-lp .lp-mini-summary { font-size:12px }
.product-lp .lp-mock-caption { font-size:12px;bottom:8px }
.product-lp .lp-scenario-list { grid-template-columns:1fr;gap:19px;margin-top:28px }
.product-lp .lp-scenario { padding:0 0 16px;border-right:0;border-bottom:1px solid #d2e4f0 }
.product-lp .lp-scenario:first-child { padding-left:0 }
.product-lp .lp-scenario:last-child { padding:0;border:0 }
.product-lp .lp-scenario strong { font-size:14px }
.product-lp .lp-scenario p { font-size:12px }
.product-lp .lp-faq-section { padding:65px 0 }
.product-lp .lp-faq summary { padding:19px 4px;font-size:13px }
.product-lp .lp-faq details p { font-size:12px;padding:0 9px 20px 4px }
.product-lp .lp-final-cta { padding:0 0 50px }
}
@media (prefers-reduced-motion:reduce) {
.product-lp *,
.product-lp *::before,
.product-lp *::after { animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important }
.product-lp .lp-hero-mascot { opacity:1;transform:none }
}
.product-lp { --space-section-pc: 112px;
  --space-section-sp: 76px; }
.product-lp .lp-section,
.product-lp .lp-problem-section,
.product-lp .lp-workflow.lp-section,
.product-lp .lp-faq-section { padding-block: var(--space-section-pc); }
.product-lp .lp-section-title { font-size:35px; line-height: 1.4; margin-bottom: 16px; }
.product-lp .lp-section-desc { font-size:16px; line-height: 1.9; margin-bottom: 42px; }
.product-lp .lp-section-kicker { margin-bottom: 11px; }
.product-lp .lp-problem-box { grid-template-columns: minmax(0,1fr) minmax(0,1fr);
  padding: 66px 68px;
  background: #fff;
  border-radius: 26px;
  box-shadow: 0 20px 60px rgba(21, 83, 124, .065); }
.product-lp .lp-problem-side { padding-right: 60px; }
.product-lp .lp-problem-side + .lp-problem-side { padding-left: 60px; padding-right: 0; }
.product-lp .lp-area-heading { font-size:26px; line-height: 1.45; gap: 16px; margin-bottom: 34px; }
.product-lp .lp-heading-icon { width: 44px; height: 44px; }
.product-lp .lp-bullet-list { gap: 29px; }
.product-lp .lp-bullet-list li { font-size:15px; line-height: 1.85; gap: 16px; }
.product-lp .lp-bullet-list li strong { font-size:18px; line-height: 1.55; margin-bottom: 6px; }
.product-lp .lp-bullet-list .lp-tick { width: 27px; height: 27px; line-height: 27px; margin-top: 2px; }
.product-lp .lp-feature-bullets { display: grid; gap: 30px; }
.product-lp .lp-feature-bullets li { display: grid;
  grid-template-columns: 9px minmax(0,1fr);
  align-items: start;
  gap: 18px; }
.product-lp .lp-feature-bullets li::before { content: '';
  width: 9px;
  height: 9px;
  margin-top: 12px;
  border-radius: 50%;
  background: #087fcc; }
.product-lp .lp-workflow { background: #f7fbff; }
.product-lp .lp-section-head { margin-bottom: 35px; }
.product-lp .lp-step-tabs { gap: 17px; margin-bottom: 28px; }
.product-lp .lp-step-tab { padding: 18px 20px; min-height: 69px; }
.product-lp .lp-work-demo { min-height: 405px; }
.product-lp .lp-work-explain { padding: 62px 51px; }
.product-lp .lp-work-explain h3 { margin: 16px 0 24px; font-size:30px; }
.product-lp .lp-work-explain p { font-size:16px; line-height: 1.95; }
.product-lp .lp-work-visual { padding: 43px 43px 49px; }
.product-lp .lp-demo-main { padding: 21px; }
.product-lp .lp-demo-grid div { padding-block: 13px; }
.product-lp .lp-scenario-list { display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  margin-top: 46px;
  padding: 7px 38px;
  border: 1px solid #dcebf4;
  border-radius: 18px;
  background: rgba(255,255,255,.8); }
.product-lp .lp-scenario,
.product-lp .lp-scenario:first-child,
.product-lp .lp-scenario:last-child { display: grid;
  grid-template-columns: 230px 1fr;
  align-items: start;
  gap: 30px;
  padding: 24px 4px;
  border-right: 0;
  border-bottom: 1px solid #dceaf4; }
.product-lp .lp-scenario:last-child { border-bottom: 0; }
.product-lp .lp-scenario strong { font-size:17px; margin: 0; line-height: 1.7; }
.product-lp .lp-scenario p { font-size:15px; line-height: 1.8; }
.product-lp .lp-faq-section { background: #fbfdff; }
.product-lp .lp-faq summary { padding: 27px 13px; font-size:17px; }
.product-lp .lp-faq details p { padding: 0 40px 28px 13px; font-size:15px; line-height: 1.9; }
.product-lp .lp-final-cta { padding: 8px 0 var(--space-section-pc); background: #fbfdff; }
@media(max-width: 920px) {
.product-lp .lp-problem-box { padding: 43px 38px; }
.product-lp .lp-problem-side { padding-right: 32px; }
.product-lp .lp-problem-side + .lp-problem-side { padding-left: 32px; }
.product-lp .lp-bullet-list li strong { font-size:16px; }
.product-lp .lp-work-explain { padding: 38px 30px; }
.product-lp .lp-work-visual { padding: 32px 27px 42px; }
}
@media(max-width: 600px) {
.product-lp .lp-section,
.product-lp .lp-problem-section,
.product-lp .lp-workflow.lp-section,
.product-lp .lp-faq-section { padding-block: var(--space-section-sp); }
.product-lp .lp-section-title { font-size:27px; margin-bottom: 14px; }
.product-lp .lp-section-desc { font-size:14px; line-height: 1.85; margin-bottom: 28px; }
.product-lp .lp-section-kicker { margin-bottom: 9px; }
.product-lp .lp-problem-box { grid-template-columns: 1fr; padding: 33px 27px; border-radius: 19px; }
.product-lp .lp-problem-side { padding: 0 0 37px; }
.product-lp .lp-problem-side + .lp-problem-side { padding: 37px 0 0; border: 0; border-top: 1px solid #d7e7f1; }
.product-lp .lp-area-heading { font-size:21px; margin-bottom: 26px; gap: 12px; }
.product-lp .lp-heading-icon { width: 34px; height: 34px; }
.product-lp .lp-bullet-list { gap: 25px; }
.product-lp .lp-bullet-list li { font-size:14px; line-height: 1.8; gap: 12px; }
.product-lp .lp-bullet-list li strong { font-size:16px; line-height: 1.55; margin-bottom: 5px; }
.product-lp .lp-bullet-list .lp-tick { width: 23px; height: 23px; line-height: 23px; }
.product-lp .lp-feature-bullets { gap: 25px; }
.product-lp .lp-feature-bullets li { grid-template-columns: 8px minmax(0,1fr); gap: 13px; }
.product-lp .lp-feature-bullets li::before { width: 8px; height: 8px; margin-top: 11px; }
.product-lp .lp-section-head { margin-bottom: 23px; }
.product-lp .lp-step-tabs { gap: 8px; margin-bottom: 22px; }
.product-lp .lp-step-tab { padding: 11px 6px; min-height: 72px; font-size:12px; }
.product-lp .lp-work-demo { min-height: auto; }
.product-lp .lp-work-explain { padding: 32px 26px; }
.product-lp .lp-work-explain h3 { font-size:22px; margin: 10px 0 14px; }
.product-lp .lp-work-explain p { font-size:14px; line-height: 1.85; }
.product-lp .lp-work-visual { padding: 27px 17px 37px; }
.product-lp .lp-demo-main { padding: 11px; }
.product-lp .lp-demo-grid div { padding-block: 8px; }
.product-lp .lp-scenario-list { margin-top: 28px; padding: 5px 24px; border-radius: 16px; }
.product-lp .lp-scenario,
.product-lp .lp-scenario:first-child,
.product-lp .lp-scenario:last-child { display: block;
    padding: 21px 0;
    border-right: 0;
    border-bottom: 1px solid #dceaf4; }
.product-lp .lp-scenario:last-child { border: 0; }
.product-lp .lp-scenario strong { display: block; font-size:16px; margin: 0 0 6px; }
.product-lp .lp-scenario p { font-size:14px; line-height: 1.8; }
.product-lp .lp-faq summary { font-size:15px; line-height: 1.7; padding: 23px 5px; }
.product-lp .lp-faq details p { font-size:14px; line-height: 1.85; padding: 0 12px 26px 5px; }
.product-lp .lp-final-cta { padding: 5px 0 var(--space-section-sp); }
}
.product-lp .lp-price-annual { display:flex; align-items:baseline; flex-wrap:wrap; gap:5px; color:#123c63; }
.product-lp .lp-price-annual small { font-size:13px; font-weight:800; margin-right:5px; }
.product-lp .lp-price-annual strong { font-size:34px; font-weight:900; line-height:1.22; letter-spacing:-.04em; color:#007ac5; font-variant-numeric:tabular-nums; }
.product-lp .lp-price-annual strong span { font-size:18px; letter-spacing:0; }
.product-lp .lp-price-tax { font-size:13px; font-weight:700; color:#546d84; }
.product-lp .lp-price-monthly { font-size:13px; color:#486c8a; line-height:1.8; margin-top:7px; font-weight:700; }
@media(max-width:600px) {
.product-lp .lp-price-annual strong { font-size:32px; }
.product-lp .lp-price-annual small,
.product-lp .lp-price-tax { font-size:12px; }
.product-lp .lp-price-monthly { font-size:13px; }
}
.product-lp .lp-pricing-simple { display:grid;grid-template-columns: 1.28fr 1fr;gap:0;overflow:hidden;border:1px solid #d8e8f4;border-radius:23px;background:#fff;box-shadow:0 15px 38px rgba(27,78,114,.065); }
.product-lp .lp-pricing-main { padding:54px 60px;background:linear-gradient(125deg,#eaf7ff,#f7fcff);display:flex;flex-direction:column;justify-content:center; }
.product-lp .lp-pricing-label { color:#1e5278;font-size:16px;font-weight:800;letter-spacing:.01em;margin:0 0 16px; }
.product-lp .lp-pricing-main .lp-price-annual strong { font-size:54px; }
.product-lp .lp-pricing-main .lp-price-annual strong span { font-size:24px; }
.product-lp .lp-pricing-main .lp-price-tax { font-size:14px; }
.product-lp .lp-pricing-main .lp-price-monthly { font-size:16px;margin:11px 0 0;font-weight:750; }
.product-lp .lp-pricing-facts { display:flex;flex-direction:column;justify-content:center;gap:0;padding:35px 46px; }
.product-lp .lp-pricing-fact { display:flex;align-items:center;gap:22px;padding:23px 0; }
.product-lp .lp-pricing-fact + .lp-pricing-fact { border-top:1px solid #e0ebf4; }
.product-lp .lp-pricing-fact-icon { width:48px;height:48px;display:grid;place-items:center;background:#eaf5fe;color:#0079c2;border-radius:13px;flex:none;font-size:23px;font-weight:900; }
.product-lp .lp-pricing-fact-title { display:block;font-size:14px;color:#58758a;margin-bottom:4px; }
.product-lp .lp-pricing-fact strong { display:block;font-size:20px;line-height:1.45;color:#14395b; }
@media (max-width: 920px) {
.product-lp .lp-pricing-main { padding:44px 36px; }
.product-lp .lp-pricing-facts { padding:24px 28px; }
.product-lp .lp-pricing-main .lp-price-annual strong { font-size:42px; }
.product-lp .lp-pricing-fact strong { font-size:17px; }
}
@media (max-width: 600px) {
.product-lp .lp-pricing-simple { grid-template-columns:1fr;border-radius:19px; }
.product-lp .lp-pricing-main { padding:33px 28px 31px; }
.product-lp .lp-pricing-label { font-size:14px;margin-bottom:11px; }
.product-lp .lp-pricing-main .lp-price-annual strong { font-size:39px; }
.product-lp .lp-pricing-main .lp-price-annual strong span { font-size:18px; }
.product-lp .lp-pricing-main .lp-price-tax { font-size:12px; }
.product-lp .lp-pricing-main .lp-price-monthly { font-size:13px; }
.product-lp .lp-pricing-facts { padding:5px 28px; }
.product-lp .lp-pricing-fact { padding:22px 0;gap:16px; }
.product-lp .lp-pricing-fact-icon { height:42px;width:42px;font-size:20px; }
.product-lp .lp-pricing-fact strong { font-size:16px; }
}
.product-lp .lp-usage-terms-section { padding:4px 0 86px; }
.product-lp .lp-usage-terms-box { padding:37px 45px 34px; border:1px solid #dbeaf4; border-radius:20px; background:#fbfdff; }
.product-lp .lp-usage-terms-box h2 { font-size:22px; font-weight:850; margin:0 0 14px; letter-spacing:-.025em; }
.product-lp .lp-usage-terms-lead { font-size:14px;color:#637d94;margin:0 0 24px; }
.product-lp .lp-usage-terms-list { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:1fr; }
.product-lp .lp-usage-terms-list li { display:grid;grid-template-columns:220px minmax(0,1fr); align-items:start;gap:20px; padding:18px 0; border-top:1px solid #e2edf6; font-size:14px; line-height:1.85; }
.product-lp .lp-usage-terms-list li:last-child { padding-bottom:6px; }
.product-lp .lp-usage-terms-list strong { color:#1b4669; font-weight:800; }
.product-lp .lp-usage-terms-list span { color:#445f79; }
@media(max-width:600px) {
.product-lp .lp-usage-terms-section { padding:0 0 57px; }
.product-lp .lp-usage-terms-box { padding:28px 24px 26px; border-radius:17px; }
.product-lp .lp-usage-terms-box h2 { font-size:21px; }
.product-lp .lp-usage-terms-lead { font-size:13px;margin-bottom:16px; }
.product-lp .lp-usage-terms-list li { display:block;padding:17px 0; font-size:13px; }
.product-lp .lp-usage-terms-list strong { display:block;margin-bottom:5px;font-size:14px; }
}
.product-lp .lp-product-icon { background:#fff; border:1px solid #d6e8f4; border-radius:18px; box-shadow:0 9px 23px rgba(10,85,138,.09); padding:10px; }
.product-lp .lp-product-icon img { display:block; width:100%; height:100%; object-fit:contain; }
@media (max-width:600px) {
.product-lp .lp-product-icon { padding:6px; border-radius:13px; }
}

/* Native disabled CTAs retain their visual hierarchy without invented URLs. */
.product-lp .lp-btn:disabled { opacity: 1; cursor: not-allowed; }
.product-lp .lp-btn:disabled:hover { transform: none; box-shadow: 0 6px 16px rgba(24,66,103,.08); }
.product-lp .lp-cta-availability { font-size:12px; color: #4b6581; margin: 12px 0 0; }
.product-lp .lp-breadcrumb a:hover { text-decoration: underline; }
.product-lp .lp-demo-summary { flex-wrap: wrap; }
.product-lp .lp-search-button { cursor: default; display: inline-block; }
.product-lp .lp-work-demo:focus-visible { outline: 3px solid #0071b7; outline-offset: 4px; }
@media (max-width: 600px) {
  .product-lp .lp-hero-h2 { text-wrap: pretty; }
  .product-lp .lp-cta-availability { font-size:12px; }
}
@media (max-width: 360px) {
  .product-lp .lp-product-name { font-size:32px; }
  .product-lp .lp-product-icon { width: 48px; height: 48px; }
  .product-lp .lp-series-tag { font-size:12px; gap: 6px; }
  .product-lp .lp-hero-h2 { font-size:23px; }
}

/* Shared reading scale: balanced across hero, features, examples and terms. */
.product-lp {
  --lp-heading: #171b22;
  --lp-body: #292e35;
  --lp-note: #4b535e;
  --lp-copy-size: 18px;
  --lp-note-size: 15px;
  --lp-small-size: 15px;
  --lp-section-title-size: 32px;
  --lp-area-title-size: 28px;
  --lp-card-title-size: 20px;
  --lp-callout-size: 28px;
  --lp-hero-copy-size: 38px;
  --lp-button-size: 17px;
  --lp-copy-leading: 1.75;
  --lp-content-width: 1240px;
  --lp-hero-width: 1160px;
  --lp-page-gutter: 32px;
  --lp-card-padding: 48px;
  --lp-column-gap: 40px;
  --lp-list-gap: 32px;
  --navy: var(--lp-heading);
  --ink: var(--lp-body);
  --muted: var(--lp-note);
  color: var(--lp-body);
  line-height: var(--lp-copy-leading);
}
.product-lp .lp-wrap { width: min(var(--lp-content-width), calc(100% - 2 * var(--lp-page-gutter))); }
/* Keep the approved first-view composition while widening the reading sections. */
.product-lp .lp-hero-wrap .lp-wrap { max-width: var(--lp-hero-width); }
.product-lp .lp-problem-box { padding: var(--lp-card-padding); }
.product-lp .lp-problem-side { min-width: 0; padding-right: var(--lp-column-gap); }
.product-lp .lp-problem-side + .lp-problem-side { padding-left: var(--lp-column-gap); }
.product-lp :is(.lp-bullet-list, .lp-feature-bullets) { gap: var(--lp-list-gap); }
.product-lp :is(.lp-work-explain, .lp-pricing-main, .lp-usage-terms-box) { padding: var(--lp-card-padding); }
.product-lp .lp-pricing-facts { padding: 24px var(--lp-card-padding); }
.product-lp .lp-work-visual { padding: var(--lp-card-padding); }
.product-lp .lp-demo-head { height: auto; min-height: 40px; padding-block: 10px; }
.product-lp .lp-mock-caption { position: static; margin: 16px 0 0; justify-self: end; text-align: right; }
.product-lp .lp-usage-terms-list { min-width: 0; }
.product-lp .lp-usage-terms-list li { grid-template-columns: 280px minmax(0, 1fr); gap: var(--lp-column-gap); }
.product-lp .lp-faq details p { max-width: 80ch; }
.product-lp .lp-phrase { display: inline-block; }
.product-lp .lp-tab-label { min-width: 0; }
.product-lp :is(h1, h2, h3, .lp-bullet-list strong, .lp-scenario strong,
  .lp-pricing-label, .lp-pricing-fact strong, .lp-usage-terms-list strong) { color: var(--lp-heading); }
.product-lp :is(.lp-hero-lead, .lp-subfeature, .lp-bullet-list li, .lp-work-explain p,
  .lp-scenario p, .lp-faq details p, .lp-usage-terms-list span,
  .lp-ui-table, .lp-ui-table th, .lp-stat-line, .lp-stat-line strong,
  .lp-demo-grid div, .lp-demo-input, .lp-step-tab) { color: var(--lp-body); }
.product-lp :is(.lp-section-desc, .lp-series-tag, .lp-breadcrumb, .lp-breadcrumb span:last-child,
  .lp-price-monthly, .lp-price-tax, .lp-pricing-fact-title, .lp-usage-terms-lead,
  .lp-cta-availability, .lp-preview-badge, .lp-mock-caption) { color: var(--lp-note); }
.product-lp :is(.lp-section-kicker, .lp-overline, .lp-stat-title,
  .lp-demo-head, .lp-mini-summary, .lp-demo-high) { color: #0069ad; }
.product-lp :is(.lp-hero-lead, .lp-section-desc, .lp-work-explain p,
  .lp-bullet-list li, .lp-scenario p, .lp-faq details p, .lp-usage-terms-list li,
  .lp-usage-terms-lead) { font-size: var(--lp-copy-size); line-height: var(--lp-copy-leading); text-wrap: pretty; }
.product-lp :is(.lp-cta-availability, .lp-price-tax,
  .lp-pricing-fact-title) { font-size: var(--lp-note-size); }
.product-lp .lp-section-title { font-size: var(--lp-section-title-size); text-wrap: balance; }
.product-lp .lp-hero-h2 { font-size: var(--lp-hero-copy-size); text-wrap: balance; }
.product-lp .lp-area-heading { font-size: var(--lp-area-title-size); }
.product-lp .lp-bullet-list li strong { font-size: var(--lp-card-title-size); text-wrap: pretty; }
.product-lp .lp-work-explain h3 { font-size: var(--lp-callout-size); }
.product-lp .lp-scenario strong { font-size: var(--lp-card-title-size); }
.product-lp .lp-scenario, .product-lp .lp-scenario:first-child,
.product-lp .lp-scenario:last-child { grid-template-columns: 250px minmax(0, 1fr); }
.product-lp .lp-series-tag { font-size: 16px; flex-wrap: wrap; }
.product-lp .lp-subfeature { font-size: 16px; }
.product-lp .lp-hero-actions .lp-btn { font-size: var(--lp-button-size); }
.product-lp .lp-hero-ui-bar, .product-lp .lp-stat-title { font-size: 15px; }
.product-lp :is(.lp-search-token, .lp-search-button, .lp-ui-table, .lp-ui-table th,
  .lp-stat-line, .lp-demo-head, .lp-demo-input, .lp-demo-grid div, .lp-mini-summary) { font-size: var(--lp-small-size); }
.product-lp .lp-hero-stage { --lp-small-size: 15px; }
.product-lp .lp-ui-table :is(th, td) { font-size: var(--lp-small-size); }
.product-lp .lp-step-tab { font-size: var(--lp-button-size); }
.product-lp .lp-step-num { font-size: 15px; }
.product-lp .lp-work-explain .lp-overline { font-size: 15px; }
.product-lp .lp-pricing-label { font-size: var(--lp-card-title-size); }
.product-lp .lp-pricing-main .lp-price-monthly { font-size: 18px; }
.product-lp .lp-pricing-main .lp-price-tax { font-size: 16px; }
.product-lp .lp-pricing-fact strong { font-size: var(--lp-card-title-size); }
.product-lp .lp-faq summary { font-size: var(--lp-card-title-size); line-height: var(--lp-copy-leading); text-wrap: pretty; }
.product-lp .lp-usage-terms-box h2 { font-size: var(--lp-area-title-size); text-wrap: balance; }
.product-lp .lp-usage-terms-box h2 span { display: inline-block; }
.product-lp .lp-usage-terms-list strong { font-size: var(--lp-card-title-size); }
.product-lp .lp-usage-terms-list li { padding-block: 22px; }
.product-lp .lp-mock-caption { font-size: var(--lp-small-size); }
.product-lp .lp-section-kicker { font-size: 15px; }
.product-lp .lp-tag-pill { background: #0073bd; }
.product-lp .lp-ui-table td:first-child { color: #0069ad; }
.product-lp .lp-breadcrumb { flex-wrap: wrap; font-size: 14px; }
.product-lp .lp-breadcrumb a { color: #0069ad; }
.product-lp .lp-hero-mascot, .product-lp .lp-hero-mascot img { animation: none; transform: none; }
.product-lp .lp-work-demo { grid-template-columns: minmax(0, 37fr) minmax(0, 63fr); }
.product-lp .lp-work-visual { min-width: 0; }
.product-lp .lp-demo-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
/* Examples, pricing (except the annual amount) and FAQ use black text.
   Selection remains clear through the existing outlines and pale backgrounds. */
.product-lp :is(#how-to, #price, #faq) * { color: var(--lp-heading); }
.product-lp #price .lp-price-annual strong,
.product-lp #price .lp-price-annual strong span { color: #007ac5; }
.product-lp #how-to .lp-search-button { background: #dceefa; border: 1px solid #bbdaef; }
.product-lp #how-to .lp-step-tab[aria-selected="true"] .lp-step-num { background: #c7e5fa; }
.product-lp #faq summary::after { color: var(--lp-heading); }
.product-lp #terms :is(h2, p, strong, li, span) { color: var(--lp-heading); }
@media (max-width: 920px) {
  .product-lp { --lp-card-padding: 36px; --lp-column-gap: 28px; }
  .product-lp .lp-problem-box { grid-template-columns: 1fr; }
  .product-lp .lp-problem-side { padding: 0 0 var(--lp-list-gap); }
  .product-lp .lp-problem-side + .lp-problem-side { padding: var(--lp-list-gap) 0 0; border-left: 0; border-top: 1px solid #d7e7f1; }
  .product-lp .lp-work-demo { grid-template-columns: 1fr; }
  .product-lp .lp-usage-terms-list li { grid-template-columns: minmax(0, 1fr); gap: 8px; }
}
@media (max-width: 600px) {
  .product-lp {
    --lp-copy-size: 17px;
    --lp-small-size: 14px;
    --lp-section-title-size: 28px;
    --lp-area-title-size: 24px;
    --lp-card-title-size: 19px;
    --lp-callout-size: 24px;
    --lp-hero-copy-size: 28px;
    --lp-button-size: 16px;
    --lp-page-gutter: 20px;
    --lp-card-padding: 24px;
    --lp-list-gap: 28px;
  }
  .product-lp .lp-problem-box { padding-block: 32px; }
  .product-lp .lp-series-tag { font-size: 15px; }
  .product-lp .lp-tag-pill { font-size: 14px; }
  .product-lp .lp-section-kicker { font-size: 14px; }
  .product-lp .lp-breadcrumb { font-size: 14px; }
  .product-lp .lp-hero-subfeatures { gap: 12px 16px; }
  .product-lp .lp-subfeature { font-size: 16px; }
  .product-lp .lp-hero-actions .lp-btn { min-height: 58px; }
  .product-lp .lp-step-tab { line-height: 1.6; padding: 14px 6px; }
  .product-lp .lp-work-explain { padding-block: 32px; }
  .product-lp .lp-work-visual { padding: 24px 12px; }
  .product-lp .lp-demo-grid div { padding: 12px 4px; font-size: var(--lp-small-size); }
  .product-lp .lp-demo-summary { gap: 6px; }
  .product-lp .lp-mini-summary { padding: 7px 8px; }
  .product-lp .lp-hero-stage { --lp-small-size: 14px; min-height: 405px; }
  .product-lp .lp-hero-ui { min-height: 260px; }
  .product-lp .lp-hero-ui-bar { font-size: 14px; height: 40px; }
  .product-lp .lp-ui-table :is(th, td) { padding: 8px 4px; }
  .product-lp .lp-hero-mascot { bottom: 20px; }
  .product-lp .lp-stat-panel { width: 174px; bottom: 28px; }
  .product-lp .lp-stat-title { font-size: 14px; }
  .product-lp .lp-stat-line strong { font-size: 16px; }
  .product-lp .lp-usage-terms-box { padding-block: 32px; }
  .product-lp .lp-pricing-main .lp-price-monthly { font-size: var(--lp-copy-size); }
  .product-lp .lp-pricing-facts { padding-block: 8px; }
}
@media (max-width: 360px) {
  .product-lp { --lp-page-gutter: 16px; --lp-card-padding: 20px; }
  .product-lp .lp-step-tabs { gap: 6px; }
  .product-lp .lp-step-tab { padding-inline: 5px; }
}

/* Final CTA: a short introduction and two actions, without a surrounding card. */
.product-lp .lp-final-cta { background: #fff; padding: 8px 0 var(--space-section-pc); }
.product-lp .lp-final-intro { text-align: center; margin-bottom: 32px; }
.product-lp .lp-final-intro .lp-section-title { margin: 0 0 16px; text-wrap: wrap; }
.product-lp .lp-final-intro p { margin: 0; font-size: var(--lp-copy-size); line-height: var(--lp-copy-leading); color: var(--lp-body); text-wrap: pretty; }
.product-lp .lp-final-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.product-lp .lp-final-actions .lp-btn { width: 100%; min-height: 88px; padding: 24px; font-size: var(--lp-button-size); }
@media (max-width: 600px) {
  .product-lp .lp-final-cta { padding: 4px 0 var(--space-section-sp); }
  .product-lp .lp-final-actions { grid-template-columns: 1fr; gap: 16px; }
  .product-lp .lp-final-actions .lp-btn { min-height: 72px; padding: 20px 12px; }
}

/* Optional introduction; these selectors cannot affect the main LP. */
.product-lp .lp-series-return { background: #fff; text-align: center; padding: 0 var(--lp-page-gutter) 56px; margin-top: -48px; position: relative; }
.product-lp .lp-series-return a { display: inline-flex; align-items: center; min-height: 44px; padding: 8px 12px; color: #0069ad; font-size: var(--lp-button-size); text-decoration: underline; text-underline-offset: .25em; }
.lp-opening {
  --lp-opening-scale: 1;
  position: fixed;
  inset: 0;
  z-index: 1000;
  overflow: hidden;
  isolation: isolate;
  touch-action: none;
  animation: lp-opening-safety 0s 1.9s forwards;
}
.lp-opening__panel {
  position: absolute;
  left: 0;
  width: 100%;
  height: calc(50% + 1px);
  background: #007cdb;
}
.lp-opening__panel--top { top: 0; }
.lp-opening__panel--bottom { bottom: 0; }
.lp-opening__character {
  position: absolute;
  z-index: 1;
  left: 0;
  top: 50%;
  width: min(640px, 86vw);
  height: auto;
  max-width: none;
  transform: translate3d(100vw, -50%, 0);
}
.lp-opening.is-playing .lp-opening__character {
  animation: lp-opening-run calc(.85s * var(--lp-opening-scale)) cubic-bezier(.32,.02,.8,.66) calc(.1s * var(--lp-opening-scale)) both;
  will-change: transform;
}
.lp-opening.is-playing .lp-opening__panel--top { animation: lp-opening-top calc(.65s * var(--lp-opening-scale)) cubic-bezier(.7,0,.3,1) calc(1s * var(--lp-opening-scale)) both; }
.lp-opening.is-playing .lp-opening__panel--bottom { animation: lp-opening-bottom calc(.65s * var(--lp-opening-scale)) cubic-bezier(.7,0,.3,1) calc(1s * var(--lp-opening-scale)) both; }
html[data-lp-opening-active], html[data-lp-opening-active] body { overflow: hidden; overscroll-behavior: none; }
@keyframes lp-opening-run {
  from { transform: translate3d(100vw, -50%, 0); }
  to { transform: translate3d(-100%, -50%, 0); }
}
@keyframes lp-opening-top { to { transform: translateY(-101%); } }
@keyframes lp-opening-bottom { to { transform: translateY(101%); } }
@keyframes lp-opening-safety { to { visibility: hidden; pointer-events: none; } }
@media (prefers-reduced-motion: reduce) { .lp-opening { display: none !important; } }
