/* Homepage-only styles.  Intentionally does not modify site.css or Contact. */
.sa-home-hero{background:#0b0b0c;color:#fff;isolation:isolate;overflow:hidden}
.sa-home-grid{max-width:1480px;margin-inline:auto;padding:clamp(28px,4vw,58px) clamp(20px,4.5vw,68px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.03fr);align-items:center;gap:clamp(24px,3vw,48px)}
.sa-home-copy,.sa-home-visual{min-width:0}
.sa-home-wordmark{display:block;width:min(100%,410px);height:auto;margin-bottom:26px}
.sa-home-copy h1{margin:0;font-size:clamp(36px,3.4vw,54px);font-weight:800;line-height:1.06;letter-spacing:-.035em;white-space:normal;overflow-wrap:normal;text-wrap:balance}
.sa-home-copy h1 span{display:block;color:#ed2027}
.sa-home-copy p{margin:24px 0 28px;font-size:clamp(17px,1.35vw,20px);line-height:1.62;color:#e5e5e5;max-width:58ch}
.sa-home-cta{display:inline-flex;justify-content:center;align-items:center;gap:14px;padding:18px 25px;min-height:64px;background:#d71920;color:#fff;text-decoration:none;font-weight:800;font-size:22px;line-height:1.3;border:2px solid transparent;border-radius:4px}
.sa-home-cta img{width:30px;height:34px;object-fit:contain}
.sa-home-cta:hover{background:#b80f18}
.sa-home-cta:focus-visible,.sa-home-main a:focus-visible{outline:3px solid #fff;outline-offset:5px}
.sa-home-main a:focus-visible{outline-color:#d71920}
.sa-home-cta .sa-arrow{font-size:29px;font-weight:400;margin-left:4px}
.sa-home-tagline{margin:0 0 14px;text-align:center;font-weight:900;font-style:italic;font-size:clamp(19px,1.8vw,27px);line-height:1.2;letter-spacing:-.025em}
.sa-home-tagline strong,.sa-home-tagline span{display:block}
.sa-home-tagline span{color:#f1272d;margin-top:7px}
.sa-home-scene{position:relative;margin:0;aspect-ratio:980 / 816;isolation:isolate}
.sa-home-scene picture,.sa-home-scene picture img{display:block;width:100%;height:auto}
.sa-home-scene::after{content:"";position:absolute;inset:-1px;pointer-events:none;z-index:3;background:linear-gradient(90deg,#0b0b0c,transparent 8%,transparent 96%,#0b0b0c),linear-gradient(0deg,#0b0b0c,transparent 11%,transparent 96%,#0b0b0c)}
.sa-home-scene .sa-brand-layer{position:absolute;display:block;height:auto;z-index:2;pointer-events:none}
/* Percentages are relative to the fixed-ratio artwork, never to the viewport.
   These layers reference the original official files already in /graphics. */
/* Center the unaltered wordmark within the white label, above the barcode.
   Match the label's sloping baseline without rotating its vertical edges. */
.sa-box-wordmark{left:13.2%;top:65.7%;width:29.4%;transform-origin:top left;transform:skewY(3deg);mix-blend-mode:multiply}
.sa-shirt-mark{left:42.2%;top:44.0%;width:4.8%;transform:rotate(9deg) skewX(-7deg)}
.sa-scanner-mark{left:76.7%;top:56.0%;width:9.6%;transform:rotate(-10deg) skewX(5deg)}
.sa-home-main{max-width:1320px}
.sa-home-main .feature-links{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.sa-home-main .feature-links a{min-width:0;padding:23px 20px;transition:background-color .15s}
.sa-home-main .feature-links a:hover{background:#ededed}
.sa-home-main .feature-links h3{font-size:24px;line-height:1.15}
.sa-home-main .feature-links p{margin-bottom:0}
.sa-home-eyebrow{font-size:clamp(26px,4.2vw,50px);font-weight:900;line-height:1.1;letter-spacing:-.035em;color:#bd111a;margin:0 0 24px;text-transform:none}
.sa-home-main h2{max-width:850px}
.sa-home-founder{padding-top:12px;padding-bottom:56px}
.sa-home-founder a{color:#bb1119;font-weight:700}
.sa-dms-section{margin-top:54px;border-top:1px solid #ddd;padding-top:30px;scroll-margin-top:140px}
.sa-dms-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:24px 0}
.sa-dms-grid article{padding:22px;background:#f6f6f6;border-left:4px solid #d71920}
.sa-dms-grid h3{margin:0 0 10px;font-size:23px;line-height:1.2}
.sa-dms-grid p{margin:0;line-height:1.5}
@media(max-width:1000px){.sa-home-grid{gap:24px;padding-inline:28px}.sa-home-copy h1{font-size:39px}.sa-home-copy p{font-size:17px}.sa-home-wordmark{width:330px}.sa-home-main .feature-links{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.sa-home-grid{grid-template-columns:minmax(0,1fr);padding:34px 6% 24px;gap:30px}.sa-home-copy{max-width:650px;width:100%;margin-inline:auto}.sa-home-wordmark{width:min(78%,330px);margin-bottom:20px}.sa-home-copy h1{font-size:clamp(35px,6.5vw,48px);max-width:620px}.sa-home-copy p{margin:20px 0 24px;font-size:18px}.sa-home-visual{width:100%;max-width:650px;justify-self:center}.sa-home-tagline{font-size:clamp(20px,3.5vw,26px);margin-bottom:14px}.sa-dms-grid{grid-template-columns:1fr}.sa-dms-section{scroll-margin-top:95px}}
@media(max-width:480px){.sa-home-grid{padding-inline:20px}.sa-home-copy h1{font-size:35px;letter-spacing:-.03em}.sa-home-copy p{font-size:17px;line-height:1.55}.sa-home-cta{width:100%;gap:11px;padding:16px 14px;font-size:21px}.sa-home-tagline{font-size:20px}.sa-home-main .feature-links{grid-template-columns:1fr}.sa-home-main .feature-links h3{font-size:25px}.sa-home-founder{padding-top:0}}
@media(prefers-reduced-motion:reduce){.sa-home-main .feature-links a{transition:none}}
