/* Product page: shared rows keep screenshots, captions and copy aligned. */
*,*::before,*::after{box-sizing:border-box}
main{padding:48px 0 24px}
main>section{margin-top:56px;margin-bottom:56px}
main>section:last-child{margin-bottom:0}
.lead{max-width:760px}
.grid{gap:24px;align-items:stretch}
.card{padding:24px}
.card h2{margin:0 0 16px;line-height:1.25;min-height:2.5em}
.card p{margin:0}
.trust{padding:clamp(20px,3vw,36px)}
.trust>h2{margin:0 0 32px;line-height:1.25;font-size:clamp(1.6rem,3vw,2rem)}
.role-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 28px}
.role-grid>div{display:grid;grid-template-rows:subgrid;grid-row:span 4;min-width:0}
.role-grid h3{margin:0;font-size:1.2rem;line-height:1.35}
.role-shot{display:contents}
.role-shot a{display:block;align-self:start;border:1px solid #d5dfe1;border-radius:14px;overflow:hidden;background:#eef3f4}
.role-shot img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;object-position:left top}
.role-shot a span{display:block;padding:12px 16px;line-height:1.4;font-size:14px}
.role-shot figcaption{margin:0;font-size:13px;line-height:1.6;color:#526a73}
.role-grid>div>p{margin:0;line-height:1.7}
.trust>.note{margin:28px 0 0;padding-top:20px;border-top:1px solid #dce3e4}
.product-film{padding-top:8px}
.product-film h2{line-height:1.25}
.seo-section{padding:0;max-width:860px}
.seo-section h2{margin-bottom:20px}
.faq details:last-of-type{border-bottom:1px solid #dce3e4}
.site-footer{border-top:1px solid #dce3e4}
@media(max-width:740px){
  main{padding-top:24px}
  main>section{margin-top:40px;margin-bottom:40px}
  .grid{gap:16px}
  .card h2{min-height:0}
  .role-grid{grid-template-columns:minmax(0,1fr);row-gap:14px}
  .role-grid>div+div{margin-top:24px;padding-top:24px;border-top:1px solid #dce3e4}
  .trust>h2{margin-bottom:24px}
  .actions{gap:10px}
  .actions .button{width:100%;text-align:center}
  .role-shot a span{padding:12px}
}
