.map-introduction [hidden] {display: none !important;}
.map-introduction {overflow-wrap: anywhere;}
.map-draft {padding: 10px 20px; background: #e9f1ed; color: #0f3d32; text-align: center; font-size: 12px;}
.map-introduction .yaeh-header {display: flex; align-items: center; justify-content: space-between; gap: 24px;}
.map-header-nav {display: flex; align-items: center; gap: 28px; font-size: 13px;}
.map-header-nav a {text-decoration: none;}
.map-header-nav a:last-child {padding: 12px 20px; background: var(--yaeh-green); color: white; border-radius: 3px;}
.map-introduction a:focus-visible,.map-introduction summary:focus-visible {outline: 3px solid #ab7d18; outline-offset: 5px;}
.map-hero {display: grid; grid-template-columns: 1.15fr 1fr; padding: 0;}
.map-hero-copy {padding: clamp(56px,7vw,112px) clamp(24px,6vw,96px);}
.map-app-name {display: flex; align-items: center; gap: 18px; margin: 36px 0;}
.map-app-name img {width: 64px; height: 64px; border-radius: 15px; box-shadow: 0 5px 20px #092a2210;}
.map-app-name > span {font-size: 24px; font-weight: 600; letter-spacing: .06em;}
.map-app-name small {display: block; font-size: 11px; font-weight: 400; color: var(--yaeh-muted); letter-spacing: .03em;}
.map-hero h2 {margin: 0 0 28px; font-size: clamp(36px,4.4vw,70px); font-weight: 600; line-height: 1.4; letter-spacing: -.04em;}
.map-lead {font-size: 15px; line-height: 2.1; color: var(--yaeh-muted);}
.map-actions {display: flex; flex-wrap: wrap; align-items: center; gap: 24px; margin-top: 36px; font-size: 13px;}
.map-button {display: inline-flex; align-items: center; gap: 32px; padding: 16px 24px; background: var(--yaeh-green); color: white; text-decoration: none; border-radius: 3px;}
.map-secondary {color: var(--yaeh-green); text-underline-offset: 5px;}
.map-platform {margin-top: 24px; color: var(--yaeh-muted); font-size: 11px;}
.map-hero-art {position: relative; display: grid; align-items: center; min-height: 640px; background: var(--yaeh-green); color: #e6c367; overflow: hidden;}
.map-route {position: absolute; inset: 0; width: 100%; height: 100%;}
.map-yappy {position: relative; width: 86%; height: auto; margin: 60px auto 30px; filter: drop-shadow(0 24px 26px #0003);}
.map-art-label,.map-art-bottom {position: absolute; z-index: 1; left: 32px; font-size: 11px; letter-spacing: .16em;}
.map-art-label {top: 32px;}.map-art-bottom {bottom: 28px; color: #d4e4de;}
.map-intro {padding: clamp(64px,8vw,130px) 24px; text-align: center;}
.map-intro h2,.map-medals h2,.map-steps h2,.map-faq h2 {font-size: clamp(28px,3.1vw,48px); line-height: 1.55; font-weight: 500; letter-spacing: -.03em; margin: 0 0 28px;}
.map-intro p:last-child {color: var(--yaeh-muted); font-size: 15px; max-width: 780px; margin: 0 auto;}
.map-features {padding: clamp(60px,7vw,110px) clamp(24px,6vw,96px); background: var(--yaeh-soft);}
.map-section-heading h2 {font-size: clamp(26px,3vw,42px); font-weight: 500; margin: 0 0 50px;}
.map-feature-grid {display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 32px;}
.map-feature-grid article {display: flex; flex-direction: column; padding: 32px; background: #fff; border-top: 2px solid var(--yaeh-green);}
.map-number {font-size: 11px; color: var(--yaeh-green); letter-spacing: .13em;}
.map-feature-grid h3 {font-size: clamp(24px,2.3vw,34px); line-height: 1.55; font-weight: 500; margin: 32px 0 20px;}
.map-feature-grid p {font-size: 14px; color: var(--yaeh-muted); margin: 0 0 32px;}
.map-feature-tag {margin-top: auto; padding-top: 20px; border-top: 1px solid var(--yaeh-line); font-size: 11px; color: var(--yaeh-green);}
.map-medals {display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: center; padding: clamp(70px,9vw,144px) clamp(24px,6vw,96px);}
.map-medals p:last-child {font-size: 14px; color: var(--yaeh-muted);}
.map-medal-art {display: flex; align-items: center; justify-content: center; gap: 8px;}
.map-medal-art img {width: 31%; height: auto;}.map-medal-art img:nth-child(2) {transform: translateY(-20px);}
.map-steps {padding: 72px clamp(24px,6vw,96px); background: #f8f9f8;}
.map-steps ol {display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 40px; padding: 0; margin: 44px 0 0; list-style: none;}
.map-steps li > span {color: var(--yaeh-green); font-size: 28px; font-weight: 500;}
.map-steps h3 {font-size: 18px; font-weight: 500;}.map-steps li p {font-size: 14px; color: var(--yaeh-muted);}
.map-faq {max-width: 960px; margin: 0 auto; padding: clamp(64px,8vw,128px) 24px;}
.map-faq details {border-bottom: 1px solid var(--yaeh-line); padding: 22px 0;}
.map-faq summary {font-size: 15px; font-weight: 500; cursor: pointer;}
.map-faq details p {margin: 20px 0 0; font-size: 14px; color: var(--yaeh-muted);}.map-faq a {color: var(--yaeh-green);}
.map-download {padding: clamp(64px,8vw,128px) 24px; background: var(--yaeh-green); color: #fff; text-align: center;}
.map-download .section-label {color: #b8cec6;}.map-download > img {display: block; border-radius: 20px; margin: 24px auto 28px;}
.map-download h2 {font-size: clamp(36px,5vw,68px); font-weight: 500; line-height: 1.4; margin: 0 0 24px;}
.map-download p {font-size: 15px; color: #c7dbd3;}
.map-store-link,.map-store-pending {display: inline-block; border: 1px solid #ffffff60; padding: 16px 32px; margin: 24px 0 0; border-radius: 4px;}
.map-store-link {background: #fff; color: var(--yaeh-green); text-decoration: none;}.map-download .map-download-note {margin-top: 24px; font-size: 11px;}
.map-safety {padding: 40px 24px; text-align: center; background: var(--yaeh-soft);}.map-safety h2 {font-size: 18px; font-weight: 500;}.map-safety p {font-size: 12px; color: var(--yaeh-muted);}
@media(max-width:1000px){.map-hero {grid-template-columns: 1fr 1fr;}.map-hero-copy {padding: 56px 28px;}.map-hero-art {min-height: 580px;}.map-feature-grid {gap: 14px;}.map-feature-grid article {padding: 24px;}}
@media(max-width:760px){.map-header-nav {gap: 14px; font-size: 12px;}.map-header-nav a:first-child {display: none;}.map-header-nav a:last-child {padding: 9px 12px;}.map-hero {grid-template-columns: 1fr;}.map-hero-copy {padding: 48px 24px;}.map-hero h2 {font-size: clamp(34px,7vw,48px);}.map-hero-art {min-height: 390px;}.map-yappy {width: min(72%,380px);}.map-feature-grid,.map-medals,.map-steps ol {grid-template-columns: 1fr;}.map-feature-grid {gap: 20px;}.map-feature-grid article {padding: 28px;}.map-feature-grid h3 br {display: none;}.map-medals {gap: 32px;}.map-steps ol {gap: 24px;}.map-steps li {padding-bottom: 24px; border-bottom: 1px solid var(--yaeh-line);}.map-art-label {top: 24px;}.map-art-bottom {bottom: 20px;}.map-app-name {margin: 28px 0;}.map-app-name > span {font-size: 22px;}.map-draft {font-size: 10px;}.map-download-note {max-width: 300px; margin-left: auto; margin-right: auto;}}
