/* Hallmark · component: guide and funding workbench · system: TANK ocean · states: default hover focus active disabled loading error success */
@import url('tokens.css');
:root{color-scheme:dark;--ink:#eeeddc;--muted:#b2c8c3;--edge:#adc9b333;--paper:#dde5bf;--water:#06252f}*{box-sizing:border-box}body{margin:0;background:var(--water);color:var(--ink);font:15px/1.6 Archivo,Arial,sans-serif}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button,a{color:inherit}a{text-underline-offset:5px}button{cursor:pointer}button:disabled{opacity:.48;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--paper);outline-offset:4px}[hidden]{display:none!important}header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 4vw;border-bottom:1px solid var(--edge)}header img{display:block}nav{display:flex;gap:26px}nav a{font-size:13px;text-decoration:none;padding:10px 0;min-height:44px}.skip{position:fixed;top:-100px;background:var(--paper);color:var(--water);padding:12px;z-index:20}.skip:focus{top:8px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}main{max-width:1600px;margin:auto}.opening{display:grid;grid-template-columns:1.08fr 1fr;min-height:710px}.scene{position:relative;min-height:640px;overflow:hidden}.scene>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:48% center}.scene:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#04242c00 25%,#06252fd9 85%,var(--water)),linear-gradient(90deg,#06252f22,transparent)}.scene-copy{position:absolute;z-index:1;bottom:54px;left:8%;right:8%}.eyebrow{font:10px/1.6 GeistMono,monospace;letter-spacing:.16em;color:#bfd1ba;margin:0 0 15px}h1,h2,h3{font-weight:500;letter-spacing:-.045em;line-height:1.08}h1{font-size:clamp(40px,4.4vw,68px);margin:0 0 25px;max-width:580px}.scene-copy>p:last-child{font-size:17px;color:#c5d6ca;margin:0}.commission{padding:50px clamp(25px,4vw,66px) 38px;background:linear-gradient(140deg,#103a40aa,transparent 70%)}h2{font-size:35px;margin:0 0 19px}.intro{color:var(--muted);font-size:14px;max-width:480px;margin-bottom:23px}fieldset{border:0;padding:0;margin:0;display:grid;gap:9px}.subject{display:flex;gap:12px;align-items:center;cursor:pointer;padding:14px 16px;border:1px solid var(--edge);border-radius:8px;min-height:80px;background:#092c3570}.subject:has(input:checked){border-color:#c3cd8ca6;background:#8aa28016}.subject input{accent-color:var(--paper);width:16px;height:16px;margin:0;flex-shrink:0}.subject strong{font-size:17px;font-weight:500}.subject small{display:block;color:var(--muted);font-size:12px;margin-top:3px}.subject-mark{margin-left:auto;font:11px GeistMono,monospace;color:#94b5a5}.cost{font-size:13px;line-height:1.55;margin:24px 0 15px}.cost span{color:var(--muted);font-size:12px}.consent{display:flex;gap:10px;align-items:center;font-size:12px;min-height:44px;margin-bottom:10px}.consent input{width:19px;height:19px;accent-color:var(--paper);flex-shrink:0}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;border-radius:5px;padding:13px 19px;min-height:46px;text-decoration:none;font-weight:600;font-size:13px;line-height:1.4}.primary{border:1px solid var(--paper);color:#15363b;background:var(--paper)}.primary:hover:not(:disabled){background:#ecedce}.secondary{border:1px solid #adccba66;background:#143941;color:var(--ink)}.text-button{border:0;background:none;padding:10px 0;min-height:44px;text-decoration:underline;text-underline-offset:5px;font-size:12px;font-weight:400}.wallet-actions{display:flex;align-items:center;gap:17px;flex-wrap:wrap}#job-status:empty,#account:empty,#credit-status:empty{display:none}#job-status,#credit-status{font-size:13px;color:#e1dcb9;overflow-wrap:anywhere}.small{font-size:11px;color:var(--muted);overflow-wrap:anywhere}.commission>details{margin-top:25px;border-top:1px solid var(--edge)}summary{cursor:pointer;min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:13px}summary span{font-size:22px;font-weight:300}details[open]>summary span{transform:rotate(45deg)}.credit-body{font-size:13px;color:var(--muted)}.credit-body p{margin:8px 0 15px}.credit-body a{font-size:12px;display:inline-block;padding:7px 0}.credit-body label{display:block;margin:13px 0}.credit-body input,.credit-body select,.wallet-actions select{display:block;width:100%;border:1px solid #b8cfb644;background:#0b3038;color:var(--ink);border-radius:5px;padding:10px;margin-top:6px;min-height:44px;min-width:0}#credit-form{padding:5px 0 15px}#held{color:var(--ink);font-size:15px}.access-details{margin-top:15px;border-top:1px solid var(--edge)}.access-details summary{font-size:12px}.access-details p{font-size:12px}.library{padding:30px 6vw 65px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.section-heading h2{margin:0}#library-status{font-size:14px;color:var(--muted)}#guide-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.guide-card{padding:25px;border:1px solid var(--edge);border-radius:7px;background:linear-gradient(150deg,#15404788,#082b33)}.guide-card h3{font-size:24px;margin:14px 0}.guide-card p{font-size:13px;color:var(--muted);line-height:1.65}.guide-card .eyebrow{font-size:9px}.guide-card a{font-size:13px;display:inline-block;min-height:44px;padding:12px 0}footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px;padding:24px 4vw;border-top:1px solid var(--edge);font-size:11px;color:var(--muted)}footer a{min-height:44px;display:flex;align-items:center}footer>span{align-self:center}dialog{max-width:calc(100vw - 28px);width:520px;border:1px solid #b5c69b77;background:#0a3038;color:var(--ink);padding:30px;border-radius:12px;box-shadow:0 25px 100px #00141c}dialog::backdrop{background:#00141bdc;backdrop-filter:blur(5px)}dialog h2{font-size:29px}dialog p{font-size:13px}dl{font-size:13px}dt{color:var(--muted);margin-top:12px}dd{margin:4px 0;overflow-wrap:anywhere;font-family:GeistMono,monospace;font-size:12px}.review-actions{display:flex;gap:12px;margin-top:25px}
@media(max-width:850px){.opening{grid-template-columns:1fr}.scene{min-height:430px}.scene>img{object-position:50% 48%}.scene-copy{bottom:35px;left:6%}h1{font-size:48px}.commission{padding:35px 6vw 30px}.guide-stops{gap:22px}#guide-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){header{padding:14px 5vw;gap:15px}header img{width:85px;height:auto}nav{gap:16px}nav a{font-size:11px}h1{font-size:43px}.scene{min-height:380px}.scene-copy>p:last-child{font-size:15px}h2{font-size:30px}.commission{padding:28px 6vw}.commission>.eyebrow{font-size:8px;letter-spacing:.12em}.subject{padding:13px 12px;gap:10px}.subject strong{font-size:16px}.subject small{font-size:11px}.subject-mark{display:none}.guide-stops{grid-template-columns:1fr;gap:22px}.guide-stop h3{margin:8px 0}.guide-stop p{margin:8px 0}.guide-footer{gap:12px 20px}.guide-footer .primary{width:100%}#guide-list{grid-template-columns:1fr}.library{padding:25px 6vw 40px}.section-heading{align-items:flex-start;gap:15px}.section-heading h2{font-size:27px}.section-heading .text-button{font-size:11px;white-space:nowrap}footer{padding:22px 6vw;gap:10px}footer>span{width:100%}.guide-intro{font-size:15px}.review-actions{flex-wrap:wrap}.scene-copy{right:5%}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

@media(max-width:540px){dialog{padding:24px}dialog dd{font-size:11px;line-height:1.75}}

.cost{border-left:2px solid #b8c89788;padding:8px 12px;background:#8baf8710}
@media(max-width:360px){h1{font-size:37px}.scene-copy{right:3%}}
#companion-outing{margin-top:18px;padding:16px;border:1px solid var(--edge);border-radius:7px;background:#092c3570}#companion-outing p{font-size:13px}#companion-outing .small{font-size:11px}#companion-outing label{display:block;font-size:12px}#outing-find{display:block;width:100%;min-width:0;min-height:44px;margin-top:6px;padding:10px;border:1px solid var(--edge);border-radius:5px;background:#0b3038;color:var(--ink)}#outing-history article{border-top:1px solid var(--edge);padding-top:14px;margin-top:12px}#outing-history h3{font-size:19px;margin:6px 0}#outing-history a{display:inline-block;min-height:44px;padding-block:8px;font-size:12px}

html,body{overflow-x:clip}body{font-family:var(--font-body)}h1,h2,h3{min-width:0;overflow-wrap:anywhere}button:active:not(:disabled),.primary:active{transform:translateY(1px)}summary:hover{color:var(--paper)}
.funding-entry{margin:22px 0 10px;padding-block:17px;border-block:1px solid var(--edge);display:flex;flex-direction:column;gap:6px}.funding-entry a{font-size:14px}.funding-entry span{font-size:12px;color:var(--muted)}.commission #credit-tools{margin-top:0;border:0}.credit-body input{font:inherit}.subject{min-height:65px}.subject small{display:none}
body[data-reading=true] .opening,body[data-reading=true] .library{display:none}body[data-reading=true] footer{margin-top:40px}#reader{max-width:1120px;margin:24px auto 0;padding:0 28px;color:var(--ink);scroll-margin-top:24px}#reader:focus{outline:none}.reader-back{display:inline-block;font-size:13px;padding:10px 0 18px;min-height:44px;color:var(--muted);text-decoration:none}.reader-back:before{content:'←';margin-right:10px}.route-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:52px;min-height:340px}.route-art{width:100%;height:340px;object-fit:cover;display:block;border-radius:var(--radius-scene)}.route-copy{padding:22px 0}.route-copy h1{font-size:clamp(34px,4vw,52px);max-width:480px;margin:12px 0 16px;line-height:1.02}.route-intro{font-size:16px;color:var(--muted);margin:0 0 25px;max-width:380px}.route-credit{display:block;width:max-content;font-size:12px;color:var(--muted);margin-top:13px;min-height:34px;padding-block:5px}.route-copy .primary{white-space:nowrap}.route-stops{list-style:none;padding:14px 0;margin:28px 0 20px;border-block:1px solid var(--edge);display:grid;gap:0}.route-stops li{display:flex;gap:24px;align-items:baseline;padding:15px 0}.stop-number{font:12px var(--font-mono);color:var(--muted)}.route-stops h2{font-size:20px;margin:0 0 6px;letter-spacing:-.025em}.route-stops p{font-size:14px;color:var(--muted);margin:0}.route-extras{max-width:820px}.route-extras>details{border-bottom:1px solid var(--edge)}.route-extras summary{justify-content:flex-start;gap:14px;font-size:13px}.route-extras summary:after{content:'+';margin-left:auto}.route-extras details[open]>summary:after{content:'−'}.route-extras p{font-size:14px;color:var(--muted);max-width:65ch;overflow-wrap:anywhere}.route-extras h3{font-size:24px}.route-extras h4{font-size:15px;margin:20px 0 4px}.route-extras code{display:block;color:var(--muted);font:11px var(--font-mono);overflow-wrap:anywhere}.route-extras details details{margin:15px 0}.route-extras a{font-size:13px;display:inline-block;min-height:44px;padding-block:10px}.route-downloads{display:flex;gap:25px;flex-wrap:wrap;padding-bottom:12px}.route-downloads>*{white-space:nowrap}
@media(max-width:768px){.route-hero{gap:28px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.route-art{height:300px}.route-copy h1{font-size:36px}.route-intro{font-size:14px}}
@media(max-width:540px){header{padding:12px 5vw}nav{gap:13px}nav a{font-size:11px;white-space:nowrap}header img{width:75px}#reader{margin:0;padding:0 20px}.reader-back{padding-top:14px;padding-bottom:14px}.route-hero{grid-template-columns:minmax(0,1fr);gap:0;min-height:0}.route-art{height:185px;object-position:center 56%}.route-copy{padding:22px 0 0}.route-copy h1{font-size:36px;line-height:1.02;margin:9px 0 12px}.route-copy .eyebrow{font-size:9px;margin:0}.route-intro{font-size:14px;margin-bottom:20px}.route-copy .primary{width:100%}.route-credit{margin:9px auto 0}.route-stops{margin-top:15px;padding:8px 0}.route-stops li{gap:18px;padding:14px 0}.route-stops h2{font-size:18px}.route-stops p{font-size:13px}.route-extras{margin-bottom:30px}.route-downloads{gap:12px 22px}.section-heading{display:block}.section-heading button{margin-top:8px}}

.route-meta{display:flex;align-items:center;gap:18px;margin-top:10px;font-size:12px;color:var(--muted)}.route-meta .route-credit{margin:0;display:inline-block}.route-meta span{white-space:nowrap}@media(max-width:540px){.route-meta{justify-content:center;margin-top:8px}}
