@font-face { font-family: "DepartureMono"; src: url("./DepartureMono-Regular.woff") format("woff"); font-display: swap; }
.hiw-symbols { position:absolute; width:0; height:0; overflow:hidden; }
.guide-page { --hiw-line: #353d13; }
.guide-page svg { fill:currentColor; shape-rendering:crispEdges; }
.guide-page a:focus-visible,.guide-page button:focus-visible,.guide-page summary:focus-visible { outline:2px solid currentColor; outline-offset:5px; }
.hiw-skip { position:fixed; z-index:100; top:8px; left:8px; padding:16px; background:var(--ink); color:var(--paper); transform:translateY(-150%); }
.hiw-skip:focus { transform:translateY(0); }
.hiw-enter { display:grid; place-items:center; min-height:40px; padding:0 15px; background:var(--ink); color:var(--paper); border:1px solid var(--ink); text-decoration:none; white-space:nowrap; font-size:9px; }
.hiw-enter:hover { background:var(--paper); color:var(--ink); }
.hiw-section { padding:76px max(24px, calc((100vw - 1280px) / 2)); }
.hiw-section p { line-height:1.6; }
.hiw-kicker { display:flex; justify-content:space-between; gap:16px; font-size:9px; letter-spacing:.12em; }
.hiw-hero { padding-top:38px; padding-bottom:40px; }
.hiw-intro { display:grid; grid-template-columns:1fr auto; align-items:end; gap:32px; margin:48px 0; }
.hiw-intro h1 { font-weight:400; font-size:clamp(56px, 7.5vw, 106px); letter-spacing:-.065em; line-height:.92; margin:0; }
.hiw-intro-note { padding-bottom:5px; }
.hiw-mini-pixel { display:inline-block; width:16px; height:16px; background:currentColor; flex:none; }
.hiw-intro-note p { font-size:13px; margin:14px 0 20px; }
.hiw-intro-note a,.hiw-text-link { color:inherit; font-size:9px; text-decoration:none; border-bottom:1px solid; padding-bottom:5px; letter-spacing:.08em; }
.hiw-journey { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border:2px solid; }
.hiw-journey > li { min-width:0; position:relative; padding:20px; border-right:1px solid; display:flex; flex-direction:column; }
.hiw-journey > li:last-child { border-right:0; }
.hiw-journey > li:not(:last-child)::after { content:"→"; position:absolute; right:-15px; top:127px; width:28px; height:28px; display:grid; place-items:center; border:1px solid var(--ink); background:var(--ink); color:var(--paper); z-index:1; font-size:18px; }
.hiw-card-top { display:flex; justify-content:space-between; font-size:8px; letter-spacing:.08em; }
.hiw-journey-art { height:180px; display:grid; place-items:center; margin:12px 0 20px; }
.hiw-journey-art > svg,.hiw-journey-art > img,.hiw-blank { width:152px; height:152px; max-width:100%; }
.hiw-journey-art > img { image-rendering:pixelated; }
#hiw-hoodie-status,.hiw-hoodie-noscript { font-size:9px; text-align:center; line-height:1.6; }
.hiw-journey-art > svg:not(.hiw-art-grid) { padding:8px; }
.hiw-art-grid,.hiw-blank { border:1px solid var(--ink); background-image:linear-gradient(to right, #05050522 1px, transparent 1px),linear-gradient(to bottom, #05050522 1px, transparent 1px); background-size:5% 5%; }
.hiw-blank { display:grid; place-items:center; }
.hiw-blank span { font-size:12px; background:var(--paper); padding:6px; }
.hiw-journey h2 { font-size:20px; letter-spacing:-.045em; line-height:1.2; margin:0 0 10px; }
.hiw-journey p { font-size:11px; margin:0 0 24px; }
.hiw-id { display:block; font-size:8px; letter-spacing:.05em; border-top:1px solid #05050555; padding-top:12px; margin-top:auto; }
.hiw-journey-foot { display:flex; justify-content:space-between; gap:24px; align-items:baseline; margin-top:20px; }
.hiw-journey-foot > span { font-size:8px; }
.hiw-journey-foot p { font-size:9px; margin:0; max-width:390px; }
.hiw-section-heading { display:flex; justify-content:space-between; gap:32px; align-items:end; margin-bottom:44px; }
.hiw-section-heading h2,.hiw-freedom h2 { font-size:clamp(38px, 5.3vw, 68px); line-height:1; letter-spacing:-.055em; }
.hiw-section-heading > p { font-size:12px; margin:0; }
.hiw-practice { background:var(--ink); color:var(--paper); scroll-margin-top:72px; }
.hiw-practice-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(32px,6vw,100px); align-items:center; }
.hiw-board-label { display:flex; gap:10px; justify-content:space-between; font-size:8px; letter-spacing:.08em; margin-bottom:14px; }
.hiw-pixel-grid { display:grid; grid-template-rows:repeat(20,1fr); aspect-ratio:1; width:100%; border:2px solid var(--paper); background:var(--paper); touch-action:none; user-select:none; }
.hiw-pixel-grid > svg { width:100%; height:100%; color:var(--ink); grid-row:1/-1; }
.hiw-pixel-row { display:grid; grid-template-columns:repeat(20,1fr); min-height:0; }
.hiw-pixel-cell { min-width:0; min-height:0; }
.hiw-pixel-grid button { display:block; width:100%; height:100%; min-width:0; padding:0; border:0; border-right:1px solid #05050520; border-bottom:1px solid #05050520; background:var(--paper); border-radius:0; }
.hiw-pixel-grid button[aria-pressed="true"] { background:var(--ink); }
.hiw-pixel-grid button:hover { box-shadow:inset 0 0 0 2px #738b00; }
.hiw-pixel-grid button:focus-visible { outline:2px solid #fff; outline-offset:-3px; box-shadow:inset 0 0 0 4px #607600; position:relative; z-index:1; }
.hiw-practice-controls { display:grid; grid-template-columns:1fr 1fr; border:1px solid var(--paper); border-top:0; }
.hiw-practice-controls button { background:transparent; color:inherit; border:0; min-height:46px; font-size:9px; }
.hiw-practice-controls button + button { border-left:1px solid var(--paper); }
.hiw-practice-controls button:hover { background:var(--paper); color:var(--ink); }
#hiw-grid-help { font-size:9px; color:#b4c970; margin:14px 0; }
.hiw-practice-disclaimer { font-size:9px; margin:0; border-left:2px solid var(--paper); padding-left:12px; }
.hiw-formula { display:flex; flex-wrap:wrap; align-items:center; gap:12px; font-size:15px; }
.hiw-formula strong { font-weight:400; }
.hiw-formula-note { font-size:13px; margin:22px 0 30px; }
.hiw-cost-mode { display:grid; grid-template-columns:1fr 1fr; border:1px solid var(--paper); margin:0 0 22px; }
.hiw-cost-mode button { min-height:44px; background:transparent; color:inherit; border:0; font-size:10px; }
.hiw-cost-mode button[aria-pressed="true"] { background:var(--paper); color:var(--ink); }
.hiw-cost-readout { margin:0; display:grid; grid-template-columns:1fr 1fr; }
.hiw-cost-readout > div { padding:18px 0 20px; border-bottom:1px solid #536215; }
.hiw-cost-readout > div:nth-child(even) { padding-left:24px; border-left:1px solid #536215; }
.hiw-cost-readout dt { font-size:9px; letter-spacing:.08em; }
.hiw-cost-readout dd { font-size:52px; margin:12px 0 0; line-height:1; }
.hiw-total { display:flex; justify-content:space-between; align-items:center; gap:20px; margin:22px 0 18px; border:1px solid var(--paper); padding:18px; }
.hiw-total span { font-size:11px; }
.hiw-total output { font-size:32px; }
.hiw-small { font-size:10px; line-height:1.6; }
.hiw-small a { color:inherit; }
.hiw-ink-math .hiw-small { color:#b4c970; }
.hiw-text-link { display:inline-block; margin-top:22px; }
.hiw-permanent-note { display:flex; align-items:center; gap:20px; border-top:1px solid #536215; margin-top:42px; padding-top:24px; }
.hiw-permanent-note svg { width:32px; height:32px; flex:none; }
.hiw-permanent-note p { font-size:11px; margin:0; }
.hiw-permanent-note strong { font-weight:400; line-height:2; }
.hiw-toolkit { border-bottom:2px solid; }
.hiw-tool-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border:2px solid; }
.hiw-tool-grid > article { position:relative; padding:28px 22px; border-right:1px solid; display:flex; flex-direction:column; align-items:flex-start; min-width:0; }
.hiw-tool-grid > article:last-child { border-right:0; }
.hiw-tool-grid > article > svg,.hiw-tool-grid > article > img { width:68px; height:68px; margin-bottom:32px; }
.hiw-save-icon { display:block; object-fit:contain; filter:brightness(0); }
.hiw-tool-number { position:absolute; right:20px; top:24px; font-size:10px; }
.hiw-tool-grid h3 { font-weight:400; font-size:20px; letter-spacing:-.05em; margin:0 0 12px; }
.hiw-tool-grid p { font-size:11px; margin:0 0 25px; }
.hiw-tool-tag { font-size:7px; padding-top:12px; border-top:1px solid #05050566; margin-top:auto; width:100%; }
.hiw-twin-bottles { height:68px; display:flex; align-items:center; gap:3px; margin-bottom:32px; }
.hiw-twin-bottles img { width:50px; height:50px; image-rendering:pixelated; }
.hiw-signature { height:68px; line-height:.8; font-size:54px; margin-bottom:32px; }
.hiw-signature span { display:block; font-size:7px; margin-top:15px; }
.hiw-collaboration-flow { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); list-style:none; margin:0 0 25px; padding:0; border-top:2px solid; border-bottom:2px solid; }
.hiw-collaboration-flow li { padding:30px; position:relative; border-right:1px solid; }
.hiw-collaboration-flow li:last-child { border-right:0; }
.hiw-collaboration-flow li:not(:last-child)::after { content:"→"; position:absolute; right:-14px; top:60px; background:var(--paper); font-size:24px; }
.hiw-collaboration-flow svg { width:65px; height:65px; display:block; margin-bottom:25px; }
.hiw-collaboration-flow span { font-size:9px; }
.hiw-collaboration-flow h3 { font-size:22px; font-weight:400; letter-spacing:-.035em; margin:10px 0; }
.hiw-collaboration-flow p { font-size:12px; max-width:270px; margin:0; }
.hiw-freedom { background:var(--ink); color:var(--paper); }
.hiw-transfer-diagram { display:flex; align-items:center; justify-content:center; gap:clamp(24px,9vw,130px); padding:46px 24px; margin-top:36px; border-top:1px solid #536215; border-bottom:1px solid #536215; }
.hiw-transfer-diagram > div { display:grid; justify-items:center; gap:20px; }
.hiw-transfer-diagram svg { width:84px; height:84px; }
.hiw-transfer-diagram span { font-size:13px; }
.hiw-transfer-diagram b { font-size:54px; font-weight:400; }
.hiw-freedom-notes { display:grid; grid-template-columns:1fr 1fr; gap:60px; padding:22px 0 30px; }
.hiw-freedom-notes p { font-size:12px; max-width:510px; }
.hiw-collection-link { display:flex; align-items:center; gap:20px; border:1px solid var(--paper); color:inherit; text-decoration:none; padding:22px; }
.hiw-collection-link img { width:36px; height:36px; }
.hiw-collection-link span { font-size:9px; }
.hiw-collection-link strong { font-size:10px; font-weight:400; margin-left:auto; }
.hiw-collection-link:hover { background:#192000; }
.hiw-notes { border-bottom:2px solid; }
.hiw-notes .hiw-section-heading h2 { font-size:clamp(32px, 4.5vw, 58px); }
.hiw-notes-hint { font-size:9px; }
.hiw-faq { border-top:2px solid; }
.hiw-faq details { border-bottom:1px solid; scroll-margin-top:90px; }
.hiw-faq summary { cursor:pointer; display:flex; align-items:center; gap:22px; padding:25px 0; font-size:14px; list-style:none; }
.hiw-faq summary::-webkit-details-marker { display:none; }
.hiw-faq summary > span { font-size:10px; }
.hiw-faq summary b { margin-left:auto; font-size:24px; font-weight:400; }
.hiw-faq details[open] summary b { transform:rotate(45deg); }
.hiw-faq details p { max-width:860px; margin:0; padding:0 44px 25px; font-size:12px; }
.hiw-finale { position:relative; text-align:center; overflow:hidden; padding-top:70px; padding-bottom:70px; }
.hiw-finale > svg { width:140px; height:140px; display:block; margin:0 auto 12px; }
.hiw-finale h2 { font-size:clamp(60px, 8vw, 106px); line-height:.92; }
.hiw-start { display:block; width:min(100%,430px); border:2px solid var(--ink); padding:23px; background:var(--ink); color:var(--paper); font-size:12px; text-decoration:none; margin:32px auto 22px; }
.hiw-start:hover { background:var(--paper); color:var(--ink); }
.hiw-back { color:inherit; font-size:9px; text-decoration:none; border-bottom:1px solid; padding-bottom:4px; }
.hiw-sr-only { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
@media (max-width:1000px) {
  .hiw-journey > li { padding:16px; }
  .hiw-journey-art { height:140px; }
  .hiw-journey-art > svg,.hiw-journey-art > img,.hiw-blank { width:120px; height:120px; }
  .hiw-journey h2 { font-size:17px; }
  .hiw-journey p { font-size:10px; }
  .hiw-tool-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .hiw-tool-grid > article:nth-child(2) { border-right:0; }
  .hiw-tool-grid > article:nth-child(-n+2) { border-bottom:1px solid; }
  .hiw-collaboration-flow li { padding:22px; }
  .hiw-collaboration-flow h3 { font-size:18px; }
  .hiw-collection-link { flex-wrap:wrap; }
}
@media (max-width:760px) {
  .hiw-section { padding:52px 22px; }
  .hiw-hero { padding-top:26px; }
  .hiw-kicker span:last-child { display:none; }
  .hiw-intro { grid-template-columns:1fr; gap:24px; margin:35px 0; }
  .hiw-intro h1 { font-size:clamp(43px, 9.6vw, 72px); }
  .hiw-intro-note { display:flex; align-items:center; gap:16px; flex-wrap:wrap; }
  .hiw-intro-note p { margin:0; font-size:11px; }
  .hiw-intro-note a { margin-left:auto; font-size:8px; }
  .hiw-journey { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .hiw-journey > li:nth-child(2) { border-right:0; }
  .hiw-journey > li:nth-child(-n+2) { border-bottom:1px solid; }
  .hiw-journey > li:not(:last-child)::after { display:none; }
  .hiw-journey-foot { flex-direction:column; gap:12px; }
  .hiw-section-heading { display:block; margin-bottom:32px; }
  .hiw-section-heading > p { margin-top:22px; }
  .hiw-practice-layout { grid-template-columns:1fr; gap:38px; }
  .hiw-practice-board { max-width:480px; width:100%; margin:auto; }
  .hiw-cost-readout dd { font-size:45px; }
  .hiw-collaboration-flow { grid-template-columns:1fr; }
  .hiw-collaboration-flow li { padding:25px 18px 25px 104px; border-right:0; border-bottom:1px solid; }
  .hiw-collaboration-flow li:last-child { border-bottom:0; }
  .hiw-collaboration-flow li:not(:last-child)::after { content:"↓"; top:auto; bottom:-14px; right:calc(50% - 12px); }
  .hiw-collaboration-flow svg { position:absolute; left:14px; top:36px; width:56px; height:56px; }
  .hiw-collaboration-flow p { max-width:none; font-size:11px; }
  .hiw-freedom-notes { grid-template-columns:1fr; gap:0; }
  .hiw-transfer-diagram { gap:24px; padding:30px 0; }
  .hiw-transfer-diagram span { font-size:9px; }
  .hiw-transfer-diagram svg { width:60px; height:60px; }
  .hiw-transfer-diagram b { font-size:34px; }
  .hiw-collection-link { gap:14px; padding:18px; }
  .hiw-collection-link span { max-width:200px; line-height:1.7; }
  .hiw-collection-link strong { width:100%; margin:0; }
  .hiw-notes-hint { display:block; margin-top:24px; }
  .hiw-faq summary { font-size:11px; gap:14px; }
  .hiw-faq details p { padding-left:28px; padding-right:0; font-size:11px; }
}
@media (max-width:400px) {
  .hiw-section { padding-right:16px; padding-left:16px; }
  .hiw-enter { font-size:8px; padding:0 8px; }
  .hiw-intro h1 { font-size:9.4vw; }
  .hiw-journey > li { padding:12px; }
  .hiw-card-top { font-size:7px; }
  .hiw-journey h2 { font-size:15px; }
  .hiw-journey-art > svg,.hiw-journey-art > img,.hiw-blank { width:110px; height:110px; }
  .hiw-tool-grid > article { padding:24px 15px; }
  .hiw-tool-grid h3 { font-size:17px; }
  .hiw-tool-tag { font-size:6px; }
  .hiw-formula { gap:9px; font-size:12px; }
  .hiw-transfer-diagram { gap:15px; }
  .hiw-transfer-diagram span { font-size:8px; }
}
@media (prefers-reduced-motion:reduce) { .guide-page { scroll-behavior:auto; } html:has(.guide-page) { scroll-behavior:auto; } }
