/* Homepage presentation, separate from shared primitives. */
.home-page{--header-height:64px;--anchor-offset:80px}
.home-page .hero{background:linear-gradient(180deg,#f6f8fa,var(--paper))}
.image-frame{overflow:hidden;background:#fff;border:1px solid #d7e2ee;border-radius:12px;box-shadow:0 6px 20px rgba(16,42,76,.08)}
.image-frame img{display:block;width:100%;height:auto}
.why{background:#f6f8fa;padding:var(--compact-padding) 0 var(--space-6)}
.why>.wrap>h2{margin-bottom:var(--space-3)}
.feature-row{padding-block:var(--feature-padding);border-top:var(--border-width) solid var(--line)}
.why-continued{padding-top:0}
.feature-row{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--grid-gap);align-items:center}
.feature-media{min-width:0;max-width:100%}
.feature-media img{display:block;width:100%;max-width:100%;height:auto;object-fit:contain}
.hero-image{width:100%;height:auto;aspect-ratio:1584/993;object-fit:cover;object-position:center}
.hero-closing{font-weight:500;color:var(--text-feature)}
@media(min-width:900px){
  .feature-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .feature-row--image-left .feature-media{order:-1}
  .feature-media img{max-width:528px}
}
.home-page .header-row{height:auto;min-height:calc(var(--header-height) - var(--border-width))}
.home-page .brand-tagline{margin-bottom:0;min-width:0;font-size:.875rem;font-weight:500;line-height:1;transform:translateY(-3px);color:#66758a;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(min-width:901px) and (max-width:1024px){
  .home-page .brand-tagline{font-size:.75rem;letter-spacing:-.01em}
}
.aligned-section{--adjacent-section-padding:48px;--adjacent-section-columns:repeat(3,minmax(0,1fr));padding-block:var(--adjacent-section-padding)}
.proof{border-block:var(--border-width) solid var(--line);background:var(--paper)}
.proof ul{display:grid;grid-template-columns:var(--adjacent-section-columns);margin:0;padding:0;list-style:none}
.proof li{display:flex;flex-direction:column;align-items:center;padding:var(--space-3);border-left:var(--border-width) solid var(--line);text-align:center}
.proof li:first-child{border-left:0}
.proof strong,.big b{font-size:var(--type-stat);line-height:1.1;color:var(--blue);font-weight:700}
.proof span{margin-top:4px;font-size:var(--type-small);color:var(--text-muted)}
.devices{background:var(--ink);color:var(--paper)}
.dev-grid,.device-content{display:grid;grid-template-columns:var(--adjacent-section-columns);align-items:stretch}
.dev-grid>h2,.device-content{grid-column:1/-1}
.device-copy{grid-column:1/3}
.devices h2{color:var(--paper)}
.devices p{max-width:520px;margin-top:var(--space-2);color:var(--text-on-dark)}
.devices .btn{margin-top:var(--space-3)}
.big{grid-column:3;display:flex;flex-direction:column;align-items:center;justify-content:center;border-left:var(--border-width) solid var(--rule-green);text-align:center}
.big span{font-size:18px;color:var(--text-on-dark)}
.home-page .contact{background:#f6f8fa;border-top:var(--border-width) solid var(--line);padding-bottom:var(--compact-padding)}
.contact-info .lede{margin-bottom:var(--space-2)}
.cl{display:flex;flex-direction:column;border-left:var(--border-width) solid var(--rule-blue);padding-left:var(--space-2)}
.cl small{font-size:var(--type-meta);font-weight:500;color:var(--text-muted)}
.cl a,.cl span{color:var(--text-feature);font-size:18px;font-weight:500;text-decoration:none}
.cl a:hover{color:var(--blue)}
.home-page .contact-form{padding:var(--space-4);border:var(--border-width) solid var(--line);border-radius:var(--radius-panel);background:var(--paper)}
@media(max-width:899px){
  .feature-row{grid-template-columns:minmax(0,1fr);gap:var(--space-4)}
  .feature-row .feature-media.image-frame{display:flex;justify-content:center;width:min(100%,528px);max-width:528px;justify-self:center}
  .feature-row .feature-media img{display:block;width:min(100%,528px);max-width:528px;height:auto}
}
@media(max-width:767px){
  .why{padding-bottom:var(--section-padding)}
  .feature-row{gap:var(--space-3)}
  .aligned-section{--adjacent-section-padding:40px;--adjacent-section-columns:minmax(0,1fr)}
  .device-content{row-gap:var(--space-4)}
  .device-copy,.big{grid-column:1/-1}
  .big{align-items:flex-start;border-left:0;text-align:left}
  .proof li{display:grid;grid-template-columns:104px minmax(0,1fr);gap:var(--space-2);padding:var(--space-2) 0;border-left:0;text-align:left}
  .proof li+li{border-top:var(--border-width) solid var(--line)}
  .proof span{margin-top:0}
  .home-page .contact-form{padding:var(--space-3) var(--space-2)}
}
@media(max-width:420px){
  .home-page .brand-tagline{display:none}
}