@import url('./product-fonts.css');
/* Shared static-visual product-page template; site.css owns global design tokens. */
.product-page{--surface:#F7F8FA}
.product-hero{padding:72px 0 76px;background:#fff}
.product-hero-grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:44px;align-items:center}
.product-hero-copy{min-width:0;padding-bottom:8px}
/* Hero copy stays static; motion belongs exclusively to the chart. */
.product-hero-copy,.product-hero-copy *{animation:none!important;transform:none!important;opacity:1!important}
.product-hero h1{font-family:var(--serif);font-size:38px;font-weight:600;line-height:1.5;letter-spacing:0}
.product-hero h1 .brand-word{font-size:40px}
/* Fit the English product names consistently within the desktop copy column. */
@media(min-width:900px){
 html:lang(en) .product-hero-copy{container-type:inline-size}
 html:lang(en) .product-hero h1{font-size:min(38px,6.8cqi)}
}
.product-title-divider{font-family:var(--font);color:var(--muted);font-size:24px;font-weight:400}
.product-name{display:inline-block}
.product-promise{font-family:var(--serif);font-size:25px;line-height:1.9;margin-top:26px;color:var(--ink);font-weight:600}
.product-promise>span{display:block}
.product-proof{display:flex;flex-wrap:wrap;gap:8px 0;list-style:none;padding:0;margin:26px 0 32px;color:var(--secondary);font-size:14px}
.product-proof li{white-space:nowrap}
.product-proof li+li::before{content:'｜';color:#bdc9d9;margin:0 5px}
.product-hero .button{min-width:160px;padding-inline:26px}
.product-hero-visual{min-width:0}
.outlook-chart{width:100%;height:auto;overflow:visible;font-family:var(--font)}
.outlook-chart text{font-family:var(--font)}
.outlook-chart.is-playing .outlook-reveal{animation:outlook-draw 1500ms cubic-bezier(.22,.61,.36,1) both;transform-origin:0 0}
.outlook-chart.is-playing .outlook-findings{animation:outlook-findings 650ms 850ms ease both}
.outlook-chart.is-playing .outlook-share{animation:outlook-findings 700ms var(--reveal-delay) ease both}
@keyframes outlook-draw{from{transform:scaleX(.26)}to{transform:scaleX(1)}}
@keyframes outlook-findings{from{opacity:0}to{opacity:1}}
/* Section headings and intros inherit the homepage typography (36px desktop). */
.research-challenges{background:var(--surface)}
.research-challenges .section-head,.research-differences .section-head{margin-bottom:64px}
.challenge-grid{--column-gap:56px;--divider-optical-shift:0px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:var(--column-gap)}
.challenge-grid article{position:relative;min-width:0;padding:4px 0 12px}
.challenge-grid article+article::before{content:'';position:absolute;top:0;bottom:0;left:calc(var(--column-gap)/-2 - var(--divider-optical-shift));width:1px;background:var(--line);transform:translateX(-50%)}
.challenge-grid h3{font-size:20px;line-height:1.7;min-height:3.4em;margin-bottom:26px}
.challenge-grid .heading-line{display:block}
.challenge-grid p{color:var(--secondary);font-size:16px;line-height:1.9}
.product-features .section-head{margin-bottom:72px}
.feature-list{display:grid;gap:128px}
.feature-row{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:64px;align-items:center}
.feature-row.feature-reverse{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}
.feature-reverse .feature-copy{order:2}
.feature-copy h3{color:#2F5F8F;font-family:var(--serif);font-size:28px;line-height:1.7;font-weight:600;margin-bottom:22px;text-wrap:pretty}
.feature-copy p{color:var(--secondary);font-size:16px;line-height:1.95}
.feature-copy ul{padding:0;list-style:none;margin:24px 0 0;display:grid;gap:13px}
.feature-copy li{position:relative;padding-left:18px;font-size:15px;line-height:1.9;color:var(--secondary)}
.feature-copy li::before{content:'・';position:absolute;left:0;color:var(--brand)}
.feature-demo-link{margin-top:26px;min-height:44px}
.feature-visual{display:block;min-width:0;cursor:default}
.feature-visual img{display:block;width:100%;height:auto;border-radius:12px;box-shadow:0 6px 22px rgba(25,49,76,.055),0 1px 4px rgba(25,49,76,.025)}
.research-needs{background:var(--surface)}
.product-info-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.product-info-grid article{min-width:0}
.product-info-grid .icon{width:32px;height:32px;color:var(--brand);margin-bottom:22px}
.product-info-grid h3{font-size:20px;line-height:1.7;margin-bottom:18px;text-wrap:pretty}
.product-info-grid p{font-size:15px;line-height:1.95;color:var(--secondary)}
.research-needs .section-head{margin-bottom:64px}
.product-info-grid.needs-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.needs-card-head{display:flex;align-items:center;gap:16px}
.needs-grid .needs-card-head .icon{width:32px;height:32px;margin:0}
.needs-grid h3{font-size:22px;line-height:1.6;margin:0}
.needs-grid p{font-size:16px;line-height:1.9;margin-top:20px;padding-left:48px}
.difference-grid h3{min-height:3.4em}
.difference-grid .heading-line{display:block}
.product-page .faq-layout{grid-template-columns:280px minmax(0,1fr);gap:64px}
.product-page .nav-panel a[aria-current=page]{color:var(--brand);background:var(--soft)}
@media(min-width:1200px){.product-hero-visual{position:relative;left:32px}}
@media(min-width:1400px){.product-hero-grid{grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:40px}}
@media(max-width:1199px){.product-hero-grid{gap:24px}.product-hero h1{font-size:31px}.product-hero h1 .brand-word{font-size:36px}.product-promise{font-size:22px}.product-proof{font-size:14px;display:grid;gap:5px}.product-proof li+li::before{content:none}.challenge-grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:32px}.challenge-grid article:nth-child(odd)::before{display:none}.feature-row,.feature-row.feature-reverse{gap:36px}.feature-copy h3{font-size:25px}.product-info-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}}
@media(max-width:899px){.product-hero{padding:48px 0 56px}.product-hero-grid{grid-template-columns:1fr;gap:32px}.product-hero-copy{max-width:620px}.product-hero h1{font-size:36px}.product-hero h1 .brand-word{font-size:42px}.product-promise{font-size:25px}.product-proof{display:flex}.product-proof li+li::before{content:'｜'}.product-hero-visual{width:100%;max-width:720px;margin-inline:auto}.feature-row,.feature-row.feature-reverse{grid-template-columns:1fr;gap:30px}.feature-reverse .feature-copy{order:0}.feature-copy{max-width:680px}.feature-list{gap:88px}.feature-visual{max-width:660px;width:100%;margin-inline:auto}.product-page .faq-layout{grid-template-columns:1fr;gap:28px}}
@media(max-width:767px){.research-challenges .section-head,.research-differences .section-head{margin-bottom:40px}.product-hero{padding:36px 0 44px}.product-hero-grid{gap:30px}.product-hero h1{font-size:27px}.product-hero h1 .brand-word{font-size:32px}.product-title-divider{font-size:19px}.product-promise{font-size:22px;line-height:1.85;margin-top:22px}.product-proof{display:grid;font-size:14px;margin:22px 0 26px;gap:4px}.product-proof li+li::before{content:none}.product-hero .button{min-width:152px}.challenge-grid{grid-template-columns:1fr;gap:28px}.challenge-grid article:nth-child(n){padding:0}.challenge-grid article::before{display:none}.challenge-grid h3{font-size:20px;margin-bottom:18px}.product-features .section-head{margin-bottom:38px}.feature-list{gap:72px}.feature-copy h3{font-size:24px;margin-bottom:18px}.feature-copy li{font-size:16px}.product-info-grid{grid-template-columns:1fr;gap:26px}.product-info-grid p{font-size:16px}.product-info-grid .icon{margin-bottom:18px}.research-needs .section-head{margin-bottom:40px}.product-info-grid.needs-grid{grid-template-columns:1fr}.needs-grid h3{font-size:20px}.needs-grid p{padding-left:0}}
@media(prefers-reduced-motion:reduce){.outlook-chart.is-playing *{animation:none!important;transform:none!important;opacity:1!important}}

/* Short semantic lines leave trailing whitespace: compensate visually at desktop size. */
@media(min-width:1280px){.challenge-grid{--divider-optical-shift:12px}.challenge-copy-line{display:block}}
/* Static product examples retain their original image-card and testimonial layouts. */
.product-cases-section{background:var(--surface)}
.product-case-grid{margin-top:48px}
.product-panel-case-card>img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}
.product-panel-case-card .tags{color:#2f5f8f}
@media(max-width:767px){.product-case-grid{margin-top:30px}}
