/* The Hatter's Impossible Itinerary · October 2026.
   Additive, page-scoped rules. Approved hero & global nav remain unchanged. */
.mh-page .mhp-journey{position:relative;isolation:isolate;padding:clamp(65px,8vw,110px) 0 83px;color:#322d2d;background:radial-gradient(ellipse at 77% 12%,#f4dcbb,transparent 44%),linear-gradient(120deg,#e0c59e,#f3e2c5 56%,#d1ad80);overflow:hidden}
.mhp-journey:before{content:"";position:absolute;inset:0;z-index:-1;opacity:.24;pointer-events:none;background:repeating-linear-gradient(110deg,transparent 0 11px,#8b614226 12px,transparent 13px),radial-gradient(circle at 30% 30%,#fff5d0,transparent 52%)}
.mhp-journey:after{content:"";position:absolute;left:-8%;top:-110px;width:380px;height:380px;border:2px solid #a97b594f;border-radius:50%;box-shadow:0 0 0 26px #8b613817,0 0 0 58px #8b613810;pointer-events:none}
.mhp-journey .shell{position:relative}
.mhp-journey .mhx-kicker{color:#8b5037}
.mhp-journey-top{display:grid;grid-template-columns:minmax(0,1fr) 185px;align-items:end;gap:36px}
.mhp-journey h2{font:500 clamp(2.4rem,4.7vw,4.75rem)/1.07 var(--serif,Georgia,serif);letter-spacing:-.035em;margin:0 0 20px;max-width:850px;color:#263534}
.mhp-journey h2 em{color:#905c45}
.mhp-journey-top p:not(.mhx-kicker){font-size:1.1rem;line-height:1.72;max-width:760px;color:#4e554c}
.mhp-counter{display:flex;align-items:center;flex-direction:column;justify-content:center;gap:9px;padding-bottom:9px;align-self:end}
.mhp-counter-count{font:italic 3.55rem/1 var(--serif,Georgia,serif);color:#935f46;font-variant-numeric:tabular-nums}
.mhp-counter-label{font:800 .62rem/1.5 var(--sans,system-ui);letter-spacing:.15em;color:#855b44;text-align:center}
.mhp-counter progress{display:block;width:100%;height:9px;border:1px solid #9b7554;background:#ceb08b;appearance:none}
.mhp-counter progress::-webkit-progress-bar{background:#ceb08b}
.mhp-counter progress::-webkit-progress-value{background:#8a5642;transition:width .3s}
.mhp-counter progress::-moz-progress-bar{background:#8a5642}
.mhp-route{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));position:relative;gap:0;margin-top:36px;padding-top:31px;border-top:2px solid #986d4a55}
.mhp-route:before{content:"";position:absolute;top:94px;left:10%;right:10%;border-top:3px dashed #90623c81;pointer-events:none}
.mhp-route a{display:flex;flex-direction:column;align-items:center;gap:11px;position:relative;color:#4d4036;text-decoration:none;padding:10px 7px 12px;min-width:0;text-align:center}
.mhp-seal{z-index:1;display:grid;place-items:center;width:91px;height:91px;border:5px double #9a6e48;border-radius:50%;background:radial-gradient(circle at 30% 21%,#fff0c8,#b99163 70%,#806346);box-shadow:0 7px 13px #6b493640,inset 0 0 0 5px #f7d9a760;color:#584032;font:italic 2.55rem/1 var(--serif,Georgia,serif);transition:transform .2s,background .2s}
.mhp-route a:hover .mhp-seal,.mhp-route a:focus-visible .mhp-seal{transform:rotate(-9deg) scale(1.05)}
.mhp-route a.mhp-collected .mhp-seal{background:radial-gradient(circle at 33% 25%,#fbe2ab,#956c4b 70%,#4f4937);border-color:#5d5d43;color:#fff3cf;box-shadow:0 5px 21px #734e3777,inset 0 0 0 5px #efcd875e}
.mhp-route a.mhp-collected .mhp-seal:after{content:"✓";position:absolute;bottom:-3px;right:12%;font:800 1rem var(--sans,system-ui);color:#fff5ca;background:#4b6158;border:2px solid #e9cf9b;border-radius:50%;width:23px;height:23px;display:grid;place-items:center}
.mhp-route-name{font:500 clamp(1.12rem,1.55vw,1.44rem)/1.2 var(--serif,Georgia,serif);color:#3d3831}
.mhp-route-status{font:800 .6rem/1.4 var(--sans,system-ui);letter-spacing:.1em;color:#8c6044;text-transform:uppercase}
.mhp-route a.mhp-collected .mhp-route-status{color:#3a654d}
.mhp-journey-caption{font:italic 1.15rem/1.5 var(--serif,Georgia,serif);color:#8f5739;text-align:center;padding:25px 0 0;margin:0}
.mhp-journey noscript p{max-width:760px;margin:20px auto 0}
/* Secret doorway: real vector scene with accessible interactive text on top. */
.mh-page .mhp-door-section{isolation:isolate;position:relative;min-height:660px;padding:clamp(75px,9vw,130px) 0;color:#f9f1e4;background:#151f2e;overflow:hidden}
.mhp-door-scenery{position:absolute;inset:0;z-index:-3;background:url('/assets/mh-secret-door.svg') 80% center / cover no-repeat}
.mhp-door-section:before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#111e2cf7 0%,#151c2eeb 37%,#24203396 69%,#0b182675 100%),linear-gradient(0deg,#0d1724cf,transparent 30%);pointer-events:none}
.mhp-door-section:after{content:"";z-index:-1;position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 80px #071321c9}
.mhp-door-content{position:relative}
.mhp-door-section .mhx-kicker{color:#f6c88e}
.mhp-door-section h2{font:500 clamp(2.6rem,5.5vw,5.7rem)/1.05 var(--serif,Georgia,serif);letter-spacing:-.04em;color:#fff4e7;max-width:760px;margin:0 0 17px}
.mhp-door-section h2 em{color:#f1c287}
.mhp-door-section h2 span{display:block;font:italic clamp(1.22rem,2vw,1.9rem)/1.4 var(--serif,Georgia,serif);color:#eacfa9;letter-spacing:0;margin-top:14px}
.mhp-door-content>p:not(.mhx-kicker){color:#d8ddd7;line-height:1.75;font-size:1.03rem;max-width:650px}
.mhp-door-riddle{max-width:660px;margin-top:37px;padding-top:22px;border-top:1px solid #e8bd8385}
.mhp-riddle-label{font:800 .68rem/1.3 var(--sans,system-ui);letter-spacing:.15em;text-transform:uppercase;color:#f3c68c}
.mhp-door-riddle h3{font:italic clamp(1.45rem,2.2vw,2.25rem)/1.33 var(--serif,Georgia,serif);color:#fff0dc;margin:14px 0 20px}
.mhp-riddle-choices{display:flex;flex-wrap:wrap;gap:10px}
.mhp-riddle-choices button{font:800 .7rem/1.4 var(--sans,system-ui);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;min-height:48px;color:#fbe5c4;background:#2c3239dc;border:1px solid #c79a65;padding:12px 17px;transition:border-color .2s,background .2s}
.mhp-riddle-choices button:hover,.mhp-riddle-choices button:focus-visible{background:#584155;border-color:#f4c68a}
.mhp-riddle-choices button[aria-pressed="true"]{background:#d7a968;color:#1f2c32;border-color:#fbe2b2}
#mhp-riddle-status{font:italic 1.06rem/1.6 var(--serif,Georgia,serif);color:#ebc79d;max-width:690px;margin:18px 0}
.mhp-dossier{max-width:790px;margin:28px 0;padding:30px 35px;background:linear-gradient(135deg,#f5dfb9,#ead2ab 55%,#cfad80);border-left:7px solid #8d563e;box-shadow:11px 16px 0 #09111ca6;color:#2a3935;transform:rotate(-.4deg)}
.mhp-dossier[hidden]{display:none!important}
.mhp-dossier-kicker{color:#895339;font:800 .72rem/1.4 var(--sans,system-ui);letter-spacing:.16em}
.mhp-dossier h3{font:italic clamp(1.65rem,2.7vw,2.65rem)/1.25 var(--serif,Georgia,serif);color:#4b3b36;margin:15px 0}
.mhp-dossier p{color:#37463d;line-height:1.7;font-size:1rem}
.mhp-dossier a{color:#854c36;font-weight:800;text-underline-offset:5px}
.mhp-unlocked .mhp-door-scenery{filter:brightness(1.19) saturate(1.12)}
.mhp-door-actions{display:flex;align-items:center;flex-wrap:wrap;gap:22px;margin-top:28px}
.mhp-door-actions a{color:#edc48c;font:800 .73rem/1.4 var(--sans,system-ui);letter-spacing:.08em;text-decoration:underline;text-underline-offset:5px}
.mhp-reset{border:0;border-bottom:1px dashed #cda374;background:none;padding:10px 0;color:#e4c69e;cursor:pointer;font:800 .7rem/1.4 var(--sans,system-ui);letter-spacing:.08em;text-transform:uppercase}
.mhp-reset:hover{color:#fff6e5}
.mh-page :is(.mhp-door-section,.mhp-journey) :is(a,button):focus-visible{outline:3px solid #f5cb94;outline-offset:4px}
@media(max-width:900px){.mhp-route-name{font-size:1.15rem}.mhp-seal{width:75px;height:75px;font-size:2rem}.mhp-route:before{top:86px}.mhp-door-scenery{background-position:70% center}.mhp-journey-top{grid-template-columns:1fr 165px}}
@media(max-width:700px){.mhp-journey-top{display:block}.mhp-counter{flex-direction:row;justify-content:flex-start;gap:15px;margin-top:20px}.mhp-counter-count{font-size:2.7rem}.mhp-counter progress{max-width:155px}.mhp-route{overflow-x:auto;scroll-snap-type:x proximity;grid-template-columns:repeat(5,minmax(142px,1fr));margin-inline:-16px;padding-inline:16px;padding-bottom:17px;overscroll-behavior-inline:contain}.mhp-route a{scroll-snap-align:center}.mhp-route:before{left:6%;right:6%}.mhp-door-section:before{background:linear-gradient(90deg,#111e2cf5,#151c2ee7 78%,#141e2abd)}.mhp-door-scenery{background-position:76% center;opacity:.6}.mhp-dossier{transform:none;padding:24px}.mhp-riddle-choices button{width:100%}}
@media(max-width:430px){.mhp-journey{padding-bottom:48px}.mhp-counter{flex-wrap:wrap}.mhp-door-section h2{font-size:clamp(2.4rem,12vw,4rem)}.mhp-door-actions{align-items:flex-start;flex-direction:column;gap:9px}}
@media(prefers-reduced-motion:reduce){.mhp-seal,.mhp-riddle-choices button{transition:none}.mhp-route a:hover .mhp-seal,.mhp-route a:focus-visible .mhp-seal{transform:none}.mhp-route{scroll-behavior:auto}}
@media print{.mh-page .mhp-journey,.mh-page .mhp-door-section{background:#fff!important;color:#142a2e!important;padding:20px 0;min-height:0}.mhp-door-scenery,.mhp-door-section:before{display:none}.mhp-door-section h2,.mhp-door-section h3,.mhp-door-content>p,.mhp-door-section h2 em{color:#142a2e!important}.mhp-riddle-choices,.mhp-reset{display:none}.mhp-route{display:flex;gap:10px}.mhp-route:before{display:none}.mhp-seal{width:34px;height:34px;font-size:1rem}}