.os-story { display: grid; grid-template-columns: 55% 45%; color: #fff; background: #11110f; }
.os-story__visual { min-height: 760px; overflow: hidden; position: relative; display: grid; place-items: center; background: var(--os-story-bg); }
.os-story__visual::before { content: ""; position: absolute; inset: 0; opacity: .2; background: repeating-linear-gradient(90deg, transparent 0 62px, rgba(255,255,255,.5) 63px 64px); }
.os-story__visual > p { margin: 0; position: absolute; left: -2vw; top: 8%; color: #d8ff3e; font-size: min(30vw, 430px); font-weight: 900; line-height: .8; letter-spacing: -.1em; }
.os-story__image { width: 102%; max-height: 75%; position: relative; z-index: 2; object-fit: contain; filter: drop-shadow(0 35px 25px rgba(0,0,0,.35)); transform: rotate(-12deg) translateY(8%); }
.os-story__visual > span { position: absolute; z-index: 3; left: 25px; bottom: 22px; font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.os-story__copy { padding: clamp(72px, 8vw, 130px) var(--os-pad); display: flex; flex-direction: column; align-items: flex-start; }
.os-story__copy h2 { margin: 0; font-size: clamp(48px, 5.7vw, 88px); font-weight: 900; line-height: .84; letter-spacing: -.07em; }
.os-story__copy h2 em { color: #d8ff3e; font-family: Georgia, 'Times New Roman', serif; font-weight: 400; }
.os-story__copy h3 { margin: 56px 0 15px; font-size: 20px; }
.os-story__copy > p:not(.os-eyebrow) { max-width: 510px; margin: 0; color: #bbb9b2; font-size: 16px; line-height: 1.7; }
.os-story__stats { width: 100%; margin: 46px 0 40px; display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid #444; border-bottom: 1px solid #444; }
.os-story__stats div { padding: 24px 12px 22px 0; display: flex; flex-direction: column; gap: 8px; border-right: 1px solid #444; }
.os-story__stats div + div { padding-left: 18px; }
.os-story__stats div:last-child { border-right: 0; }
.os-story__stats strong { font-size: 25px; }
.os-story__stats span { color: #93938e; font-size: 12px; text-transform: uppercase; }
@media (max-width: 959px) { .os-story { grid-template-columns: 1fr; } .os-story__visual { min-height: 650px; } }
@media (max-width: 600px) { .os-story__visual { min-height: 460px; } .os-story__image { width: 120%; max-width: none; } .os-story__copy { padding-top: 82px; } .os-story__stats strong { font-size: 20px; } }
