.oys-home-intro { color: #102c52; }
.oys-home-intro *, .oys-home-intro *::before, .oys-home-intro *::after { box-sizing: border-box; }
.oys-intro-how { padding: 42px 0 28px; background: linear-gradient(180deg, #f4f8fd, #fff); }
.oys-home-intro .oys-intro-heading { text-align: center; margin-bottom: 28px; }
.oys-home-intro .oys-intro-heading h2 { margin: 0 0 8px; color: #0a2b60; font-size: clamp(24px, 2.3vw, 32px); font-weight: 800; letter-spacing: -.7px; }
.oys-home-intro .oys-intro-heading > p { margin: 0 auto; max-width: 740px; color: #697b93; font-size: 14px; line-height: 1.6; }
.oys-home-intro .oys-intro-flow { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px; padding: 0; margin: 0; list-style: none; }
.oys-home-intro .oys-intro-step { position: relative; min-width: 0; }
.oys-home-intro .oys-intro-step:not(:last-child)::after { content: "→"; position: absolute; right: -23px; top: 160px; color: #0875fa; font-size: 26px; font-weight: 600; }
.oys-home-intro .oys-intro-step-heading { display: flex; align-items: flex-start; gap: 10px; min-height: 83px; }
.oys-home-intro .oys-intro-number { display: inline-grid; place-items: center; flex-shrink: 0; width: 29px; height: 29px; border-radius: 50%; background: #0875fa; color: #fff; font-size: 14px; font-weight: 700; }
.oys-home-intro .oys-intro-step-heading h3 { margin: 1px 0 5px; font-size: 14px; font-weight: 750; line-height: 1.35; color: #18375d; }
.oys-home-intro .oys-intro-step-heading p { margin: 0; color: #728197; font-size: 12px; line-height: 1.5; }
.oys-home-intro .oys-intro-mini { min-height: 174px; padding: 12px; border: 1px solid #e2eaf4; border-radius: 12px; background: #fff; box-shadow: 0 6px 18px #163b6710; }
.oys-home-intro .oys-intro-mini-label { display: block; color: #15335a; font-size: 11px; font-weight: 700; margin-bottom: 8px; }
.oys-home-intro .oys-intro-choice { display: flex; align-items: center; gap: 10px; min-height: 34px; padding: 6px 9px; border: 1px solid #edf1f8; border-radius: 6px; color: #15335a; font-size: 12px; font-weight: 650; margin-bottom: 5px; }
.oys-home-intro .oys-intro-choice:last-child { margin-bottom: 0; }
.oys-home-intro .oys-intro-choice > i { color: #1b559c; font-size: 16px; width: 20px; text-align: center; }
.oys-home-intro .oys-intro-choice > i:last-child:not(:first-child) { font-size: 11px; margin-left: auto; }
.oys-home-intro .oys-intro-choice.is-selected { background: #eef6ff; border-color: #9dc7fc; }
.oys-home-intro .oys-intro-map { position: relative; overflow: hidden; padding: 0; height: 174px; background: #edf3f9; }
.oys-home-intro .oys-intro-map > img { width: 100%; height: 100%; object-fit: cover; opacity: .72; }
.oys-home-intro .oys-intro-map-pin { position: absolute; left: 44%; top: 27%; width: 44px; height: 44px; border-radius: 50%; background: #d9eaffcc; display: grid; place-items: center; color: #0875fa; font-size: 29px; box-shadow: 0 0 0 9px #b4d5ff66; }
.oys-home-intro .oys-intro-map-caption { position: absolute; left: 9px; right: 9px; bottom: 8px; display: flex; align-items: center; gap: 8px; min-height: 39px; padding: 7px 10px; border: 1px solid #e4ecf4; border-radius: 8px; background: #fffffff2; color: #0875fa; }
.oys-home-intro .oys-intro-map-caption strong { display: block; color: #29466b; font-size: 10px; line-height: 1.4; }
.oys-home-intro .oys-intro-map-caption span { display: block; color: #7d8fa6; font-size: 9px; }
.oys-home-intro .oys-intro-matches { display: grid; gap: 7px; align-content: center; }
.oys-home-intro .oys-intro-match { display: flex; align-items: center; gap: 7px; padding: 6px; background: #f8fbff; border: 1px solid #edf2f8; border-radius: 7px; }
.oys-home-intro .oys-intro-avatar { width: 28px; height: 28px; display: grid; place-items: center; background: #e4eefb; border-radius: 50%; color: #1b559c; flex-shrink: 0; font-size: 13px; }
.oys-home-intro .oys-intro-match strong { display: block; font-size: 10px; color: #203b5d; }
.oys-home-intro .oys-intro-match > div > span { display: block; font-size: 9px; color: #7a8ba0; }
.oys-home-intro .oys-intro-available { margin-left: auto; padding: 3px 6px; background: #dff5eb; color: #138466; border-radius: 4px; font-size: 9px; font-weight: 700; }
.oys-home-intro .oys-intro-route { position: absolute; left: 0; top: 0; width: 100%; height: 130px; }
.oys-home-intro .oys-intro-route-truck { position: absolute; right: 12%; top: 15%; font-size: 24px; color: #114d9b; transform: rotate(-10deg); filter: drop-shadow(0 3px 3px #0c3b6940); }
.oys-home-intro .oys-intro-progress { display: flex !important; gap: 12px; position: relative; width: 100px; margin-top: 6px; }
.oys-home-intro .oys-intro-progress::before { content: ""; position: absolute; left: 2px; right: 5px; top: 3px; height: 2px; background: #b9d9ff; }
.oys-home-intro .oys-intro-progress b { z-index: 1; display: block; width: 8px; height: 8px; border-radius: 50%; background: #0875fa; }
.oys-home-intro .oys-intro-progress b:last-child { background: #c8d7eb; }
.oys-intro-partners { padding: 8px 0 32px; background: #fff; }
.oys-home-intro .oys-intro-partner-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.oys-home-intro .oys-intro-partner { display: grid; grid-template-columns: minmax(0, 1fr) 44%; overflow: hidden; min-width: 0; border: 1px solid #dce8f6; border-radius: 17px; background: #edf5ff; }
.oys-home-intro .oys-intro-partner-copy { min-width: 0; padding: 26px 22px; }
.oys-home-intro .oys-intro-badge { display: inline-block; padding: 5px 9px; background: #0875fa; color: #fff; border-radius: 6px; font-size: 10px; line-height: 1.4; font-weight: 700; letter-spacing: .35px; }
.oys-home-intro .oys-intro-partner h2 { margin: 13px 0 12px; font-size: clamp(21px, 1.6vw, 25px); font-weight: 800; letter-spacing: -.7px; line-height: 1.18; color: #103363; overflow-wrap: break-word; }
.oys-home-intro .oys-intro-partner p { margin: 0 0 18px; font-size: 13px; line-height: 1.6; color: #526e8e; }
.oys-home-intro .oys-intro-partner ul { display: grid; gap: 9px; list-style: none; margin: 0 0 22px; padding: 0; }
.oys-home-intro .oys-intro-partner li { display: flex; gap: 7px; align-items: baseline; font-size: 12px; line-height: 1.5; color: #294a70; }
.oys-home-intro .oys-intro-partner li i { flex-shrink: 0; color: #0875fa; }
.oys-home-intro .oys-intro-join { display: inline-flex; align-items: center; justify-content: center; gap: 15px; min-height: 43px; padding: 10px 15px; border-radius: 8px; color: #fff; background: #0875fa; font-size: 12px; font-weight: 700; text-decoration: none; transition: background .18s; }
.oys-home-intro .oys-intro-join:hover { background: #065dc9; }
.oys-home-intro .oys-intro-join:focus-visible { outline: 3px solid #0b4f9b; outline-offset: 4px; }
.oys-home-intro .oys-intro-partner-visual { position: relative; min-width: 0; }
.oys-home-intro .oys-intro-partner-visual img { position: absolute; inset: 0; width: 100%; height: 100%; display: block; object-fit: cover; object-position: center 20%; }
.oys-home-intro .oys-intro-for-companies { background: #edf9f6; border-color: #d3e9e3; }
.oys-home-intro .oys-intro-for-companies .oys-intro-badge, .oys-home-intro .oys-intro-for-companies .oys-intro-join { background: #07896d; }
.oys-home-intro .oys-intro-for-companies li i { color: #07896d; }
.oys-home-intro .oys-intro-for-companies .oys-intro-join:hover { background: #056b55; }
.oys-intro-safety { padding: 10px 0 45px; background: #fff; }
.oys-home-intro .oys-intro-safety-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 15px; padding: 0; margin: 0; list-style: none; }
.oys-home-intro .oys-intro-safety-card { min-width: 0; padding: 17px 15px; position: relative; border: 1px solid #e1eaf4; border-radius: 12px; background: linear-gradient(180deg, #fff, #f9fbfe); box-shadow: 0 4px 14px #123d6b08; }
.oys-home-intro .oys-intro-safety-card .oys-intro-number { width: 24px; height: 24px; font-size: 11px; }
.oys-home-intro .oys-intro-safety-icon { position: relative; display: grid; place-items: center; width: 54px; height: 54px; margin: 12px 0 14px; background: #eaf3ff; color: #166acb; border-radius: 14px; font-size: 25px; }
.oys-home-intro .oys-intro-safety-icon .oys-intro-check { position: absolute; right: -3px; bottom: -3px; width: 21px; height: 21px; display: grid; place-items: center; border: 2px solid #fff; border-radius: 50%; color: #fff; background: #079b72; font-size: 10px; }
.oys-home-intro .oys-intro-safety-card h3 { margin: 0 0 7px; font-size: 13px; font-weight: 750; color: #183a67; line-height: 1.4; }
.oys-home-intro .oys-intro-safety-card p { margin: 0; color: #6d7f96; font-size: 12px; line-height: 1.6; }
@media (max-width: 1199px) { .oys-home-intro .oys-intro-flow { gap: 22px; } .oys-home-intro .oys-intro-step:not(:last-child)::after { right: -19px; font-size: 22px; } .oys-home-intro .oys-intro-step-heading { min-height: 103px; } .oys-home-intro .oys-intro-match { gap: 5px; padding-inline: 3px; } .oys-home-intro .oys-intro-available { padding: 3px; } }
@media (max-width: 991px) { .oys-home-intro .oys-intro-flow { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; } .oys-home-intro .oys-intro-step-heading { min-height: 71px; } .oys-home-intro .oys-intro-step:nth-child(2)::after { display: none; } .oys-home-intro .oys-intro-safety-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 575px) { .oys-intro-how { padding-top: 32px; } .oys-home-intro .oys-intro-heading { margin-bottom: 23px; } .oys-home-intro .oys-intro-heading h2 { font-size: 25px; line-height: 1.2; } .oys-home-intro .oys-intro-heading > p { font-size: 13px; } .oys-home-intro .oys-intro-flow { grid-template-columns: 1fr; gap: 34px; } .oys-home-intro .oys-intro-step-heading { min-height: 0; margin-bottom: 13px; } .oys-home-intro .oys-intro-step-heading h3 { font-size: 15px; } .oys-home-intro .oys-intro-step:not(:last-child)::after { display: block; top: auto; bottom: -29px; right: calc(50% - 9px); transform: rotate(90deg); font-size: 23px; } .oys-home-intro .oys-intro-mini { min-height: 174px; } .oys-home-intro .oys-intro-match strong { font-size: 12px; } .oys-home-intro .oys-intro-match > div > span { font-size: 10px; } .oys-home-intro .oys-intro-available { font-size: 10px; padding: 4px 8px; } .oys-home-intro .oys-intro-safety-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; } .oys-home-intro .oys-intro-safety-card { padding: 15px 12px; } .oys-home-intro .oys-intro-safety-card:last-child { grid-column: 1 / -1; } .oys-intro-safety { padding-bottom: 30px; } }
@media (prefers-reduced-motion: reduce) { .oys-home-intro .oys-intro-join { transition: none; } }
@media (min-width: 992px) and (max-width: 1199px) { .oys-home-intro .oys-intro-partner-copy { padding: 22px 16px; } .oys-home-intro .oys-intro-partner h2 { font-size: 21px; } }
@media (max-width: 991px) { .oys-home-intro .oys-intro-partner-grid { grid-template-columns: 1fr; } .oys-home-intro .oys-intro-partner { grid-template-columns: minmax(0, 1fr) 42%; } .oys-home-intro .oys-intro-partner h2 { font-size: 26px; } }
@media (max-width: 575px) { .oys-home-intro .oys-intro-partner { grid-template-columns: minmax(0, 1fr); } .oys-home-intro .oys-intro-partner-copy { padding: 24px 20px; } .oys-home-intro .oys-intro-partner h2 { font-size: 25px; } .oys-home-intro .oys-intro-partner-visual { aspect-ratio: 2 / 3; } }
