:root{--bg: #ffffff;--surface: #ffffff;--surface-soft: #f5f6f8;--line: #dfe3e8;--text: #141414;--muted: #5f6773;--accent: #c92d27;--accent-strong: #9e211c;--success: #087044;--radius: 18px;--shadow: 0 12px 30px rgba(15, 23, 42, .08);font-family:Avenir Next,Hiragino Sans,Yu Gothic UI,Segoe UI,sans-serif;color:var(--text);background:var(--bg)}*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:radial-gradient(circle at top left,rgba(224,58,49,.05),transparent 28%),linear-gradient(180deg,#fff,#fcfcfd)}body.is-loading{overflow:hidden}a{color:inherit}button,input{font:inherit}.loader-screen{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:24px;background:#fff;transition:opacity .22s ease,visibility .22s ease}body:not(.is-loading) .loader-screen{opacity:0;visibility:hidden;pointer-events:none}.loader-card{width:min(320px,100%);padding:24px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:var(--shadow);text-align:center}.loader-card strong,.loader-card span,.loader-card i{display:block}.loader-card span{margin-top:8px;color:var(--muted);font-size:.94rem}.loader-card i{height:8px;margin-top:18px;overflow:hidden;border-radius:999px;background:#eceef2}.loader-card i:before{content:"";display:block;width:45%;height:100%;border-radius:inherit;background:var(--accent);animation:loading .9s ease-in-out infinite alternate}@keyframes loading{0%{transform:translate(0)}to{transform:translate(122%)}}.page-wrap{min-height:100vh;opacity:1;visibility:visible;transition:opacity .18s ease}body.is-loading .page-wrap{opacity:0;visibility:hidden}.shell,.ad-slot{width:min(100% - 24px,1120px);margin-inline:auto}.stack{display:grid;gap:18px;padding-bottom:32px}.site-header{width:min(100% - 16px,1144px);margin:8px auto 18px;padding:10px 12px;border:1px solid rgba(232,234,238,.95);border-radius:22px;background:#fffffff5;box-shadow:0 14px 32px #0f172a14;position:relative;z-index:30;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}.site-header-row{display:grid;grid-template-columns:44px auto minmax(96px,120px) minmax(180px,1fr);min-width:520px;gap:10px;align-items:center;position:relative;overflow:visible}.header-course-link{padding:10px 13px;border:1px solid var(--line);border-radius:12px;color:var(--text);font-size:.9rem;font-weight:750;text-decoration:none;white-space:nowrap}.header-course-link:hover,.header-course-link:focus-visible{border-color:var(--accent);color:var(--accent-strong)}.article-stack{padding:18px 0 48px}.article-shell{width:calc(100% - 24px);margin-inline:auto;padding:clamp(22px,5vw,48px);border:1px solid var(--line);border-radius:24px;background:var(--surface);box-shadow:var(--shadow)}.article-breadcrumbs{display:flex;gap:8px;align-items:center;margin-bottom:26px;color:var(--muted);font-size:.9rem}.article-breadcrumbs a,.article-content a,.article-card h2 a{color:var(--accent-strong);text-decoration-thickness:1.5px;text-underline-offset:3px}.article-hero{margin-bottom:34px;padding-bottom:26px;border-bottom:1px solid var(--line)}.article-hero h1,.article-archive h1{margin:8px 0 0;font-size:clamp(2rem,7vw,4.4rem);line-height:1.02;letter-spacing:-.045em}.article-content{font-size:clamp(1rem,2vw,1.13rem);line-height:1.75}.article-content h2,.article-content h3,.article-content h4{margin:2.2em 0 .65em;line-height:1.15;letter-spacing:-.025em}.article-content p{margin:0 0 1.2em}.article-archive>p:not(.eyebrow){color:var(--muted);font-size:1.08rem}.article-card{margin-top:28px;padding:24px;border:1px solid var(--line);border-radius:18px;background:var(--surface-soft)}.article-card h2{margin:0;font-size:clamp(1.35rem,4vw,2rem)}.article-card p{color:var(--muted);line-height:1.65}.brand{display:flex;align-items:center;gap:12px;text-decoration:none}.brand-compact{justify-content:center}.brand-copy{display:none}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;color:#fff;background:linear-gradient(135deg,var(--accent),var(--accent-strong));font-weight:800}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.brand strong{display:block;line-height:1.05;font-size:1rem}.brand small{display:block;margin-top:4px;color:var(--muted);font-size:.76rem;letter-spacing:.04em;text-transform:uppercase}.global-progress,.progress-panel,.lead-card,.journey-card,.mission-card,.travel-budget,.funnel-card,.map-section,.article-header,.prose,.choice-box,.simple-note,.npc-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.global-progress,.progress-panel{padding:12px 14px}.global-progress-compact{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.progress-label{display:block;margin-bottom:4px;color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.progress-meta,.progress-panel>div:first-child{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:.92rem;font-weight:800}.progress-inline{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.progress-track{height:10px;margin-top:8px;overflow:hidden;border-radius:999px;background:#e2e8f0}.global-progress-compact .progress-track{height:8px;margin-top:0}.progress-track.large{height:12px}.progress-track i{display:block;width:0%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),#ff7a6f);transition:width .3s ease}.language-switcher{min-width:0;position:relative;overflow:visible;z-index:4}.eyebrow{color:var(--accent-strong);font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.language-dropdown{display:block;position:relative;z-index:5}.language-dropdown select{width:100%;min-height:42px;padding:8px 12px;border:1px solid var(--line);border-radius:14px;color:var(--text);background:var(--surface-soft);font-size:.9rem;position:relative;z-index:5}.site-footer{width:min(100% - 24px,1120px);margin:20px auto 0;padding:24px 0 28px;color:var(--muted);font-size:.9rem;text-align:center}.hero,.journey-hero,.article-page{padding-top:6px}.article-page{width:min(100% - 24px,1120px)}.hero,.journey-hero,.article-layout,.article-list{display:grid;gap:16px}.hero-copy,.journey-intro,.lead-card,.simple-note,.mission-card,.travel-budget,.funnel-card,.map-section,.article-header,.prose,.choice-box{padding:18px;overflow:visible}.brief-grid{display:grid;gap:12px;margin:18px 0}.brief-card{padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--surface-soft)}.brief-card h2{margin:0 0 6px;font-size:1rem;line-height:1.3}.brief-card p{margin:0;color:var(--muted);line-height:1.6}.hero h1,.journey-intro h1,.article-header h1{margin:8px 0 10px;font-size:clamp(2.1rem,9vw,3.45rem);line-height:1.04;letter-spacing:-.04em}.section-head h2,.map-section h2,.prose h2,.lead-card h2{margin:6px 0 8px;font-size:clamp(1.45rem,6vw,2rem);line-height:1.18}.hero-text,.hero-support,.journey-intro p,.lead-card p,.progress-panel p,.section-head p,.simple-note p,.journey-card p,.mission-card p,.funnel-card p,.map-section p,.article-header p,.prose p,.prose li{color:var(--muted);line-height:1.7}.hero-support{margin-top:12px}.hero-actions,.choice-row,.next-step{display:grid;gap:10px}.inline-step-actions,.single-step-action{display:grid;margin-top:18px}.inline-step-actions{gap:10px}.button,.choice-button{display:flex;width:100%;min-height:50px;align-items:center;justify-content:center;padding:13px 16px;border:1px solid var(--line);border-radius:14px;color:var(--text);background:#fff;text-align:center;text-decoration:none;cursor:pointer}.button.primary{border-color:transparent;color:#fff;background:linear-gradient(135deg,var(--accent),#ff6c60);font-weight:800}.button[disabled],.button[aria-disabled=true]{cursor:not-allowed;opacity:1}.button.primary[disabled],.button.primary[aria-disabled=true]{border-color:#d6dce7;color:#5f6b7f;background:#eef2f8;box-shadow:none}.button.success{border-color:transparent;color:#fff;background:linear-gradient(135deg,#33b56f,#61d996);font-weight:800;box-shadow:0 12px 24px #33b56f2e}.button.success[aria-pressed=true]{background:linear-gradient(135deg,#168a57,#2db77a);box-shadow:0 12px 24px #168a572e}.button.ghost,.card-button{background:var(--surface-soft);font-weight:700}.map-locked-text{display:block;margin-top:8px;color:var(--muted)}.journey-card .card-button{border-color:transparent;color:#fff;background:linear-gradient(135deg,var(--accent),color-mix(in srgb,var(--accent) 68%,white));box-shadow:0 12px 24px color-mix(in srgb,var(--accent) 24%,transparent);font-weight:800}.journey-card .card-button:hover,.journey-card .card-button:focus-visible{transform:translateY(-1px);box-shadow:0 16px 30px color-mix(in srgb,var(--accent) 30%,transparent)}.lead-card label{display:grid;gap:7px;margin:12px 0;font-size:.94rem;font-weight:800}.lead-card input{width:100%;border:1px solid var(--line);border-radius:14px;padding:14px 12px;background:#fff}.save-status{display:block;margin-top:10px;color:var(--success)}.journey-grid{display:grid;gap:14px}.journey-card{display:grid;grid-template-columns:72px 1fr;gap:14px;align-items:center;padding:16px}.error-hero,.error-note{position:relative;overflow:hidden}.error-hero{display:grid;gap:18px;padding:22px 18px;background:radial-gradient(circle at top right,rgba(224,58,49,.16),transparent 32%),radial-gradient(circle at left bottom,rgba(255,196,90,.18),transparent 28%),linear-gradient(180deg,#fffdfc,#fff)}.error-hero:after{content:"";position:absolute;inset:auto -50px -70px auto;width:180px;height:180px;border-radius:50%;background:linear-gradient(135deg,#e03a3129,#ff6c600d);filter:blur(2px)}.error-hero-copy,.error-actions{position:relative;z-index:1}.error-code{display:flex;align-items:center;gap:10px;margin:10px 0 14px;color:var(--accent-strong);font-size:clamp(2.8rem,18vw,5.8rem);font-weight:900;letter-spacing:-.08em;line-height:.9}.error-code i{width:clamp(54px,16vw,88px);height:clamp(54px,16vw,88px);border:10px solid rgba(224,58,49,.18);border-top-color:var(--accent);border-right-color:#ffb15b;border-radius:50%;box-shadow:inset 0 0 0 8px #ffffffd9}.error-actions{display:grid;gap:10px}.error-grid .journey-card{background:linear-gradient(180deg,#fffffffa,#f9fafbfa)}.error-note{background:linear-gradient(180deg,#fffbebc7,#fffffff5)}.journey-copy h3,.mission-card h2,.funnel-card h3{margin:0 0 8px;font-size:1.18rem;line-height:1.3}.journey-visual{display:grid;place-items:center;width:72px;height:72px;border-radius:22px;background:radial-gradient(circle at top left,rgba(255,255,255,.32),transparent 40%),linear-gradient(135deg,var(--visual),color-mix(in srgb,var(--visual) 65%,white))}.journey-visual svg{width:36px;height:36px;fill:none;stroke:#fff;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.9}.simple-note{padding:18px}.ad-slot{display:block;min-height:250px;padding:10px 0;border:1px solid rgba(226,232,240,.95);border-radius:20px;background:#ffffffe6}.ad-slot .adsbygoogle{display:block;width:100%;min-height:250px}.journey-intro{display:grid;grid-template-columns:72px 1fr;gap:16px;align-items:center}.back-link{display:inline-flex;margin-bottom:12px;color:var(--muted);font-size:.92rem;text-decoration:none}.mission-card,.funnel-card,.map-section,.article-header,.prose{overflow:hidden}.map-section{display:grid;gap:14px}.mission-status{display:grid;gap:10px;margin:16px 0 0;padding:14px;border:1px solid #eef1f5;border-radius:16px;background:#fafbfc}.mission-status-title{margin:0;color:var(--muted);font-size:.82rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.mission-status-list{display:grid;gap:10px;padding:0;margin:0;list-style:none}.mission-status-list li{display:grid;grid-template-columns:minmax(78px,auto) minmax(0,1fr);gap:12px;align-items:center;padding:10px 12px;border:1px solid #edf0f4;border-radius:14px;background:#fffffff5;color:var(--text)}.mission-status-badge{display:inline-flex;align-items:center;justify-content:center;width:fit-content;min-width:76px;padding:5px 10px;border-radius:999px;font-size:.72rem;font-weight:800;line-height:1}.mission-status-copy{display:grid;gap:3px;min-width:0}.mission-status-main{display:block;color:var(--text);font-size:.93rem;line-height:1.35}.mission-status-meta{display:block;color:var(--muted);font-size:.82rem;line-height:1.35}.mission-status-badge.is-done{color:#0a6b43;background:#edf9f2}.mission-status-badge.is-pending{color:#8f5b00;background:#fff7e6}.mission-card>.button{margin-top:16px}.print-map{display:grid;gap:18px;margin-top:14px;padding:18px;border:1px solid var(--line);border-radius:18px;background:#fff}.print-map-header,.print-map-block{display:grid;gap:10px}.print-map-header h2,.print-map-block h3,.print-step-head h4{margin:0}.print-map-header p,.print-step-hook,.print-step-text{color:var(--muted);line-height:1.7}.print-map-meta,.print-step-grid{display:grid;gap:12px}.print-map-meta{padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--surface-soft)}.print-map-meta p{margin:0}.print-map-answer-list,.print-detail-list,.print-checklist-list,.print-action-list,.print-chip-list,.print-status-list{display:grid;gap:8px;padding-left:18px;margin:0}.print-step-grid{grid-template-columns:minmax(0,1fr)}.print-step-card{display:grid;gap:10px;padding:16px;border:1px solid var(--line);border-radius:16px;background:#fff}.print-step-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.print-step-badge,.print-chip{display:inline-flex;align-items:center;justify-content:center;width:fit-content;padding:5px 10px;border-radius:999px;color:#0a6b43;background:#edf9f2;font-size:.78rem;font-weight:800}.print-chip-list{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));list-style:none;padding-left:0}.print-chip{color:var(--text);border:1px solid rgba(13,138,85,.14);background:#f8fdf9}.print-status-wrap{display:grid;gap:8px}.print-status-wrap h5{margin:0;font-size:.92rem}.print-status-list{padding-left:0;list-style:none}.print-status-list li{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start}.print-status-badge{display:inline-flex;align-items:center;justify-content:center;min-width:88px;padding:4px 8px;border-radius:999px;font-size:.72rem;font-weight:800}.print-status-list li.is-complete .print-status-badge{color:#0a6b43;background:#edf9f2}.print-status-list li.is-pending .print-status-badge{color:#8f5b00;background:#fff7e6}.print-status-text{line-height:1.6}.npc-card{display:grid;grid-template-columns:42px 1fr;gap:10px;padding:12px;box-shadow:none}.npc-avatar{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;color:#fff;background:linear-gradient(135deg,var(--accent),#ff6c60);font-weight:800;font-size:.82rem}.npc-dialogue small{display:block;color:var(--accent-strong);font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.npc-dialogue p{margin:4px 0 0;color:var(--text);line-height:1.55}.choice-box{margin:16px 0;background:var(--surface-soft)}.article-answer-fields{display:grid;gap:12px;margin-top:14px}.article-answer-field{display:grid;gap:6px;font-weight:800}.article-answer-field span{color:var(--text)}.article-answer-field input{width:100%;min-height:50px;padding:13px 14px;border:1px solid var(--line);border-radius:14px;background:#fff}.travel-budget{display:grid;gap:16px;margin:16px 0;background:linear-gradient(180deg,#fff,#fcfcfd)}.travel-budget-intro,.travel-budget-head{display:grid;gap:8px}.travel-budget-intro p,.travel-budget-head p,.travel-budget-note,.travel-budget-field small,.travel-tier-head p,.travel-tier-row small,.travel-tier-footer span{color:var(--muted)}.travel-budget-fields,.travel-budget-grid,.travel-tier-footer{display:grid;gap:12px}.travel-budget-field{display:grid;gap:6px;font-weight:800}.travel-budget-field span{color:var(--text)}.travel-budget-field input{width:100%;min-height:50px;padding:13px 14px;border:1px solid var(--line);border-radius:14px;background:#fff}.travel-budget-head h2,.travel-tier-head h3{margin:0}.travel-tier{display:grid;gap:14px;padding:16px;border:1px solid var(--line);border-radius:18px;background:var(--surface-soft)}.travel-tier-head small{color:var(--accent-strong);font-size:.72rem;font-weight:800;letter-spacing:.08em}.travel-tier-list{display:grid;gap:10px;padding:0;margin:0;list-style:none}.travel-tier-row{display:grid;gap:10px;padding:12px 0;border-top:1px solid var(--line)}.travel-tier-row:first-child{padding-top:0;border-top:0}.travel-tier-row strong{display:block}.travel-tier-metrics{display:grid;gap:4px}.travel-tier-range{font-size:.84rem;font-weight:700;color:var(--muted)}.travel-tier-footer{grid-template-columns:repeat(2,minmax(0,1fr));padding-top:14px;border-top:1px solid var(--line)}.travel-tier-footer div{display:grid;gap:4px}.travel-tier-footer strong{font-size:1rem}.travel-budget-note{margin:0;font-size:.84rem;line-height:1.6}.choice-button.is-selected{border-color:#e03a312e;color:#fff;background:linear-gradient(135deg,var(--accent),#ff6c60);font-weight:800}.task-list{padding-inline-start:18px}.journey-card.is-complete,.mission-card.is-complete{border-color:#0d8a5559;background:#f3fcf7}.journey-card.is-complete:after,.mission-card.is-complete:after{content:"100%";position:absolute;top:12px;inset-inline-end:12px;padding:4px 8px;border-radius:999px;color:#fff;background:var(--success);font-size:.7rem;font-weight:800}.next-step{margin-top:16px}.reveal{animation:rise .26s both ease-out}.delay-1,.delay-2{animation-delay:40ms}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (min-width: 760px){.brief-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-header{padding:12px 14px}.site-header-row{grid-template-columns:minmax(0,1fr) 148px minmax(0,1fr);gap:14px}.brand-compact{justify-content:flex-start}.brand-copy{display:block}.hero-actions,.error-actions,.next-step,.choice-row,.inline-step-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.journey-card{grid-template-columns:86px 1fr;padding:18px}.journey-visual{width:86px;height:86px}.journey-intro{grid-template-columns:86px 1fr}.article-page{width:min(100% - 40px,1120px)}.mission-status-list{grid-template-columns:repeat(2,minmax(0,1fr))}.mission-status-list li:last-child:nth-child(odd){grid-column:1 / -1}.article-header,.prose,.travel-budget{padding:22px}.travel-budget-fields,.travel-budget-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.travel-tier-row{grid-template-columns:minmax(0,1fr) auto;align-items:center}.travel-tier-metrics{justify-items:end;text-align:right}.travel-tier-footer{grid-template-columns:repeat(4,minmax(0,1fr))}.print-map-meta,.print-step-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media print{.site-header,.site-footer,.loader-screen,.ad-slot,.button,.next-step,.hero,.journey-hero,.article-page,.funnel-card,.map-section>div,.map-section>button{display:none!important}.map-section,.print-map{display:block!important;width:100%;box-shadow:none;border:0}.print-step-grid{display:block}.print-step-card{break-inside:avoid;margin-bottom:14px}}.skip-link{position:fixed;inset-block-start:8px;inset-inline-start:12px;z-index:300;padding:10px 14px;border-radius:10px;color:#fff;background:#111318;font-weight:800;text-decoration:none;transform:translateY(-160%);transition:transform .16s ease-out}.skip-link:focus{transform:translateY(0)}:focus-visible{outline:3px solid #1677ff;outline-offset:3px}body{background:linear-gradient(rgba(17,19,24,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(17,19,24,.025) 1px,transparent 1px),#fbfbfc;background-size:32px 32px}.stack{gap:clamp(18px,3vw,34px)}.site-header{position:sticky;top:8px;margin-bottom:20px;border-color:#1113181f;border-radius:18px;background:#fffffffa;box-shadow:0 12px 34px #1113181c}.site-header:after{content:"";position:sticky;inset-inline-end:0;width:18px;height:42px;margin-inline-start:-18px;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(255,255,255,.96))}.site-header-row{grid-template-columns:44px max-content minmax(106px,130px) minmax(170px,1fr);min-width:610px}.header-course-link{min-height:42px;display:inline-flex;align-items:center;border-color:#111318;color:#fff;background:#111318}.header-course-link:hover,.header-course-link:focus-visible{border-color:var(--accent-strong);color:#fff;background:var(--accent-strong)}.brand-mark{border-radius:12px;background:var(--accent)}.hero{position:relative;display:grid;gap:clamp(22px,4vw,52px);overflow:hidden;padding:clamp(26px,5vw,62px);border-radius:30px;color:#fff;background:#111318;box-shadow:0 28px 70px #11131833}.hero:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:38px 38px;mask-image:linear-gradient(90deg,#000,transparent 82%)}.hero-copy,.hero-route-map{position:relative;z-index:1}.hero h1{color:#fff;font-family:Avenir Next Condensed,Avenir Next,Hiragino Sans,sans-serif;font-size:clamp(2.5rem,8vw,5.4rem);line-height:.96;letter-spacing:-.035em;text-wrap:balance}.hero .eyebrow{color:#ff8078}.hero .hero-text{color:#e8e9ec;font-size:clamp(1.05rem,2vw,1.22rem);line-height:1.65;text-wrap:pretty}.hero-actions{margin-top:22px}.hero-actions .button{min-height:56px;border-color:#fff;color:#111318;background:#fff;box-shadow:none}.hero-actions .button:hover,.hero-actions .button:focus-visible{color:#fff;background:var(--accent);border-color:var(--accent)}.hero-how{display:grid;gap:12px;margin-top:26px;padding-top:20px;border-top:1px solid rgba(255,255,255,.18)}.hero-how>strong{color:#fff;font-size:.9rem}.hero-how ol{display:grid;gap:9px;padding:0;margin:0;list-style:none;counter-reset:route-step}.hero-how li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;align-items:start;color:#d3d5da;font-size:.91rem;line-height:1.45;counter-increment:route-step}.hero-how li:before{content:counter(route-step);display:grid;place-items:center;width:24px;height:24px;border-radius:50%;color:#111318;background:#fff;font-size:.74rem;font-weight:900}.hero-route-map{min-height:310px;align-self:stretch;color:#fff}.hero-route-map svg{width:100%;height:100%;min-height:310px}.route-grid{color:#fff}.route-shadow,.route-line{fill:none;stroke-linecap:round}.route-shadow{stroke:#0006;stroke-width:22}.route-line{stroke:#ed4940;stroke-width:12}.route-stop circle:first-child{fill:#111318;stroke:#fff;stroke-width:5}.route-stop circle:last-child{fill:#fff}.stop-two circle:first-child{stroke:#58c5a8}.stop-three circle:first-child{stroke:#5f8dff}.stop-four circle:first-child{stroke:#ffbe4d}.route-destination circle{fill:#fff}.route-destination path{fill:none;stroke:#111318;stroke-linecap:round;stroke-linejoin:round;stroke-width:3}.route-stamp{fill:none;stroke:#ffffff5c;stroke-width:2}.route-kanji{fill:#fffffff2;font-size:74px;font-weight:900;writing-mode:vertical-rl}.route-caption{fill:#ffffff8f;font-size:14px;font-weight:800;letter-spacing:.2em}.route-ticket{position:absolute;display:grid;place-items:center;border:1px solid rgba(255,255,255,.36);color:#fff;background:#111318;box-shadow:0 10px 20px #0000003d;font-weight:900}.route-ticket-a{inset:14% auto auto 5%;width:52px;height:34px;transform:rotate(-7deg)}.route-ticket-b{inset:auto 3% 10% auto;width:58px;height:58px;border-radius:50%;color:#111318;background:#fff;transform:rotate(8deg)}.section-head{padding-block:8px 0}.section-head h2{font-family:Avenir Next Condensed,Avenir Next,sans-serif;font-size:clamp(2rem,5vw,3.5rem);letter-spacing:-.025em;text-wrap:balance}.journey-grid{gap:16px}.journey-card{position:relative;min-height:100%;border-color:#1113181f;box-shadow:0 12px 30px #11131812;transition:transform .18s ease-out,box-shadow .18s ease-out}.journey-card:hover{transform:translateY(-3px);box-shadow:0 18px 38px #1113181c}.button.primary,.button.success,.choice-button.is-selected{border-color:#8f1d19;color:#fff;background:linear-gradient(135deg,#b72620,#8f1d19);box-shadow:0 10px 20px #8f1d192e}.button:hover,.choice-button:hover{border-color:#111318}.course-callout{display:grid;gap:18px;align-items:center;padding:clamp(22px,4vw,38px);border:1px solid #111318;border-radius:24px;color:#fff;background:radial-gradient(circle at 12% 20%,rgba(237,73,64,.32),transparent 30%),#111318;box-shadow:0 18px 45px #11131826}.course-symbol{position:relative;display:grid;place-items:center;width:76px;height:76px;border:2px solid rgba(255,255,255,.82);border-radius:50%}.course-symbol span{font-size:2rem;font-weight:900}.course-symbol i{position:absolute;inset:-7px;border:1px dashed rgba(255,255,255,.35);border-radius:50%}.course-copy h2{margin:0;color:#fff;font-family:Avenir Next Condensed,Avenir Next,sans-serif;font-size:clamp(1.6rem,4vw,2.5rem);line-height:1.05;letter-spacing:-.025em;text-wrap:balance}.course-copy p{margin:8px 0 0;color:#d7d9dd;line-height:1.6}.course-button{border-color:#fff;color:#111318;background:#fff;font-weight:900}.course-callout.compact{margin-top:26px;border-radius:18px;box-shadow:none}.course-callout.compact .course-symbol{width:58px;height:58px}.journey-hero{position:relative;gap:18px;padding:clamp(22px,4vw,40px);overflow:hidden;border:1px solid color-mix(in srgb,var(--accent) 38%,#dfe3e8);border-radius:26px;background:radial-gradient(circle at 88% 12%,color-mix(in srgb,var(--accent) 18%,transparent),transparent 34%),#fff;box-shadow:0 18px 46px #1113181a}.journey-hero:after{content:"";position:absolute;inset:auto 0 0;height:6px;background:var(--accent)}.journey-start-button{border-color:var(--accent);color:#fff;background:color-mix(in srgb,var(--accent) 78%,#111318);font-weight:900}.article-list{gap:0;border-block:1px solid var(--line)}.mission-card{position:relative;display:grid;grid-template-columns:50px minmax(0,1fr);gap:14px;padding:20px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none}.mission-card:last-child{border-bottom:0}.mission-number{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--text);border-radius:50%;color:var(--text);font-size:.8rem;font-weight:900}.mission-card.is-complete .mission-number{border-color:var(--success);color:#fff;background:var(--success)}.mission-card.is-complete:after{display:none}.mission-copy{min-width:0}.mission-copy h2{margin-top:4px;font-size:clamp(1.18rem,3vw,1.55rem);text-wrap:balance}.mission-status{margin:14px 0 0;padding:0;border:0;background:transparent}.mission-status-list{display:flex;flex-wrap:wrap;gap:8px}.mission-status-list li{display:inline-flex;width:auto;gap:7px;padding:6px 8px;border:1px solid var(--line);border-radius:9px;background:#fff}.mission-status-badge{min-width:0;padding:4px 7px}.mission-status-main{font-size:.78rem}.mission-status-meta{font-size:.72rem}.mission-button{width:fit-content;min-height:44px;margin-top:14px;border-color:#111318;color:#fff;background:#111318;font-weight:800}.lead-card{padding:clamp(22px,4vw,34px);border-color:#11131824;box-shadow:0 12px 30px #1113180f}.profile-fields{display:grid;gap:12px}.privacy-note{display:block;margin:12px 0;color:var(--muted);line-height:1.5}.map-section{padding:clamp(22px,4vw,36px);border-color:#11131824}.article-header{padding:clamp(22px,4vw,38px);border-color:#11131824;box-shadow:0 12px 30px #11131812}.article-header h1,.journey-intro h1{font-family:Avenir Next Condensed,Avenir Next,Hiragino Sans,sans-serif;text-wrap:balance}.prose{padding:clamp(20px,3vw,34px);box-shadow:0 12px 30px #1113180f}.prose p,.prose li{text-wrap:pretty}.choice-box{min-width:0;margin:22px 0;padding:clamp(18px,3vw,28px);border-color:color-mix(in srgb,var(--accent) 28%,var(--line));background:#fff;box-shadow:none}.choice-box legend{padding:0 8px;color:var(--text);font-size:clamp(1.3rem,3vw,1.8rem);font-weight:900;line-height:1.2;text-wrap:balance}.choice-button{justify-content:flex-start;min-height:54px;text-align:start;font-weight:750}.answer-status{display:block;min-height:1.4em;margin-top:12px;color:var(--success);font-weight:800}.step-feedback{min-height:1.5em;margin:0 0 8px;color:var(--success);font-weight:800;text-align:center}.step-feedback.is-error{color:#a61f1a}.step-advance-button{min-height:58px;font-size:1rem}.single-step-action,.next-step{width:min(100%,760px);margin-inline:auto}.next-step{grid-template-columns:1fr}.ad-slot{transition:min-height .18s ease-out,opacity .18s ease-out}.ad-slot.is-preview,.ad-slot.is-unfilled{display:none;min-height:0;height:0;padding:0;border:0;opacity:0;overflow:hidden}[dir=rtl] .choice-button,[dir=rtl] .mission-copy{text-align:right}@media (min-width: 760px){.site-header-row{grid-template-columns:minmax(230px,1fr) max-content 148px minmax(200px,.75fr);min-width:0}.hero{grid-template-columns:minmax(0,1.12fr) minmax(340px,.88fr);align-items:center}.hero-how ol{grid-template-columns:repeat(3,minmax(0,1fr))}.journey-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.course-callout{grid-template-columns:auto minmax(0,1fr) minmax(210px,.38fr)}.course-callout.compact{grid-template-columns:auto minmax(0,1fr)}.course-callout.compact .course-button{grid-column:2;width:fit-content}.journey-hero{grid-template-columns:minmax(0,1fr) minmax(270px,.42fr);align-items:center}.journey-hero .back-link,.journey-hero .journey-intro{grid-column:1}.journey-hero .progress-panel,.journey-hero .journey-start-button{grid-column:2}.journey-hero .progress-panel{grid-row:1 / span 2;align-self:end}.journey-hero .journey-start-button{align-self:start}.mission-card{grid-template-columns:62px minmax(0,1fr);padding:26px 8px}.mission-number{width:50px;height:50px}.profile-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.article-layout{grid-template-columns:minmax(0,1fr) minmax(260px,310px);align-items:start;gap:20px}.article-layout .prose{grid-row:1 / span 2}.article-layout>.progress-panel{position:sticky;top:106px}}@media (max-width: 759px){.hero-route-map{min-height:250px}.hero-route-map svg{min-height:250px}.hero h1{font-size:clamp(2.35rem,13vw,4rem)}.journey-card{grid-template-columns:62px minmax(0,1fr)}.journey-visual{width:62px;height:62px;border-radius:18px}.course-callout{grid-template-columns:62px minmax(0,1fr)}.course-symbol{width:58px;height:58px}.course-button{grid-column:1 / -1}.mission-status-main{display:none}.mission-status-list li{gap:0}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media print{.course-callout,.step-feedback,.single-step-action,.skip-link{display:none!important}}
