/* Application showcase: scoped to this native homepage module. */
.yr-applications {
  --yr-app-ink: #f7f7f5;
  --yr-app-muted: #b4b7b9;
  --yr-app-copper: #dd9b75;
  --yr-app-red: #ef625b;
  position: relative;
  isolation: isolate;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: clamp(64px, 7vw, 108px) 0 clamp(40px, 4.8vw, 72px);
  background: radial-gradient(ellipse at 100% 0, rgba(151,91,52,.17), transparent 48%), linear-gradient(130deg, #1b1e20, #141718);
  color: var(--yr-app-ink);
  scroll-margin-top: 100px;
}
.yr-applications *, .yr-applications *::before, .yr-applications *::after { box-sizing: border-box; }
.yr-applications .yr-applications__inner { position:relative; z-index:1; width:var(--yr-layout-wide-width, min(1500px, calc(100% - 10vw))); margin:0 auto; }
.yr-applications .yr-applications__traces { position:absolute; z-index:0; inset:0; width:100%; height:100%; color:#b9845d; opacity:.36; pointer-events:none; }
.yr-applications::before { content:""; position:absolute; z-index:0; top:0; right:0; width:30%; height:300px; opacity:.12; background:linear-gradient(90deg,transparent 39px,#b9845d 40px,transparent 41px),linear-gradient(0deg,transparent 39px,#b9845d 40px,transparent 41px); background-size:40px 40px; mask-image:linear-gradient(to left,#000,transparent); pointer-events:none; }
.yr-applications .yr-applications__header { display: grid; grid-template-columns: 1.65fr 1fr; gap: clamp(24px, 5vw, 80px); align-items: end; padding: 0; margin: 0 0 clamp(30px, 3.6vw, 52px); }
.yr-applications .yr-applications__intro, .yr-applications .yr-applications__aside { min-width: 0; }
.yr-applications .yr-applications__eyebrow { margin: 0 0 20px; font-size: 12px; line-height: 1.4; letter-spacing: .32em; font-weight: 600; color: var(--yr-app-copper); }
.yr-applications .yr-applications__title { margin: 0; padding: 0; max-width: 850px; color: var(--yr-app-ink); font: inherit; font-size: clamp(36px, 4.2vw, 64px); font-weight: 600; letter-spacing: -.045em; line-height: 1.12; white-space: pre-line; text-wrap: balance; overflow-wrap: break-word; }
.yr-applications .yr-applications__description { margin: 0 0 24px; color: var(--yr-app-muted); font-size: 15px; line-height: 1.75; max-width: 390px; }
.yr-applications .yr-applications__contact { display: inline-flex; align-items: center; gap: 14px; color: var(--yr-app-red); font-size: 14px; line-height: 1.5; font-weight: 500; text-decoration: none; padding-bottom: 5px; border-bottom: 1px solid currentColor; transition: color .2s ease; }
.yr-applications .yr-applications__contact:hover { color: #ff958c; }
.yr-applications .yr-applications__contact svg { width: 17px; height: 17px; flex-shrink: 0; }
.yr-applications .yr-applications__grid { display: grid; grid-template-columns: 1.65fr 1fr; grid-template-rows: repeat(2, minmax(0, 1fr)); gap: 16px; height: clamp(480px, 44vw, 620px); }
.yr-applications .yr-applications__scene { position: relative; display: block; min-width: 0; overflow: hidden; border-radius: 4px; background: #292d2f; color: #fff; text-decoration: none; isolation: isolate; }
.yr-applications .yr-applications__scene--1 { grid-row: span 2; }
.yr-applications .yr-applications__scene::after { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgb(0 0 0 / .08) 25%, rgb(0 0 0 / .12) 42%, rgb(0 0 0 / .84) 100%); pointer-events: none; }
.yr-applications .yr-applications__image { position: absolute; inset: 0; z-index: -2; display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: center; transition: transform .65s cubic-bezier(.2,.6,.3,1); }
.yr-applications .yr-applications__scene--left .yr-applications__image { object-position: left center; }
.yr-applications .yr-applications__scene--right .yr-applications__image { object-position: right center; }
.yr-applications a.yr-applications__scene:hover .yr-applications__image { transform: scale(1.035); }
.yr-applications .yr-applications__scene-arrow { position: absolute; top: 20px; right: 20px; display: grid; place-items: center; width: 40px; height: 40px; border: 1px solid rgb(255 255 255 / .62); border-radius: 50%; background: rgb(15 18 20 / .18); color: #fff; transition: background .2s ease, border-color .2s ease; }
.yr-applications .yr-applications__scene-arrow svg { width: 20px; height: 20px; }
.yr-applications a.yr-applications__scene:hover .yr-applications__scene-arrow { background: #c52b25; border-color: #c52b25; }
.yr-applications .yr-applications__caption { position: absolute; bottom: 0; left: 0; right: 0; padding: clamp(24px, 2.5vw, 36px); }
.yr-applications .yr-applications__number { display: block; margin: 0 0 8px; font-size: 12px; font-weight: 500; letter-spacing: .08em; line-height: 1.3; color: #efbc9b; }
.yr-applications .yr-applications__scene-title { margin: 0; padding: 0; color: #fff; font: inherit; font-size: clamp(19px, 1.7vw, 25px); line-height: 1.22; font-weight: 600; letter-spacing: -.025em; overflow-wrap: break-word; }
.yr-applications .yr-applications__scene--1 .yr-applications__scene-title { font-size: clamp(25px, 2.6vw, 38px); }
.yr-applications .yr-applications__scene-text { margin: 9px 0 0; font-size: 12px; line-height: 1.6; color: #d3d5d6; }
.yr-applications .yr-applications__scene--1 .yr-applications__scene-text { font-size: 14px; }
.yr-applications .yr-applications__footer { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-top: 30px; padding-top: 22px; border-top: 1px solid #505456; background: none; }
.yr-applications .yr-applications__footer p { margin: 0; color: #a9adaf; font-size: 12px; line-height: 1.6; }
.yr-applications .yr-applications__footer a { display: inline-flex; align-items: center; gap: 12px; flex-shrink: 0; font-size: 12px; line-height: 1.6; color: #eceeed; text-decoration: none; border-bottom: 1px solid #8f9497; padding-bottom: 3px; }
.yr-applications .yr-applications__footer a:hover { color: #efbc9b; }
.yr-applications .yr-applications__footer svg { width: 15px; height: 15px; }
.yr-applications a:focus-visible { outline: 3px solid #efbc9b; outline-offset: 5px; }
.yr-applications a.yr-applications__scene:focus-visible { outline-offset: -4px; }
@media (max-width: 960px) {
  .yr-applications .yr-applications__header { grid-template-columns: 1fr; gap: 24px; }
  .yr-applications .yr-applications__title { font-size: clamp(36px, 5.3vw, 54px); }
  .yr-applications .yr-applications__aside { display: flex; align-items: end; gap: 28px; justify-content: space-between; }
  .yr-applications .yr-applications__description { margin: 0; max-width: 440px; }
  .yr-applications .yr-applications__contact { flex-shrink: 0; }
  .yr-applications .yr-applications__grid { grid-template-columns: repeat(2,minmax(0,1fr)); grid-template-rows: 380px 250px; height: auto; }
  .yr-applications .yr-applications__scene--1 { grid-column: span 2; grid-row: auto; }
  .yr-applications .yr-applications__caption { padding: 24px; }
  .yr-applications .yr-applications__scene-arrow { top: 16px; right: 16px; width: 36px; height: 36px; }
}
@media (max-width: 640px) {
  .yr-applications { padding: 58px 0 38px; }
  .yr-applications .yr-applications__traces { opacity:.18; }
  .yr-applications .yr-applications__eyebrow { font-size: 11px; margin-bottom: 16px; }
  .yr-applications .yr-applications__title { font-size: clamp(32px, 8.6vw, 44px); line-height: 1.16; letter-spacing: -.04em; }
  .yr-applications .yr-applications__aside { display: block; }
  .yr-applications .yr-applications__description { font-size: 14px; margin: 0 0 20px; }
  .yr-applications .yr-applications__grid { grid-template-columns: 1fr; grid-template-rows: 360px 255px 255px; gap: 14px; }
  .yr-applications .yr-applications__scene--1 { grid-column: auto; }
  .yr-applications .yr-applications__caption { padding: 24px; }
  .yr-applications .yr-applications__scene-title { font-size: 23px; }
  .yr-applications .yr-applications__scene--1 .yr-applications__scene-title { font-size: 28px; }
  .yr-applications .yr-applications__scene--1 .yr-applications__scene-text { font-size: 12px; }
  .yr-applications .yr-applications__footer { align-items: flex-start; flex-direction: column; gap: 15px; margin-top: 24px; padding-top: 20px; }
}
@media (prefers-reduced-motion: reduce) {
  .yr-applications .yr-applications__image, .yr-applications .yr-applications__scene-arrow, .yr-applications .yr-applications__contact { transition: none; }
  .yr-applications a.yr-applications__scene:hover .yr-applications__image { transform: none; }
}
