/* Native application archive, category and detail templates. */
.yr-application-page { margin:0; color:#272b2e; background:#fff; }
.yr-application-page *, .yr-application-page *::before, .yr-application-page *::after { box-sizing:border-box; }
.yr-application-rail { width:var(--yr-layout-wide-width,min(1500px,calc(100% - 10vw))); margin-inline:auto; }
.yr-application-page__hero { position:relative; overflow:hidden; isolation:isolate; padding:32px 0 70px; color:#f8f8f5; background:radial-gradient(ellipse at 100% 0,rgba(147,86,53,.2),transparent 55%),linear-gradient(125deg,#1b1e20,#121516); }
.yr-application-page__hero::before { content:''; position:absolute; z-index:-1; right:-4%; top:10px; width:48%; height:85%; border-top:1px solid rgba(220,158,113,.2); border-right:1px solid rgba(220,158,113,.24); border-radius:0 85px 0 0; transform:skewY(-3deg); box-shadow:14px -14px 0 -13px rgba(220,158,113,.22),29px -29px 0 -28px rgba(220,158,113,.16); pointer-events:none; }
.yr-application-breadcrumbs { display:flex; align-items:center; flex-wrap:wrap; gap:10px; margin:0 0 48px; font-size:12px; color:#b8bdbe; }
.yr-application-breadcrumbs a { text-decoration:none; color:inherit; }
.yr-application-breadcrumbs a:hover { color:#e5b18f; }
.yr-application-eyebrow { margin:0 0 17px; color:#dba17d; font-size:11px; font-weight:600; letter-spacing:.22em; line-height:1.5; }
.yr-application-page__hero h1 { max-width:1000px; margin:0 0 24px; font-size:clamp(36px,4vw,60px); font-weight:600; color:#f8f8f5; letter-spacing:-.04em; line-height:1.12; text-wrap:balance; }
.yr-application-page__lead { max-width:780px; margin:0; font-size:16px; line-height:1.9; color:#bfc4c7; }
.yr-application-listing { padding-block:48px 80px; }
.yr-application-filters { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:34px; }
.yr-application-filters a { padding:10px 18px; border:1px solid #dce0e2; border-radius:30px; color:#4e555a; font-size:13px; line-height:1.4; text-decoration:none; }
.yr-application-filters a:hover, .yr-application-filters a[aria-current] { color:#fff; background:#24292c; border-color:#24292c; }
.yr-application-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px; }
.yr-application-card { min-width:0; overflow:hidden; border:1px solid #e0e3e5; border-radius:6px; background:#fff; }
.yr-application-card__image { display:block; aspect-ratio:4/3; overflow:hidden; background:#eceeef; }
.yr-application-card__image img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.yr-application-card:hover .yr-application-card__image img { transform:scale(1.025); }
.yr-application-card__body { padding:26px; }
.yr-application-card__body .yr-application-card__category { color:#9b5e3d; font-size:10px; font-weight:600; letter-spacing:.12em; text-transform:uppercase; margin:0 0 13px; }
.yr-application-card h2 { font-size:clamp(21px,1.7vw,26px); line-height:1.25; letter-spacing:-.025em; margin:0 0 16px; color:#22282b; font-weight:600; }
.yr-application-card h2 a { color:inherit; text-decoration:none; }
.yr-application-card__body>p { font-size:14px; line-height:1.8; color:#687176; margin:0 0 24px; }
.yr-application-card__excerpt { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3; overflow:hidden; }
.yr-application-page .yr-application-textlink { display:inline-flex; align-items:center; gap:12px; color:#b42b25; font-size:13px; font-weight:600; text-decoration:none; }
.yr-application-inquiry { display:flex; align-items:center; justify-content:space-between; gap:30px; margin-top:56px; padding:36px 40px; background:#f1f2f3; border-left:3px solid #c52b25; }
.yr-application-inquiry h2 { margin:0 0 10px; font-size:26px; line-height:1.25; color:#242a2d; }
.yr-application-inquiry p { margin:0; font-size:14px; line-height:1.7; color:#687176; }
.yr-application-inquiry>a { flex-shrink:0; display:inline-flex; gap:18px; padding:14px 22px; background:#c52b25; color:#fff; border-radius:30px; font-size:13px; font-weight:600; text-decoration:none; }
.yr-application-detail__hero-grid { display:grid; grid-template-columns:1fr 1.1fr; gap:clamp(36px,5vw,72px); align-items:center; }
.yr-application-detail__visual { margin:0; min-width:0; }
.yr-application-detail__visual img { display:block; width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; border-radius:5px; }
.yr-application-detail__visual figcaption { margin-top:10px; font-size:10px; color:#a5acae; line-height:1.7; }
.yr-application-page .yr-application-button { display:inline-flex; align-items:center; justify-content:center; gap:16px; margin-top:28px; padding:14px 24px; background:#c52b25; color:#fff; text-decoration:none; border-radius:30px; font-size:13px; font-weight:600; line-height:1.5; }
.yr-application-button:hover, .yr-application-inquiry>a:hover { background:#a6221e; }
.yr-application-detail__categories { display:flex; flex-wrap:wrap; gap:10px; margin-top:24px; }
.yr-application-detail__categories a { color:#d8ad8f; font-size:11px; text-decoration:none; padding:5px 10px; border:1px solid #5b4b41; border-radius:20px; }
.yr-application-detail__layout { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:48px; align-items:start; padding-block:48px 80px; }
.yr-application-detail__content { min-width:0; font-size:16px; line-height:1.9; color:#4f5a60; }
.yr-application-detail__content>:first-child { margin-top:0; }
.yr-application-detail__content h2 { margin:45px 0 18px; font-size:clamp(26px,2.3vw,34px); line-height:1.25; font-weight:600; color:#20272b; letter-spacing:-.025em; }
.yr-application-detail__content h3 { margin:28px 0 12px; font-size:22px; line-height:1.35; color:#20272b; font-weight:600; }
.yr-application-detail__content p { margin:0 0 22px; }
.yr-application-detail__content ul, .yr-application-detail__content ol { padding-left:24px; margin:0 0 24px; }
.yr-application-detail__content li { margin-bottom:8px; }
.yr-application-detail__content a { color:#b42b25; text-underline-offset:3px; }
.yr-application-detail__content .wp-block-image { margin:28px 0 34px; }
.yr-application-detail__content .wp-block-image img { display:block; width:100%; height:auto; border-radius:5px; }
.yr-application-detail__content .wp-block-image figcaption { margin:12px 0 0; color:#737d82; font-size:12px; line-height:1.7; }
.yr-application-detail__content .yr-application-image-pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; margin-block:28px 36px; }
.yr-application-detail__content .yr-application-image-pair .wp-block-image { margin:0; }
.yr-application-detail__content .yr-application-image-pair img { aspect-ratio:4/3; object-fit:contain; background:#f3f4f4; }
.yr-application-detail__content .yr-application-image-pair>.wp-block-column { min-width:0; }
.yr-application-detail__content .yr-application-story-row { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:32px; align-items:center; margin:0; padding:46px 0; border-bottom:1px solid #e5e8e9; }
.yr-application-detail__content .yr-application-story-row:first-child { padding-top:0; }
.yr-application-detail__content .yr-application-story-row>.wp-block-column { min-width:0; }
.yr-application-detail__content .yr-application-story-row h2,
.yr-application-detail__content .yr-application-story-stack h2 { margin:0 0 22px; font-size:clamp(26px,2.2vw,34px); }
.yr-application-detail__content .yr-application-story__index { margin:0 0 17px; font-size:10px; letter-spacing:.18em; color:#a56a49; font-weight:600; }
.yr-application-detail__content .yr-application-story-row .wp-block-image { margin:0; }
.yr-application-detail__content .yr-application-story-row img { aspect-ratio:4/3; object-fit:contain; background:#f3f4f4; }
.yr-application-detail__content .yr-application-story-row figcaption,
.yr-application-detail__content .yr-application-story-stack figcaption { text-align:left; }
.yr-application-detail__content .yr-application-story-stack { margin:0; padding:62px 0 0; }
.yr-application-story-stack__text { max-width:960px; }
.yr-application-detail__content .yr-application-story-stack .wp-block-image { margin:34px 0 0; }
.yr-application-detail__content .yr-application-story-stack img { aspect-ratio:4/3; object-fit:cover; object-position:center 58%; }
.yr-application-detail__sidebar { min-width:0; }
.yr-application-detail__sidebar .yr-application-related { margin:30px 0; }
.yr-application-detail + .yr-product-related .yr-product-related-inner,
.yr-application-detail ~ .yr-related-posts .yr-related-posts-inner { width:var(--yr-layout-wide-width,min(1500px,calc(100% - 10vw))); max-width:none; }
.yr-application-detail__content .wp-block-table { margin:24px 0; overflow-x:auto; }
.yr-application-detail__content table { width:100%; font-size:14px; border-collapse:collapse; }
.yr-application-detail__content th, .yr-application-detail__content td { padding:14px 16px; border:1px solid #e0e3e5; text-align:left; }
.yr-application-detail__content th { background:#f1f3f4; color:#242a2d; }
.yr-application-support { padding:28px; background:#f1f3f4; border-radius:5px; border-top:3px solid #c52b25; }
.yr-application-support h2 { margin:0 0 15px; color:#242b2f; font-size:25px; line-height:1.3; font-weight:600; }
.yr-application-support p:not(.yr-application-eyebrow) { color:#647077; font-size:13px; line-height:1.8; margin:0; }
.yr-application-support .yr-application-button { padding:12px 16px; font-size:11px; width:100%; }
.yr-application-related { margin:30px 0; }
.yr-application-related h2 { font-size:19px; margin:0 0 15px; color:#242b2f; }
.yr-application-related a { display:flex; justify-content:space-between; gap:15px; padding:16px 0; border-bottom:1px solid #e2e5e7; font-size:13px; line-height:1.6; text-decoration:none; color:#4f5a60; }
.yr-application-related a:hover { color:#b42b25; }
.yr-application-pagination { margin-top:30px; display:flex; gap:15px; }
.yr-application-page a:focus-visible { outline:3px solid #c88c66; outline-offset:4px; }
@media(max-width:1000px) {
  .yr-application-cards { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
  .yr-application-detail__hero-grid { grid-template-columns:1fr; }
  .yr-application-detail__visual { max-width:780px; }
  .yr-application-detail__layout { grid-template-columns:minmax(0,1fr) 260px; gap:28px; }
  .yr-application-inquiry { padding:28px; }
}
@media(max-width:1100px) { .yr-application-detail__content .yr-application-story-row { grid-template-columns:1fr; gap:24px; } }
@media(max-width:700px) {
  .yr-application-page__hero { padding:24px 0 44px; }
  .yr-application-breadcrumbs { margin-bottom:30px; font-size:10px; }
  .yr-application-page__hero h1 { font-size:36px; }
  .yr-application-page__lead { font-size:14px; }
  .yr-application-cards { grid-template-columns:1fr; }
  .yr-application-filters { gap:8px; }
  .yr-application-filters a { font-size:11px; padding:9px 12px; }
  .yr-application-listing { padding-block:30px 50px; }
  .yr-application-detail__layout { grid-template-columns:1fr; gap:0; padding-block:36px 50px; }
  .yr-application-detail__content { font-size:15px; }
  .yr-application-detail__content .yr-application-image-pair { grid-template-columns:1fr; }
  .yr-application-detail__content .yr-application-story-row { grid-template-columns:1fr; padding-block:36px; gap:22px; }
  .yr-application-detail__content .yr-application-story-stack { padding-top:36px; }
  .yr-application-detail__content .yr-application-story-stack img { aspect-ratio:4/3; }
  .yr-application-detail__sidebar { margin-top:36px; padding-top:28px; border-top:1px solid #e2e5e7; }
  .yr-application-inquiry { flex-direction:column; align-items:flex-start; gap:20px; }
  .yr-application-inquiry h2 { font-size:24px; }
}
@media(prefers-reduced-motion:reduce) { .yr-application-card__image img { transition:none; } .yr-application-card:hover .yr-application-card__image img { transform:none; } }

/* Four concise application modules, built with the existing Yiran blocks. */
.yr-application-detail__content .yr-application-module { container:application-module / inline-size; margin:0; padding:42px 0; border-bottom:1px solid var(--yr-line,#e4e7e9); }
.yr-application-detail__content .yr-application-module:first-child { padding-top:0; }
.yr-application-detail__content .yr-application-module:last-child { border-bottom:0; padding-bottom:0; }
.yr-application-detail__content .yr-application-module__eyebrow { margin:0 0 18px; color:var(--yr-accent,#c52b25); font-size:10px; line-height:1.5; letter-spacing:.16em; text-transform:uppercase; font-weight:600; }
.yr-application-module h2,
.yr-application-module .yr-media-content__title,
.yr-application-module .yr-image-text-cards__heading { margin:0 0 18px; font-size:clamp(26px,2.1vw,32px); line-height:1.24; }
.yr-application-module .yr-media-content,
.yr-application-module .yr-image-text-cards { margin:0; padding:0; background:transparent; }
.yr-application-module .yr-media-content__inner { gap:30px; }
.yr-application-module .yr-media-content__text,
.yr-application-module .yr-image-text-cards__intro { font-size:15px; line-height:1.8; }
.yr-application-module .yr-media-content__text p { margin:0 0 14px; }
.yr-application-module .yr-media-content__text p:last-child { margin-bottom:0; }
.yr-application-module .yr-media-content__media-link { aspect-ratio:4/3; }
.yr-application-module .yr-media-content__media-link img { width:100%; height:100%; aspect-ratio:4/3; object-fit:contain; background:var(--yr-paper-2,#f4f5f6); }
.yr-application-module--handoff .yr-media-content__media-link img { object-fit:cover; }
.yr-application-module .yr-feature-cards { margin:24px 0 0; }
.yr-application-module .yr-feature-cards__grid { gap:16px; }
.yr-application-module .yr-feature-cards__item { padding:24px; }
.yr-application-module .yr-feature-cards__icon { width:32px; height:32px; }
.yr-application-module .yr-feature-cards__title { margin:16px 0 12px; font-size:20px; }
.yr-application-module .yr-feature-cards__text { font-size:14px; }
.yr-application-module .yr-feature-cards__text p,
.yr-application-module .yr-image-text-cards__text p { margin:0; }
.yr-application-module .yr-image-text-cards__header { margin:0 0 24px; }
.yr-application-module .yr-image-text-cards__intro { margin-top:0; }
.yr-application-module .yr-image-text-cards__media { aspect-ratio:4/3; background:var(--yr-paper-2,#f4f5f6); }
.yr-application-module .yr-image-text-cards__media>img { object-fit:contain; }
.yr-application-module .yr-image-text-cards__body { padding:24px; gap:12px; }
.yr-application-module .yr-image-text-cards__title { margin:0; font-size:21px; line-height:1.35; }
.yr-application-module .yr-image-text-cards__text { font-size:14px; line-height:1.75; }
.yr-application-module .yr-image-text-cards__text a { display:inline-block; margin-top:10px; font-weight:600; font-size:12px; }
.yr-application-module .yr-process-flow { margin:28px 0 0; }
.yr-application-module .yr-process-flow__item { min-height:190px; padding:26px 22px 22px; }
.yr-application-module .yr-process-flow__title { font-size:18px; line-height:1.3; }
.yr-application-module .yr-process-flow__text { font-size:13px; margin:12px 0 16px; }
.yr-application-module .yr-process-flow__text p { margin:0; }
.yr-application-module .yr-process-flow__icon { width:42px; height:42px; }
.yr-application-module .yr-process-flow__icon svg { width:22px; height:22px; }
body.single-application .yr-related-product-card-picture,
body.single-application .yr-related-post-card-picture { aspect-ratio:4/3; }
@container application-module (max-width:680px) {
  .yr-application-module .yr-media-content__inner { grid-template-columns:1fr; gap:24px; }
  .yr-application-module .yr-media-content__body { order:1; }
  .yr-application-module .yr-media-content__media { order:2; }
}
@media(max-width:700px) {
  .yr-application-detail__content .yr-application-module { padding-block:32px; }
  .yr-application-module .yr-feature-cards__item,
  .yr-application-module .yr-image-text-cards__body { padding:22px; }
  .yr-application-module .yr-process-flow__item { min-height:170px; }
}
