/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-content:""}}}@layer theme{:root,:host{--font-sans:var(--sans);--font-mono:var(--mono);--spacing:.25rem;--font-weight-bold:700;--radius-lg:.5rem;--radius-2xl:1rem;--ease-out:cubic-bezier(0, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-raise:var(--raise);--color-raise-2:var(--raise-2);--color-line:var(--line);--color-ink:var(--ink);--color-muted:var(--muted);--color-accent:var(--accent);--font-script:var(--script)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth}body{background:var(--ground);color:var(--ink);font:400 16px/1.6 var(--sans);-webkit-font-smoothing:antialiased;margin:0;transition:background .4s,color .4s;overflow-x:clip}img{max-width:100%}a{color:inherit}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}::selection{background:var(--accent);color:#fff}h1,h2,h3{font-weight:700}h2{letter-spacing:-.055em;text-wrap:balance;margin:14px 0 0;font-size:clamp(2rem,4vw,3.75rem);font-weight:800;line-height:.98}h3{text-wrap:balance}sup{vertical-align:super;line-height:inherit;position:static}}@layer components;@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.\!visible{visibility:visible!important}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{top:0;right:0;bottom:0;left:0}.inset-x-0{inset-inline:0}.top-0{top:0}.top-3{top:calc(var(--spacing) * 3)}.top-px{top:1px}.right-\[18px\]{right:18px}.right-px{right:1px}.bottom-0{bottom:0}.bottom-\[calc\(18px\+env\(safe-area-inset-bottom\,0px\)\)\]{bottom:calc(18px + env(safe-area-inset-bottom,0px))}.left-0{left:0}.left-3{left:calc(var(--spacing) * 3)}.z-0{z-index:0}.z-30{z-index:30}.z-40{z-index:40}.z-\[31\]{z-index:31}.z-\[90\]{z-index:90}.z-\[100\]{z-index:100}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.my-1\.5{margin-block:calc(var(--spacing) * 1.5)}.-mr-3{margin-right:calc(var(--spacing) * -3)}.mr-0\.5{margin-right:calc(var(--spacing) * .5)}.ml-auto{margin-left:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-0\.5{height:calc(var(--spacing) * .5)}.h-2{height:calc(var(--spacing) * 2)}.h-4{height:calc(var(--spacing) * 4)}.h-9{height:calc(var(--spacing) * 9)}.h-11{height:calc(var(--spacing) * 11)}.h-\[18px\]{height:18px}.h-full{height:100%}.h-px{height:1px}.min-h-11{min-height:calc(var(--spacing) * 11)}.w-2{width:calc(var(--spacing) * 2)}.w-4{width:calc(var(--spacing) * 4)}.w-9{width:calc(var(--spacing) * 9)}.w-11{width:calc(var(--spacing) * 11)}.w-\[18px\]{width:18px}.w-full{width:100%}.max-w-\[1240px\]{max-width:1240px}.min-w-\[200px\]{min-width:200px}.shrink{flex-shrink:1}.grow{flex-grow:1}.origin-bottom-right{transform-origin:100% 100%}.origin-left{transform-origin:0}.-translate-y-\[200\%\]{--tw-translate-y: -200% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-full{--tw-translate-y:-100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-0{--tw-translate-y:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-2{--tw-translate-y:calc(var(--spacing) * 2);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-\[45\%\]{--tw-translate-y:45%;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-full{--tw-translate-y:100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-90{--tw-scale-x:90%;--tw-scale-y:90%;--tw-scale-z:90%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-x-0{--tw-scale-x:0%;scale:var(--tw-scale-x) var(--tw-scale-y)}.rotate-0{rotate:0deg}.rotate-90{rotate:90deg}.rotate-\[3deg\]{rotate:3deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-col{flex-direction:column}.place-items-center{place-items:center}.items-center{align-items:center}.items-end{align-items:flex-end}.justify-between{justify-content:space-between}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-accent{border-color:var(--color-accent)}.border-line{border-color:var(--color-line)}.border-transparent{border-color:#0000}.bg-\[color-mix\(in_srgb\,var\(--ground\)_78\%\,transparent\)\]{background-color:var(--ground)}@supports (color:color-mix(in lab,red,red)){.bg-\[color-mix\(in_srgb\,var\(--ground\)_78\%\,transparent\)\]{background-color:color-mix(in srgb,var(--ground) 78%,transparent)}}.bg-accent{background-color:var(--color-accent)}.bg-line{background-color:var(--color-line)}.bg-raise{background-color:var(--color-raise)}.bg-raise-2{background-color:var(--color-raise-2)}.fill-ink{fill:var(--color-ink)}.p-2{padding:calc(var(--spacing) * 2)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3\.5{padding-inline:calc(var(--spacing) * 3.5)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-\[clamp\(16px\,4vw\,48px\)\]{padding-inline:clamp(16px,4vw,48px)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3\.5{padding-block:calc(var(--spacing) * 3.5)}.pt-1{padding-top:var(--spacing)}.pt-\[env\(safe-area-inset-top\,0px\)\]{padding-top:env(safe-area-inset-top,0px)}.pb-0\.5{padding-bottom:calc(var(--spacing) * .5)}.text-left{text-align:left}.font-mono{font-family:var(--font-mono)}.font-script{font-family:var(--font-script)}.text-\[0\.8rem\]{font-size:.8rem}.text-\[0\.66rem\]{font-size:.66rem}.text-\[0\.78rem\]{font-size:.78rem}.text-\[0\.95rem\]{font-size:.95rem}.text-\[1\.7rem\]{font-size:1.7rem}.text-\[3rem\]{font-size:3rem}.leading-none{--tw-leading:1;line-height:1}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.whitespace-nowrap{white-space:nowrap}.text-accent{color:var(--color-accent)}.text-ink{color:var(--color-ink)}.text-muted{color:var(--color-muted)}.opacity-0{opacity:0}.opacity-20{opacity:.2}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[var\(--shadow\)\]{--tw-shadow:var(--shadow);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.blur-\[4px\]{--tw-blur:blur(4px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.blur-none{--tw-blur: ;filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur-\[14px\]{--tw-backdrop-blur:blur(14px);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[left\,width\,opacity\]{transition-property:left,width,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[transform\,opacity\,filter\]{transition-property:transform,opacity,filter;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[transform\,opacity\,visibility\]{transition-property:transform,opacity,visibility;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.\[transition-delay\:calc\(var\(--i\)\*70ms\)\]{transition-delay:calc(var(--i) * 70ms)}.delay-200{transition-delay:.2s}.duration-0{--tw-duration:0s;transition-duration:0s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-500{--tw-duration:.5s;transition-duration:.5s}.duration-700{--tw-duration:.7s;transition-duration:.7s}.duration-1000{--tw-duration:1s;transition-duration:1s}.duration-\[250ms\]{--tw-duration:.25s;transition-duration:.25s}.duration-\[400ms\]{--tw-duration:.4s;transition-duration:.4s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.\[transition-timing-function\:var\(--ease\)\]{transition-timing-function:var(--ease)}.before\:text-accent:before{content:var(--tw-content);color:var(--color-accent)}.before\:content-\[\'\.\/\'\]:before{--tw-content:"./";content:var(--tw-content)}@media (hover:hover){.hover\:scale-110:hover{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\:-rotate-\[8deg\]:hover{rotate:-8deg}.hover\:rotate-180:hover{rotate:180deg}.hover\:border-accent:hover{border-color:var(--color-accent)}.hover\:bg-raise-2:hover{background-color:var(--color-raise-2)}.hover\:text-ink:hover{color:var(--color-ink)}}.focus\:translate-y-0:focus{--tw-translate-y:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}@media not all and (min-width:719px){.max-\[719px\]\:h-11{height:calc(var(--spacing) * 11)}.max-\[719px\]\:min-h-11{min-height:calc(var(--spacing) * 11)}.max-\[719px\]\:w-11{width:calc(var(--spacing) * 11)}.max-\[719px\]\:min-w-11{min-width:calc(var(--spacing) * 11)}.max-\[719px\]\:items-center{align-items:center}}@media (min-width:720px){.min-\[720px\]\:m-0{margin:0}.min-\[720px\]\:flex{display:flex}.min-\[720px\]\:hidden{display:none}.min-\[720px\]\:h-9{height:calc(var(--spacing) * 9)}.min-\[720px\]\:w-9{width:calc(var(--spacing) * 9)}.min-\[720px\]\:gap-2{gap:calc(var(--spacing) * 2)}}}.wrap{z-index:1;max-width:1240px;margin:0 auto;padding-inline:clamp(16px,4vw,48px);position:relative}.eyebrow{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);font-size:.72rem}.btn{font-family:var(--mono);border:1px solid var(--line);cursor:pointer;isolation:isolate;background:0 0;border-radius:999px;align-items:center;gap:8px;padding:12px 18px;font-size:.82rem;text-decoration:none;transition:border-color .2s,color .2s;display:inline-flex;position:relative;overflow:hidden}.btn:before{content:"";background:var(--accent);transition:transform .4s var(--ease);z-index:-1;border-radius:inherit;position:absolute;top:0;right:0;bottom:0;left:0;transform:translateY(101%)}.btn:hover{border-color:var(--accent);color:#fff}.btn:hover:before{transform:none}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:before{background:var(--ink)}.btn.primary:hover{color:var(--ground)}.btn kbd{font-family:var(--mono);opacity:.6;border:1px solid;border-radius:4px;padding:0 5px;font-size:.7rem}.more{font-family:var(--mono);color:var(--ink);align-items:center;gap:12px;padding-block:6px;font-size:.85rem;text-decoration:none;display:inline-flex;position:relative}.more:after{content:"";background:var(--accent);transform-origin:100%;height:1px;transition:transform .45s var(--ease);position:absolute;bottom:0;left:0;right:0;transform:scaleX(.3)}.more .arr{border:1px solid var(--line);width:30px;height:30px;transition:background .3s,border-color .3s,transform .45s var(--ease);border-radius:50%;place-items:center;display:inline-grid}.more:hover:after{transform-origin:0;transform:scaleX(1)}.more:hover .arr{background:var(--accent);border-color:var(--accent);color:#fff;transform:translate(6px)rotate(-45deg)}.hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(16px,4vw,48px);min-height:100svh;padding-block:96px 56px;display:grid;position:relative}.hero-text{will-change:transform}.hero .bar{background:var(--accent);width:36px;height:3px;animation:bar 1s var(--ease) both;border-radius:2px;margin-bottom:22px;display:block}@keyframes bar{0%{width:0}}.name{letter-spacing:-.045em;margin:12px 0 18px;font-size:clamp(3rem,7.6vw,6.2rem);font-weight:800;line-height:.95}.name .word{white-space:nowrap;display:inline-block}.name .sp{width:.26em;display:inline-block}.name .ch{animation:rise .8s var(--ease) both;transition:transform .35s var(--ease),color .35s;display:inline-block}.name .ch:hover{color:var(--accent);transform:translateY(-12px)rotate(-6deg)}@keyframes rise{0%{opacity:0;filter:blur(6px);transform:translateY(40%)}to{opacity:1;filter:none;transform:none}}.loc{font-family:var(--mono);letter-spacing:.08em;color:var(--muted);align-items:center;gap:8px;font-size:.75rem;display:inline-flex}.loc i{background:var(--accent);border-radius:50%;width:6px;height:6px;animation:2.4s infinite pulse}@keyframes pulse{50%{opacity:.5}}.role{color:var(--accent);margin:14px 0 0;font-size:clamp(1.1rem,2vw,1.4rem);font-weight:500}.pitch{max-width:30ch;margin:40px 0 10px;font-size:clamp(1.1rem,1.8vw,1.3rem);font-weight:600;line-height:1.45}.prompt{font-family:var(--mono);min-height:1.6em;font-size:.9rem}.prompt .ps{color:var(--accent);margin-right:8px}.prompt .caret{background:var(--ink);vertical-align:-.18em;width:.55em;height:1.1em;margin-left:2px;animation:1s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.hero-cta{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.scroll-cue{font-family:var(--mono);color:var(--muted);flex-direction:column;align-items:center;gap:8px;font-size:.7rem;display:flex;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}.scroll-cue span{background:linear-gradient(var(--muted),transparent);transform-origin:top;width:1px;height:34px;animation:2s ease-in-out infinite drop}@keyframes drop{0%{transform:scaleY(0)}50%{transform:scaleY(1)}to{opacity:0;transform:scaleY(1)}}section.block{padding-block:clamp(96px,13vw,170px) 0;position:relative}#tous{padding-top:clamp(32px,4vw,56px)}.path{font-family:var(--mono);color:var(--muted);align-items:center;gap:8px;font-size:.82rem;display:flex}.path b{color:var(--accent);font-weight:500}.path:after{content:"";background:var(--line);transform-origin:0;max-width:160px;height:1px;transition:transform 1.2s var(--ease);flex:1;transform:scaleX(0)}.path.in:after{transform:scaleX(1)}.split .w{transition:transform 1s var(--ease),opacity 1s,filter 1s;transition-delay:calc(var(--i) * 70ms);display:inline-block}.js .split:not(.in) .w{opacity:.2;filter:blur(4px);transform:translateY(45%)rotate(3deg)}.sec-head{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:20px 24px;margin-bottom:clamp(36px,5vw,64px);display:grid}.sec-head p{max-width:none;color:var(--muted);transition:opacity 1s .3s,transform 1s .3s var(--ease);margin:0}.js .sec-head:not(.in) p{opacity:.2;transform:translateY(16px)}.rise{transition:opacity 1s var(--ease),transform 1s var(--ease)}.js .rise:not(.in){opacity:.15;transform:translateY(40px)}.page-hero{padding-block:clamp(130px,18vw,200px) 0;position:relative}.page-hero .title{letter-spacing:-.055em;margin:18px 0 0;font-size:clamp(2rem,4vw,3.75rem);font-weight:800;line-height:.9}.page-hero .lede{color:var(--muted);max-width:44ch;margin:28px 0 0;font-size:clamp(1.1rem,2vw,1.35rem)}.page-hero .ghost{font-family:var(--mono);color:#0000;-webkit-text-stroke:1px var(--line);pointer-events:none;-webkit-user-select:none;user-select:none;z-index:-1;will-change:transform;font-size:clamp(6rem,22vw,20rem);font-weight:700;line-height:1;position:absolute;top:90px;right:-2vw}.statement{letter-spacing:-.025em;max-width:26ch;margin:0;font-size:clamp(1.6rem,3.6vw,2.9rem);font-weight:600;line-height:1.22}.teaser-main .statement{font-size:clamp(1.4rem,2.8vw,2.25rem)}.statement .w{transition:opacity .25s,color .25s}.statement .w.dim{opacity:.16}.statement .w.hl{color:var(--accent)}.teaser{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:center;gap:clamp(24px,5vw,72px);display:grid}.teaser-main{align-self:start;gap:clamp(28px,4vw,44px);display:grid}.teaser .lego{justify-self:center}.teaser-side{justify-items:start;gap:22px;display:grid}.teaser-side p{color:var(--muted);max-width:40ch;margin:0}.facts{border-top:1px solid var(--line);flex-wrap:wrap;gap:clamp(24px,5vw,72px);margin:clamp(40px,6vw,72px) 0 0;padding-top:28px;display:flex}.fact{gap:4px;display:grid}.fact dt{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:.72rem}.fact dd{margin:0;font-size:1.1rem;font-weight:600}.sub{max-width:58ch;color:var(--muted);margin:28px 0 0;font-size:1.05rem}.marquee{z-index:1;margin-top:clamp(16px,2vw,32px);padding-block:8px;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000);mask-image:linear-gradient(90deg,#0000,#000 12%,#000 88%,#0000)}.marquee+.marquee{margin-top:0}.track{will-change:transform;gap:32px;width:max-content;padding-right:32px;animation:168s linear infinite scroll;display:flex}.marquee.rev .track{animation-duration:200s;animation-direction:reverse}.marquee:hover .track{animation-play-state:paused}.logo-item{letter-spacing:-.02em;white-space:nowrap;color:var(--muted);align-items:center;gap:8px;font-size:clamp(.9rem,1.3vw,1.1rem);font-weight:600;transition:color .25s;display:inline-flex}.logo-item svg{fill:currentColor;width:1.1em;height:1.1em}.logo-item:hover{color:var(--ink)}.marquee.rev .logo-item{color:var(--faint);font-weight:500}.marquee.rev .logo-item svg{fill:currentColor}.marquee.rev .logo-item:hover{color:var(--accent)}.marquee.rev .logo-item:hover svg{fill:currentColor}@keyframes scroll{to{transform:translate(-50%)}}.pgrid{grid-template-columns:repeat(3,minmax(0,240px));justify-content:center;gap:clamp(16px,2vw,28px);margin-top:clamp(24px,4vh,48px);display:grid}.pcard{border:1px solid var(--line);background:var(--raise);color:inherit;transition:border-color .3s,transform .5s var(--ease);border-radius:14px;flex-direction:column;gap:14px;padding:10px 10px 18px;text-decoration:none;display:flex}.pcard:hover{border-color:var(--accent);transform:translateY(-3px)}.pcard .logo{padding:8px 8px 0;display:flex}.pcard .logo img{object-fit:contain;width:auto;max-width:100%;height:64px;transition:transform .5s var(--ease);transform-origin:0}.pcard:hover .logo img{transform:scale(1.06)}.pcard .meta,.pcard h3,.pcard p,.pcard .go{margin:0;padding-inline:8px}.pcard .go{font-family:var(--mono);color:var(--ink);align-items:center;gap:12px;margin-top:auto;padding-top:6px;font-size:.85rem;display:inline-flex}.pcard .go .arr{border:1px solid var(--line);width:30px;height:30px;transition:background .3s,border-color .3s,transform .45s var(--ease);border-radius:50%;place-items:center;display:inline-grid}.pcard:hover .go .arr{background:var(--accent);border-color:var(--accent);color:#fff;transform:translate(4px)}.sec-head>div{grid-area:1/1}.sec-head>p{grid-area:2/1}.sec-head>.pmore{grid-area:1/2/3;align-self:end}@media (prefers-reduced-motion:reduce){.pcard,.pcard .go .arr{transition:none}.pcard:hover,.pcard:hover .go .arr,.pcard:hover canvas,.pcard:hover .logo img{transform:none}}.art{aspect-ratio:2;background:var(--raise);border-radius:16px;max-width:100%;position:relative;overflow:hidden}.art canvas{width:100%;height:100%;transition:transform .8s var(--ease);position:absolute;top:0;right:0;bottom:0;left:0}.art img{object-fit:cover;object-position:top;width:100%;height:100%;position:absolute;top:0;right:0;bottom:0;left:0}.h-pop{vertical-align:middle;filter:brightness()drop-shadow(0 3px 4px #0006)drop-shadow(0 0 #0000);width:auto;height:1.2em;margin-left:.25em;display:inline-block;transform:scaleX(-1)}.h-pop:hover{filter:brightness(1.25)drop-shadow(0 3px 4px #0006)drop-shadow(0 0 12px #38bdf8);animation:.8s ease-in-out infinite popShine}@keyframes popShine{50%{filter:brightness(1.5)drop-shadow(0 3px 4px #0006)drop-shadow(0 0 18px #7dd3fc)}}.art.wip canvas{opacity:.35}.art-wip{z-index:1;white-space:nowrap;-webkit-backdrop-filter:blur(6px);color:#fff;font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;background:#0a0c10b8;border:1px solid #ffffff24;border-radius:999px;align-items:center;gap:10px;padding:10px 16px;font-size:.8rem;display:inline-flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.art-wip:before{content:"";background:var(--accent);border-radius:50%;width:8px;height:8px;animation:1.8s ease-in-out infinite wipPulse}@keyframes wipPulse{50%{opacity:.35;transform:scale(.7)}}.pcard:hover canvas,.prow:hover canvas{transform:scale(1.05)}.art.car{touch-action:pan-y;margin-bottom:40px}.art-track{height:100%;transform:translate(calc(var(--pos) * -100%));transition:transform .6s var(--ease);display:flex}.art-track.jump{transition:none}.art-track img{flex:none;position:static}.art-ctl{z-index:4;justify-content:center;align-items:center;display:flex;position:absolute;top:100%;left:0;right:0}.art-dots{display:flex}.art-dots button{cursor:pointer;background:0 0;border:0;width:24px;height:40px;padding:0;position:relative}.art-dots button:before{content:"";background:var(--faint);transition:background .3s,transform .3s var(--ease);border-radius:50%;position:absolute;top:16px;right:8px;bottom:16px;left:8px}.art-dots button[aria-current=true]:before{background:var(--ink);transform:scale(1.25)}.art-dots button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:12px}.art.win{--sh1:#000000f2;--sh2:#000c;--ring:#ffffff0d;background:0 0;border-radius:0;overflow:visible}:root[data-theme=light] .art.win{--sh1:#14182840;--sh2:#1418282e;--ring:transparent}@media (prefers-color-scheme:light){:root:not([data-theme=dark]) .art.win{--sh1:#14182840;--sh2:#1418282e;--ring:transparent}}.win-in{height:100%;box-shadow:0 30px 60px -12px var(--sh1),0 12px 24px -8px var(--sh2),0 0 0 1px var(--ring);border-radius:12px;display:grid;position:relative;overflow:hidden}.win-in:after{content:"";z-index:2;pointer-events:none;background:linear-gradient(160deg,#ffffff24,#ffffff0a 30%,#fff0 55%),linear-gradient(340deg,#ffffff24,#ffffff0a 22%,#fff0 40%);border-radius:12px;position:absolute;top:0;right:0;bottom:0;left:0}.win-view{min-height:0;position:relative}.art-arrow{width:40px;height:40px;color:var(--muted);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;transition:color .2s;display:grid}.art-arrow svg{width:24px;height:24px}.art-arrow:hover,.art-arrow:focus-visible{color:var(--ink)}.art-arrow:focus-visible{outline:2px solid var(--accent);outline-offset:-4px;border-radius:50%}@media (min-width:901px){.prow .art{--ar:min(44px,clamp(16px,4vw,48px))}.prow .art.car{margin-bottom:0}.prow .art-ctl{pointer-events:none;display:block;top:0;right:0;bottom:0;left:0}.prow .art-ctl>*{pointer-events:auto}.prow .art-arrow{position:absolute;top:50%;transform:translateY(-50%)}.prow .art-prev{left:calc(var(--ar) * -1)}.prow .art-next{right:calc(var(--ar) * -1)}.prow .art-dots{-webkit-backdrop-filter:blur(6px);background:#0a0c1099;border-radius:999px;padding:0 4px;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}.prow .art-dots button{width:22px;height:22px}.prow .art-dots button:before{background:#ffffff80;top:7px;right:7px;bottom:7px;left:7px}.prow .art-dots button[aria-current=true]:before{background:#fff}}.meta{font-family:var(--mono);color:var(--muted);letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;gap:12px;font-size:.74rem;display:flex}.meta .ex{color:var(--accent)}.pcard h3{letter-spacing:-.04em;align-items:center;font-size:clamp(1.25rem,1.6vw,1.5rem);line-height:1;transition:color .3s;display:flex}.pcard .h-pop{height:1em}.pcard:hover h3{color:var(--accent)}.pcard p{color:var(--muted)}.tags{font-family:var(--mono);color:var(--ink);font-size:.76rem}.tags span+span:before{content:" / ";color:var(--faint)}.voyages{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:clamp(24px,5vw,64px);display:grid}.sec-head+.voyages{margin-top:-56px}.trips{margin:0;padding:0;list-style:none}.trips li{border-bottom:1px solid var(--line);cursor:pointer;transition:padding .35s var(--ease);grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:14px;padding:10px 0;display:grid;position:relative}.trips li:hover{padding-left:10px}.trips b{letter-spacing:-.03em;color:var(--faint);font-size:clamp(1.05rem,1.5vw,1.3rem);font-weight:700;transition:color .3s}.trips li.on b,.trips li:hover b{color:var(--ink)}.trips small{color:var(--muted);font-size:.75rem;font-family:var(--mono);display:block}.trips li i{background:var(--accent);width:0;height:1px;position:absolute;bottom:-1px;left:0}.trips li.on i{animation:fill var(--dur,4s) linear forwards}.trips.stopped li.on i{width:100%;animation:none}@keyframes fill{to{width:100%}}.trips-foot{margin-top:28px}.stats{flex-wrap:wrap;gap:clamp(28px,6vw,96px);margin-top:clamp(48px,7vw,88px);display:flex}.stat b{letter-spacing:-.05em;font-variant-numeric:tabular-nums;font-size:clamp(2.6rem,6vw,4.6rem);font-weight:800;line-height:1;display:block}.stat span{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:.74rem}.filters{flex-wrap:wrap;gap:8px;margin-top:clamp(40px,6vw,64px);display:flex}.filter{font-family:var(--mono);border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:999px;padding:9px 16px;font-size:.8rem;transition:border-color .2s,color .2s,background .2s}.filter:hover{border-color:var(--faint)}.filter.on{background:var(--ink);border-color:var(--ink);color:var(--ground)}.filter sup{color:var(--accent);margin-left:4px;font-size:.62rem}section.school{padding-block:clamp(56px,7vw,96px) 0}.school-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:12px 24px;margin-bottom:clamp(18px,2.4vw,28px);display:flex}.school-head h2{letter-spacing:-.03em;margin:0;line-height:1.1}.school-head p{max-width:52ch;color:var(--muted);margin:0;font-size:.9rem;line-height:1.5}.school-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 40px;display:flex}.school-stats{flex-wrap:wrap;gap:8px clamp(24px,4vw,44px);margin:0;display:flex}.school-stats div{gap:2px;display:grid}.school-stats dt{font-family:var(--mono);color:var(--muted);text-transform:uppercase;letter-spacing:.08em;order:2;font-size:.74rem}.school-stats dd{font-family:var(--mono);margin:0;font-size:clamp(1.4rem,2.2vw,1.8rem);font-weight:700;line-height:1}.school-year{letter-spacing:-.02em;align-items:baseline;gap:14px;margin:clamp(24px,3vw,36px) 0 12px;font-size:1rem;display:flex}.school-year span{font-family:var(--mono);color:var(--muted);letter-spacing:.06em;font-size:.78rem;font-weight:400}.school-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(10px,1.4vw,16px);display:grid}.school-card{border:1px solid var(--line);background:var(--raise);border-radius:14px;align-content:start;gap:6px;padding:clamp(14px,1.8vw,20px);display:grid}.school-card h4{letter-spacing:-.03em;margin:0 0 4px;font-size:1.05rem}.school-card .label{font-family:var(--mono);color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin:8px 0 0;font-size:.7rem}.school-themes{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.school-themes li{font-family:var(--mono);border:1px solid var(--line);border-radius:999px;padding:4px 10px;font-size:.74rem}.school-project{color:var(--muted);margin:0;font-size:.92rem;line-height:1.5}.school-project b{color:var(--ink)}.school-rows{gap:8px;display:grid}.school-rows p{border:1px solid var(--line);border-radius:12px;margin:0;padding:10px 16px;font-size:.88rem}.school-rows span{color:var(--muted)}.school-rows i{color:var(--accent);margin-inline:6px;font-style:normal}.school-link{color:var(--ink);text-decoration:underline;-webkit-text-decoration-color:var(--faint);text-decoration-color:var(--faint);text-underline-offset:3px;font-weight:700;transition:color .2s,text-decoration-color .2s}.school-link:hover{color:var(--accent);-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.school-soon{font-family:var(--mono);color:var(--faint);letter-spacing:.06em;margin:16px 0 0;font-size:.72rem}.plist{gap:clamp(112px,14vw,200px);margin-top:clamp(48px,7vw,88px);display:grid}.prow{transition:opacity .5s,transform .6s var(--ease);grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:center;gap:clamp(24px,5vw,72px);scroll-margin-top:120px;display:grid}.prow:nth-child(odd){grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}.prow:nth-child(odd)>:first-child{order:2}.prow>.lego-slot{justify-items:center;display:grid}.prow .art{aspect-ratio:16/11;will-change:transform}.prow .art.win{aspect-ratio:16/10}.prow.out{opacity:0;pointer-events:none;visibility:hidden;position:absolute;transform:scale(.96)}.prow .body{align-content:start;gap:16px;display:grid}.prow .links{flex-wrap:wrap;gap:6px 22px;display:flex}.prow .links:has(>:only-child),.prow .links:empty{display:contents}.prow .num{font-family:var(--mono);color:#0000;-webkit-text-stroke:1px var(--faint);font-size:clamp(3rem,7vw,5.6rem);font-weight:700;line-height:1}.prow h3{letter-spacing:-.045em;margin:0;font-size:clamp(2rem,4.4vw,3.4rem);line-height:1}.prow p{color:var(--muted);max-width:48ch;margin:0}.kv{grid-template-columns:auto minmax(0,1fr);gap:8px 20px;margin:6px 0 0;font-size:.92rem;display:grid}.kv dt{font-family:var(--mono);color:var(--muted);text-transform:uppercase;letter-spacing:.08em;align-self:center;font-size:.74rem}.kv dd{margin:0}.tl{margin:0;padding:0 0 0 clamp(28px,5vw,64px);list-style:none;position:relative}.tl:before{content:"";background:var(--line);width:1px;position:absolute;top:10px;bottom:10px;left:6px}.tl .fill{background:var(--accent);width:1px;height:0;position:absolute;top:10px;left:6px}.tl li{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,200px) minmax(0,1fr);gap:clamp(12px,3vw,40px);padding-block:clamp(22px,3vw,34px);display:grid;position:relative}.tl li:before{content:"";background:var(--ground);border:1px solid var(--faint);border-radius:50%;width:11px;height:11px;transition:background .4s,border-color .4s,box-shadow .4s;position:absolute;top:clamp(30px,3.6vw,42px);left:calc(-1*clamp(28px,5vw,64px) + 1px)}.tl li.lit:before{background:var(--accent);border-color:var(--accent);box-shadow:0 0 0 5px var(--accent-soft)}.tl .when{font-family:var(--mono);color:var(--muted);padding-top:8px;font-size:.8rem}.tl li.now .when{color:var(--accent)}.tl h3{letter-spacing:-.035em;margin:0;font-size:clamp(1.5rem,3vw,2.3rem);line-height:1.05}.tl .org{font-family:var(--mono);color:var(--muted);margin-top:6px;font-size:.8rem}.tl p{color:var(--muted);max-width:56ch;margin:10px 0 0}.tl .tl-sub{gap:14px;max-width:56ch;margin:14px 0 0;padding:0;list-style:none;display:grid}.tl .tl-sub li{border:0;gap:0;padding:0;display:block}.tl .tl-sub li:before{content:none}.tl .tl-sub b{color:var(--ink);font-weight:600}.tl .tl-sub .when{margin-top:2px;padding:0;font-size:.74rem;display:block}.tl .tl-sub .desc{color:var(--muted);margin-top:3px;display:block}.tl .ex{font-family:var(--mono);color:var(--accent);text-transform:uppercase;letter-spacing:.08em;margin-left:8px;font-size:.68rem}.tl .kind{border:1px solid var(--line);font-family:var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);border-radius:999px;margin-bottom:10px;padding:3px 10px;font-size:.68rem;display:inline-block}.skills{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(20px,3vw,40px);display:grid}.skills h3{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line);margin:0;padding-bottom:12px;font-size:.72rem;font-weight:500}.skills ul{margin:0;padding:0;list-style:none}.skills li{transition:transform .3s var(--ease),color .2s;align-items:center;gap:12px;padding:10px 0;font-weight:500;display:flex}.skills li svg{width:18px;height:18px;fill:var(--muted);transition:fill .2s}.skills li:hover{color:var(--accent);transform:translate(8px)}.skills li:hover svg{fill:var(--accent)}.work-points{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px clamp(24px,3vw,40px);margin:clamp(32px,4vw,48px) 0 0;padding:0;list-style:none;display:grid}.work-points li{color:var(--muted);padding-left:18px;line-height:1.5;position:relative}.work-points li:before{content:"";background:var(--accent);opacity:.7;border-radius:50%;width:6px;height:6px;position:absolute;top:.62em;left:0}.flow{grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.flow li{text-align:center;flex-direction:column;align-items:center;gap:14px;padding-inline:8px;font-weight:500;line-height:1.25;display:flex;position:relative}.flow .node{width:64px;height:64px;color:var(--accent);fill:none;stroke:currentColor;stroke-width:1.2px;stroke-linecap:round;stroke-linejoin:round;flex:none}.flow .node>circle{fill:var(--accent-soft);stroke:var(--line)}.flow .node g{stroke-width:1.2px}.flow li:not(:last-child):after{content:"";border-top:1px dashed var(--faint);width:calc(100% - 92px);position:absolute;top:32px;left:calc(50% + 42px)}.flow .link{fill:none;width:8px;height:8px;stroke:var(--faint);stroke-width:1px;stroke-linecap:round;stroke-linejoin:round;position:absolute;top:28px;left:calc(150% - 50px)}.flow li:last-child .link{display:none}.flow-back{font-family:var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);align-items:center;gap:12px;margin:22px 0 0;font-size:.74rem;display:flex}.flow-back:before,.flow-back:after{content:"";border-top:1px dashed var(--line);flex:1}.flow-back svg{fill:none;width:16px;height:16px;stroke:var(--accent);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;order:1}.flow-back:after{order:2}.work-lang{margin:clamp(28px,4vw,44px) 0 0;font-size:.92rem}.work-lang span{font-family:var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-right:12px;font-size:.74rem}.passions{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.next{isolation:isolate;margin-top:clamp(64px,8vw,104px);padding:clamp(22px,3vw,34px) clamp(24px,2.5vw,32px);text-decoration:none;display:block;position:relative;overflow:hidden}.next:before{content:"";background:var(--accent);transition:transform .6s var(--ease);z-index:-1;position:absolute;top:0;right:0;bottom:0;left:0;transform:translateY(101%)}.next:hover:before{transform:none}.next small{font-family:var(--mono);color:var(--muted);font-size:.78rem;transition:color .3s}.next strong{letter-spacing:-.03em;justify-content:space-between;align-items:center;gap:20px;margin-top:6px;font-size:clamp(1.5rem,3.4vw,2.4rem);font-weight:700;line-height:1;display:flex}.next strong span{transition:transform .6s var(--ease)}.next:hover,.next:hover small{color:#fff}.next:hover strong span:last-child{transform:translate(12px)rotate(-45deg)}section.block.contact{text-align:center;padding-block:clamp(110px,15vw,190px) 72px}.contact .path{justify-content:center}.contact .path:after{display:none}.contact h2{letter-spacing:-.045em;line-height:.92}.contact h2 .l{transition:transform .4s var(--ease),color .3s;display:inline-block}.contact h2 .l.up{color:var(--accent);transform:translateY(-.12em)}.contact p{color:var(--muted);max-width:44ch;margin:24px auto 34px}.contact .row{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}footer{z-index:1;border-top:1px solid var(--line);font-family:var(--mono);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:clamp(64px,8vw,96px);padding-block:20px 90px;font-size:.74rem;display:flex;position:relative}.contact+footer{margin-top:0}@media (max-width:900px){.hero{grid-template-columns:minmax(0,1fr);align-content:center;gap:8px;padding-block:80px 32px}.hero .globe{max-width:min(400px,40svh)}.hero .pitch{margin-top:24px}.globe{max-width:400px}.scroll-cue{display:none}.voyages,.teaser,.prow,.prow:nth-child(odd),.school-cards{grid-template-columns:minmax(0,1fr)}.prow{row-gap:16px}.prow .body{display:contents}.prow>:first-child,.prow:nth-child(odd)>:first-child{order:1;margin-top:8px}.prow>.lego-slot{margin-bottom:4px}.prow .kv,.prow .links,.prow .links>*{order:2}.top nav{display:none}.skills{grid-template-columns:repeat(2,minmax(0,1fr))}.tl li{grid-template-columns:minmax(0,1fr);gap:4px}.tl .when{padding-top:0}.pgrid{grid-template-columns:minmax(0,320px)}.pcard{max-width:640px}.sec-head{grid-template-columns:minmax(0,1fr)}.sec-head>.pmore{grid-area:3/1;justify-self:start}.sec-head+.voyages{margin-top:-24px}}@media (max-width:620px){.passions{grid-template-columns:repeat(2,minmax(0,1fr))}.icon{width:32px;height:32px;margin:-16px 0 0 -16px}.skills{gap:20px 16px}.skills h3{letter-spacing:.08em;padding-bottom:8px;font-size:.66rem}.skills li{overflow-wrap:anywhere;align-items:flex-start;gap:7px;padding:5px 0;font-size:.82rem;line-height:1.3}.skills li svg{flex:none;width:14px;height:14px;margin-top:.15em}.skills li:hover{transform:none}.flow,.work-points{grid-template-columns:minmax(0,1fr)}.flow{gap:30px}.flow li{text-align:left;flex-direction:row;gap:16px;padding-inline:0}.flow .node{width:48px;height:48px}.flow li:not(:last-child):after{border-top:0;border-left:1px dashed var(--faint);width:0;height:22px;top:52px;left:24px}.flow .link{top:64px;left:20px;transform:rotate(90deg)}}@media (max-width:640px){.work-lang{flex-direction:column;gap:6px;display:flex}.work-lang span{margin-right:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}html{scroll-behavior:auto}.js .split:not(.in) .w,.js .sec-head:not(.in) p,.js .rise:not(.in){opacity:1;filter:none;transform:none}.art-wip:before{animation:none}}.flag{border-radius:2px;display:block;box-shadow:0 1px 3px #00000059}.trips .fl{align-self:center}.board{isolation:isolate;background:radial-gradient(120% 90% at 30% 0%,var(--accent),var(--raise) 60%);border-radius:26px;height:clamp(240px,24vw,320px);position:relative;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.board{background:radial-gradient(120% 90% at 30% 0%,color-mix(in srgb,var(--accent) 10%,var(--raise)),var(--raise) 60%)}}.board{border:1px solid var(--line);box-shadow:inset 0 1px #ffffff0a,var(--shadow);touch-action:pan-y}.board:before{content:"";z-index:-1;opacity:.5;background-image:radial-gradient(var(--line) 1px,transparent 1.2px);background-size:22px 22px;position:absolute;top:0;right:0;bottom:0;left:0}.board .mark{font-family:var(--script);color:var(--line);pointer-events:none;z-index:-1;-webkit-user-select:none;user-select:none;font-size:clamp(3rem,7vw,5.5rem);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.sticker{width:var(--w,15%);cursor:grab;touch-action:pan-y;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;transform:rotate(calc(var(--r,0deg) + var(--tilt,0deg))) scale(var(--s,1));transition:transform .4s var(--ease),filter .3s,opacity .4s;filter:drop-shadow(0 6px 10px #00000059);will-change:transform;position:absolute}.sticker img{pointer-events:none;-webkit-user-drag:none;width:100%;height:auto;display:block}.sticker:hover{--s:1.07;filter:drop-shadow(0 14px 22px #0006)}.sticker:hover img{animation:.5s ease-in-out wiggle}.sticker.dragging{cursor:grabbing;--s:1.14;filter:drop-shadow(0 24px 30px #00000073);transition:filter .3s}.sticker.moving{transition:left .65s var(--ease),top .65s var(--ease),transform .65s var(--ease)}.sticker.slap img{animation:slap .5s var(--ease)}.js .sticker.wait{opacity:0;--s:1.6}.sticker .lab{font-family:var(--mono);white-space:nowrap;background:var(--ink);color:var(--ground);opacity:0;pointer-events:none;transition:opacity .2s,transform .2s var(--ease);border-radius:999px;padding:3px 9px;font-size:.68rem;position:absolute;top:100%;left:50%;transform:translate(-50%,4px)}.sticker:hover .lab{opacity:1;transform:translate(-50%,8px)}.sticker.dragging .lab{opacity:0}@keyframes wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-6deg)}75%{transform:rotate(5deg)}}@keyframes slap{0%{transform:scale(1.25)}60%{transform:scale(.94)}to{transform:scale(1)}}.stk-wrap{grid-template-columns:minmax(0,.75fr) minmax(0,1.6fr);align-items:center;gap:clamp(24px,4vw,56px);display:grid}.stk-side{justify-items:start;gap:16px;display:grid}.stk-side p{color:var(--muted);max-width:34ch;margin:0}.stk-side .acts{flex-wrap:wrap;gap:10px;display:flex}.stk-side .hint{font-family:var(--mono);color:var(--muted);font-size:.74rem}@media (max-width:900px){.stk-wrap{grid-template-columns:minmax(0,1fr)}}@media (max-width:620px){.board{height:max(320px,80vw)}.sticker{width:calc(var(--w) * 1.5)}}@media (prefers-reduced-motion:reduce){.js .sticker.wait{opacity:1;--s:1}}@media (max-width:900px){.hero{align-content:center;min-height:100svh;padding-block:84px 40px}.hero-text{z-index:1;position:relative}.hero .globe{opacity:.28;pointer-events:none;width:min(105vw,560px);max-width:none;margin-top:calc(min(105vw,560px)/-2);position:absolute;top:50%;right:-22%}.hero .pitch{margin-top:28px}}@media (max-width:420px){.name{font-size:clamp(2.6rem,13vw,3.4rem)}.role{font-size:1.05rem}.hero-cta .btn{padding:11px 14px}.hero .globe{right:-35%}}@media (min-width:901px) and (max-height:760px){.hero{padding-block:76px 28px}.name{margin-block:8px 12px;font-size:clamp(2.8rem,min(7.6vw,11.5vh),6.2rem)}.role{margin-top:8px}.pitch{margin:22px 0 8px}.hero-cta{margin-top:20px}.hero .bar{margin-bottom:14px}.scroll-cue{display:none}}@media (min-width:1800px){.wrap{max-width:1440px}}html,.page-hero{overflow-x:clip}.tl li.fill{border:0;gap:0;padding:0;display:block}.tl li.fill:before{display:none}.page-hero .portrait{background:var(--raise);border:1px solid var(--line);z-index:1;will-change:transform;backface-visibility:hidden;border-radius:26px;width:clamp(190px,23vw,300px);margin:0;padding:10px;position:absolute;top:clamp(130px,15vw,200px);right:clamp(40px,10vw,150px);transform:rotate(2deg);box-shadow:0 30px 60px -30px #00000059}.page-hero .portrait:before{content:"";border:1.5px solid var(--accent);opacity:.55;z-index:-1;will-change:transform;border-radius:30px;transition:transform .7s cubic-bezier(.34,1.4,.64,1);position:absolute;top:-9px;right:-9px;bottom:9px;left:9px}.page-hero .portrait:hover:before{transform:translate(6px,6px)rotate(-3deg)}@media (prefers-reduced-motion:reduce){.page-hero .portrait:before{transition:none}}.page-hero .portrait img{aspect-ratio:640/675;object-fit:cover;opacity:0;border-radius:18px;width:100%;height:auto;transition:opacity .6s;display:block}.page-hero .portrait img.ready{opacity:1}@media (max-width:900px){.page-hero .portrait{width:min(210px,52vw);margin:32px 12px 0 auto;position:relative;top:auto;right:auto}}@media (max-width:620px){.page-hero:has(>.portrait){grid-template-columns:minmax(0,1fr) 116px;align-items:start;column-gap:16px;display:grid}.page-hero:has(>.portrait)>.ghost{font-size:5.5rem;top:150px;right:156px}.page-hero:has(>.portrait)>.path{grid-area:1/1}.page-hero:has(>.portrait)>.title{grid-area:2/1}.page-hero:has(>.portrait)>.lede{grid-area:3/1/auto/-1;max-width:none;margin-top:20px}.page-hero .portrait{border-radius:18px;grid-area:1/2/3;width:auto;margin:0 7px 0 0;padding:6px}.page-hero .portrait:before{border-radius:21px;top:-6px;right:-6px;bottom:6px;left:6px}.page-hero .portrait img{border-radius:13px}}.cert-link{font:inherit;font-family:var(--mono);color:var(--muted);text-decoration:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:4px;cursor:pointer;background:0 0;border:0;padding:0;font-size:.78rem;transition:color .2s;display:inline}.cert-link:hover{color:var(--ink)}.cert-link:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}.cert-link.in-tl{margin-top:12px;display:block}.work-lang .cert-link{white-space:nowrap;margin-left:10px}.certs{border:1px solid var(--line);background:var(--ground);width:min(92vw,720px);max-width:none;max-height:min(86svh,820px);color:var(--ink);animation:lb-in .3s var(--ease);border-radius:20px;margin:auto;padding:0;overflow:auto;box-shadow:0 40px 90px -30px #0000008c}.certs::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#08090cb8}.certs-in{padding:0 clamp(18px,4vw,30px) clamp(18px,4vw,30px)}.certs-head{z-index:1;background:var(--ground);justify-content:space-between;align-items:center;gap:16px;padding:clamp(18px,4vw,30px) 0 10px;display:flex;position:sticky;top:0}.certs section{scroll-margin-top:84px}.certs-head h2{letter-spacing:-.03em;margin:0;font-size:clamp(1.2rem,3vw,1.5rem)}.certs-close{border:1px solid var(--line);width:40px;height:40px;color:var(--muted);cursor:pointer;background:0 0;border-radius:50%;flex:none;place-items:center;font-size:.95rem;transition:background .2s,color .2s;display:grid}.certs-close:hover{background:var(--raise);color:var(--ink)}.certs-close:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.certs h3{font-family:var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:26px 0 12px;font-size:.74rem;font-weight:500}.certs-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:14px;margin:0;padding:0;list-style:none;display:grid}.certs-grid button{width:100%;color:inherit;text-align:left;cursor:zoom-in;background:0 0;border:0;gap:8px;padding:0;display:grid}.certs-grid img{aspect-ratio:3/4;object-fit:cover;border:1px solid var(--line);width:100%;height:auto;transition:transform .35s var(--ease),border-color .2s;background:#fff;border-radius:10px;display:block}.certs-grid button:hover img{border-color:var(--accent);transform:translateY(-3px)}.certs-grid button:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:10px}.certs-grid span{color:var(--muted);font-size:.8rem;line-height:1.3}.lb-doc .lb-fig img{background:#fff;max-width:min(92vw,880px);max-height:78svh}.lb-doc .lb-fig figcaption{text-align:center;padding-inline:56px}.lightbox{z-index:80;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:zoom-out;background:#08090cd1;place-items:center;animation:.25s ease-out lb-fade;display:grid;position:fixed;top:0;right:0;bottom:0;left:0}@keyframes lb-fade{0%{opacity:0}}.lb-fig{cursor:default;flex-direction:column;align-items:center;gap:10px;margin:0;display:flex}.lb-fig img{width:auto;max-width:min(88vw,720px);height:auto;max-height:82svh;animation:lb-in .35s var(--ease);border-radius:16px;display:block;box-shadow:0 30px 80px -20px #0009}@keyframes lb-in{0%{opacity:0;transform:scale(.97)}}.lb-fig figcaption{font-family:var(--mono);color:#c9ccd6;font-size:.78rem}.lb-btn{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff2e;border-radius:50%;place-items:center;width:44px;height:44px;font-size:1.3rem;line-height:1;transition:background .2s;display:grid;position:absolute}.lb-btn:hover{background:#ffffff2e}.lb-btn:focus-visible{outline-offset:3px;outline:2px solid #fff}.lb-close{font-size:1rem;top:18px;right:18px}.lb-prev{margin-top:-22px;top:50%;left:clamp(10px,3vw,36px)}.lb-next{margin-top:-22px;top:50%;right:clamp(10px,3vw,36px)}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.vglobe{transform-origin:0 0;width:min(100%,72svh,760px);margin:clamp(40px,6vw,72px) auto 0;position:relative}.vglobe.is-zoomed .earth canvas{touch-action:none;left:calc(50% - var(--zw,100vw) / 2);width:var(--zw,100vw);right:auto}.vglobe.is-mini,.earth-mini-slot{width:88px;margin:0;position:fixed;top:70px;right:clamp(16px,4vw,48px)}.vglobe.is-mini{z-index:50}.earth-mini-slot{aspect-ratio:1;visibility:hidden;pointer-events:none}.earth-back{cursor:pointer;background:0 0;border:0;border-radius:50%;padding:0;position:absolute;top:0;right:0;bottom:0;left:0}.earth-back:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.voy-top{display:block}.voy-top.is-mini .page-hero{display:none}.voy-left{min-width:0}.chips{margin-top:40px}.chips ul{flex-flow:wrap;align-items:flex-start;gap:10px 32px;margin:0;padding:0;list-style:none;display:flex}.chip{min-height:30px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:0;align-items:center;gap:0;padding:4px 0;font-size:.95rem;transition:color .2s;display:inline-flex}.chip:hover,.chip:focus-visible{color:var(--ink);text-decoration:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:5px}.chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.chip.last{color:var(--ink)}.chip[aria-disabled=true]{cursor:default}.trip{margin-top:72px;scroll-margin-top:90px}.trip-hero{isolation:isolate;padding-bottom:28px;position:relative}.trip-bg{--bg-o:.16;z-index:-1;pointer-events:none;width:100vw;margin-left:-50vw;position:absolute;top:-150px;bottom:-60px;left:50%;overflow:hidden;-webkit-mask-image:linear-gradient(#0000,#000 28% 62%,#0000);mask-image:linear-gradient(#0000,#000 28%,#000 62%,#0000)}.trip-bg-kb{animation:trip-kb-a var(--kb,30s) ease-in-out infinite alternate;will-change:transform;animation-play-state:paused;position:absolute;top:0;right:0;bottom:0;left:0}.trip-bg.vis .trip-bg-kb{animation-play-state:running}.trip-bg img{object-fit:cover;filter:blur(1.5px)saturate(1.1);opacity:0;will-change:transform;width:100%;max-width:none;height:144%;transition:opacity 1.6s var(--ease),scale 2.4s var(--ease);position:absolute;top:-22%;left:0;scale:1.07}.trip-bg img.on{opacity:var(--bg-o);scale:1}.trip-bg:after{content:"";background:linear-gradient(90deg,var(--ground) 0,transparent 55%);opacity:.55;position:absolute;top:0;right:0;bottom:0;left:0}@keyframes trip-kb-a{0%{transform:scale(1.06)translate(0)}to{transform:scale(1.14)translate(-2%,-1.2%)}}:root[data-theme=light] .trip-bg{--bg-o:.1}@media (prefers-color-scheme:light){:root:not([data-theme=dark]) .trip-bg{--bg-o:.1}}.trip-bg.still .trip-bg-kb{animation:none}.trip-credit{font:500 .66rem var(--mono);color:var(--muted);opacity:.75;margin:0;position:absolute;bottom:0;right:0}.trip-map>.trip-credit{text-align:center;margin:4px 0 0;position:static}.trip-credit a{color:inherit;text-decoration:none}.trip-credit a:hover,.trip-credit a:focus-visible{color:var(--ink);text-decoration:underline}.trip-head{grid-template-columns:minmax(0,1fr) minmax(0,560px);align-items:center;gap:clamp(16px,2.5vw,32px);display:grid}.trip-title{align-items:center;gap:clamp(12px,1.6vw,20px);margin:14px 0 4px;display:flex}.trip h2{letter-spacing:-.05em;margin:0;font-size:clamp(2.4rem,5.4vw,4.4rem);font-weight:800;line-height:.95}.trip h2:focus{outline:none}.trip-country{color:var(--muted);margin:0}.trip-facts{flex-wrap:wrap;gap:8px;margin:18px 0 0;padding:0;list-style:none;display:flex}.trip-facts li{border:1px solid var(--line);background:var(--raise);border-radius:999px;padding:4px 11px}@supports (color:color-mix(in lab,red,red)){.trip-facts li{background:color-mix(in srgb,var(--raise) 70%,transparent)}}.trip-facts li{font:500 .74rem var(--mono);color:var(--muted)}.trip-note{text-wrap:pretty;max-width:58ch;margin:22px 0 0;font-size:1.05rem;line-height:1.65}.trip-ch{margin-top:clamp(72px,9vw,120px)}.trip-ch .sec-head{margin-bottom:clamp(20px,3vw,36px)}.trip-ch .sec-head h3{letter-spacing:-.045em;margin:12px 0 0;font-size:clamp(1.7rem,3vw,2.5rem);font-weight:800;line-height:1}.trip-ch .desk{margin-top:0}.voy-amb{z-index:-1;pointer-events:none;--ha:.08;position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden}.voy-amb i{background:radial-gradient(closest-side,var(--c),transparent);width:70vmax;height:70vmax;opacity:var(--ha);will-change:transform;border-radius:50%;animation:52s ease-in-out infinite alternate amb-a;position:absolute}.voy-amb i:first-child{--c:var(--accent);top:-26vmax;left:-28vmax}.voy-amb i:nth-child(2){--c:var(--accent);animation-name:amb-b;animation-duration:61s;top:18vh;right:-30vmax}.voy-amb i:nth-child(3){--c:var(--accent)}@supports (color:color-mix(in lab,red,red)){.voy-amb i:nth-child(3){--c:color-mix(in srgb,var(--accent) 60%,#8fb3ff)}}.voy-amb i:nth-child(3){opacity:calc(var(--ha)*.6);animation-name:amb-c;animation-duration:43s;bottom:-46vmax;left:18vw}.voy-amb:after{content:"";opacity:.045;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .9 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;top:0;right:0;bottom:0;left:0}@keyframes amb-a{to{transform:translate(14vw,10vh)scale(1.15)}}@keyframes amb-b{to{transform:translate(-12vw,-8vh)scale(.9)}}@keyframes amb-c{to{transform:translate(-10vw,-14vh)scale(1.1)}}:root[data-theme=light] .voy-amb{--ha:.05}:root[data-theme=light] .voy-amb:after{opacity:.03;filter:invert()}@media (prefers-color-scheme:light){:root:not([data-theme=dark]) .voy-amb{--ha:.05}:root:not([data-theme=dark]) .voy-amb:after{opacity:.03;filter:invert()}}@media (max-width:900px){.voy-amb i{will-change:auto;animation:none}.voy-amb:after{display:none}}@media (prefers-reduced-motion:reduce){.voy-amb i{animation:none}.trip-bg img{transition:none;scale:1}.trip-bg-kb{animation:none}}.vmenu{z-index:35;border:1px solid var(--line);background:var(--raise);border-radius:12px;max-width:calc(100vw - 16px);padding:4px;display:grid;position:fixed}@supports (color:color-mix(in lab,red,red)){.vmenu{background:color-mix(in srgb,var(--raise) 88%,transparent)}}.vmenu{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transform-origin:12px 0;animation:vmenu-in .16s var(--ease);box-shadow:0 10px 28px -14px #00000059}.vmenu:before{content:"";background:var(--raise);border:solid var(--line);border-width:1px 0 0 1px;border-radius:2px 0 0;width:6px;height:6px;position:absolute;top:-4px;left:9px;transform:rotate(45deg)}.vitem{min-height:30px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;padding:0 12px;font-size:.82rem;transition:background .15s;display:flex}@media (max-width:900px){.vitem{min-height:36px}}.vitem:after{content:"→";opacity:0;width:0;color:var(--accent);order:3;transition:opacity .15s,width .15s;overflow:hidden}.vitem:hover,.vitem:focus-visible{background:var(--accent-soft)}.vitem:hover:after,.vitem:focus-visible:after{opacity:1;width:1em}.vitem:focus-visible{outline:1px solid var(--accent);outline-offset:-1px}@keyframes vmenu-in{0%{opacity:0;transform:translateY(4px)scale(.96)}}@media (prefers-reduced-motion:reduce){.vmenu{animation:none}.vitem,.vitem:after{transition:none}}.vglobe .zoom{right:18px;bottom:calc(76px + env(safe-area-inset-bottom,0px));z-index:30;gap:8px;display:grid;position:fixed}.vglobe .zoom button{border:1px solid var(--line);background:var(--raise);width:44px;height:44px;color:var(--ink);font:500 1.2rem/1 var(--mono);cursor:pointer;border-radius:50%;transition:background .2s}.vglobe .zoom button:hover{background:var(--accent-soft)}.vglobe .zoom button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.vglobe .zoom button[aria-disabled]{opacity:.4;cursor:default}@media (min-width:901px){.voy-top{--g:min(760px, calc(40svh + 300px) );grid-template-columns:minmax(0,1fr) minmax(0,min(calc(var(--g) - 60px),100%));align-items:start;column-gap:clamp(24px,4vw,64px);display:grid}.voy-top.is-mini{display:block}.voy-top .vglobe{width:calc(100% + 60px);margin:clamp(70px,526px - 23.75vw,190px) -60px 0 auto}@media (max-height:1100px){.voy-top .vglobe{margin-top:max(70px,10svh)}}@media (max-height:900px){.voy-top .page-hero{padding-top:130px}.voy-top .stats{margin-top:64px}.voy-top .chips{margin-top:32px}}.voy-top .vglobe.is-mini{width:88px;margin:0}.trip-head{padding-top:56px}}@media (max-width:900px){.voy-top{flex-direction:column;display:flex;position:relative}.voy-left{display:contents}.voy-top .page-hero{padding-top:96px}.voy-top .page-hero .ghost{display:none}.voy-top .page-hero .lede{margin-top:10px;font-size:1rem}.stats{gap:0;margin-top:16px}.stat{font:500 .8rem var(--mono);color:var(--muted);align-items:baseline;gap:.4em;display:inline-flex}.stat+.stat:before{content:"·";margin:0 .7em}.stat b{font:inherit;letter-spacing:0;color:var(--ink);display:inline}.stat span{font:inherit;letter-spacing:0;text-transform:none;color:inherit}.stat-more{display:none}.vglobe{align-self:center;width:min(100vw,72svh);margin:8px 0 0}.earth-mini-slot{display:none}.vglobe.is-mini{z-index:1;width:64px;margin:0;position:absolute;top:88px;right:0}.trip{margin-top:88px}.trip-back,.trip-title,.trip-country{padding-right:76px}.chips{order:3;margin-top:12px}.chips ul{flex-flow:column;align-items:stretch;gap:0;padding:0}.chips li{border-bottom:1px solid var(--line);display:block}.chip{width:100%;min-height:48px;color:var(--ink);letter-spacing:-.03em;text-align:left;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;column-gap:14px;padding:0 64px 0 0;font-size:1.05rem;font-weight:700;display:grid}.chip small{font:400 .75rem var(--mono);letter-spacing:0;color:var(--muted);display:block}.chip .chip-go{color:var(--accent)}.trip-head{grid-template-columns:minmax(0,1fr)}}.chip .flag,.chip small,.chip .chip-go{display:none}@media (max-width:900px){.chip .flag,.chip small,.chip .chip-go{display:block}}.trip-back{min-height:44px;color:var(--muted);font:500 .8rem var(--mono);cursor:pointer;background:0 0;border:0;align-items:center;padding:0;display:inline-flex}.trip-back:hover,.trip-back:focus-visible{color:var(--ink)}.trip-back:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (min-width:901px){.trip-back{display:none}}@media (hover:none) and (pointer:coarse){.vglobe .zoom{display:none}.vglobe.is-zoomed .earth canvas{touch-action:pan-y}.vitem:after{opacity:1;width:1em}}.trip-map{justify-self:start;width:min(100%,440px);min-width:0}.minimap-box{--sh:.4;filter:drop-shadow(0 6px 8px rgb(0 0 0/var(--sh))) drop-shadow(0 1px 2px rgb(0 0 0/var(--sh)));transition:filter .3s;animation:.45s cubic-bezier(.2,.7,.2,1) backwards mm-in;position:relative}.minimap-tilt{transition:transform .3s cubic-bezier(.2,.7,.2,1);position:absolute;top:0;right:0;bottom:0;left:0;transform:translateY(0)rotate(-4deg)}@media (hover:hover){.minimap-box:hover{filter:drop-shadow(0 12px 12px rgb(0 0 0/var(--sh))) drop-shadow(0 1px 2px rgb(0 0 0/var(--sh)))}.minimap-box:hover .minimap-tilt{transform:perspective(900px) translateY(-4px) rotate(-4deg) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg))}}@keyframes mm-in{0%{opacity:0;scale:.97}}.minimap-layer{filter:brightness(.9)saturate(1.1)contrast(1.05);display:block;position:absolute;top:0;right:0;bottom:0;left:0}.minimap-bg{fill:var(--raise-2)}:root[data-theme=light] .minimap-layer{filter:saturate(1.25)contrast(1.06)}:root[data-theme=light] .minimap-box{--sh:.22}@media (prefers-color-scheme:light){:root:not([data-theme=dark]) .minimap-layer{filter:saturate(1.25)contrast(1.06)}:root:not([data-theme=dark]) .minimap-box{--sh:.22}}.minimap-pin{background:var(--accent);border:2px solid var(--raise);width:22px;height:22px;color:var(--raise);font:600 .68rem var(--mono);border-radius:50%;place-items:center;margin:-11px 0 0 -11px;transition:width .2s,height .2s,margin .2s,transform .2s;display:grid;position:absolute}.minimap-pin:hover{transform:scale(1.12)}.minimap-pin.on{z-index:1;width:30px;height:30px;margin:-15px 0 0 -15px;animation:.35s cubic-bezier(.3,1.6,.5,1) mm-pop}@keyframes mm-pop{0%{scale:.8}}.minimap-tack{pointer-events:none;--sh:.3;--pin:38px;width:0;height:0;position:absolute}:root[data-theme=light] .minimap-tack{--sh:.5}@media (prefers-color-scheme:light){:root:not([data-theme=dark]) .minimap-tack{--sh:.5}}.minimap-tack-img{left:calc(var(--pin)*-.09);top:calc(var(--pin)*-.887);width:var(--pin);height:var(--pin);transform-origin:9% 88.7%;max-width:none;transition:transform .3s cubic-bezier(.2,.7,.2,1);animation:.6s linear backwards mm-tack-drop;display:block;position:absolute}.minimap-tack-shadow{left:calc(var(--pin)*-.06);top:calc(var(--pin)*-.07);width:calc(var(--pin)*.85);height:calc(var(--pin)*.2);background:radial-gradient(closest-side at 18% 50%,rgb(0 0 0/calc(var(--sh)*1.7)),rgb(0 0 0/calc(var(--sh)*.8)) 45%,transparent);filter:blur(1px);transform-origin:8%;border-radius:50%;transition:transform .3s cubic-bezier(.2,.7,.2,1),opacity .3s;animation:.6s ease-out backwards mm-tack-sh;position:absolute;rotate:14deg}@keyframes mm-tack-drop{0%{opacity:0;animation-timing-function:cubic-bezier(.5,0,.9,.6);transform:translateY(-24px)}18%{opacity:1}55%{animation-timing-function:cubic-bezier(.2,.6,.4,1);transform:translateY(0)scaleY(.94)}72%{animation-timing-function:cubic-bezier(.5,0,.9,.6);transform:translateY(-5px)}87%{animation-timing-function:cubic-bezier(.2,.6,.4,1);transform:translateY(0)}94%{animation-timing-function:cubic-bezier(.5,0,.9,.6);transform:translateY(-1.5px)}to{transform:translateY(0)}}@keyframes mm-tack-sh{0%{opacity:0;transform:scale(.25)}55%{opacity:1;transform:scale(1)}72%{opacity:1;transform:scale(.85)}87%{opacity:1;transform:scale(1)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.minimap-box{transition:none;animation:none}.minimap-tilt,.minimap-box:hover .minimap-tilt{transition:none;transform:rotate(-4deg)}.minimap-pin,.minimap-pin.on{transition:none;animation:none}.minimap-pin:hover{transform:none}.minimap-tack-img,.minimap-tack-shadow{transition:none;animation:none}}.minimap-osm{width:max-content;color:var(--muted);font:500 .68rem var(--mono);margin:6px auto 0;padding:4px 2px;transition:color .2s;display:block}.minimap-osm:hover{color:var(--ink)}@media (max-width:900px){.trip-map{width:100%;max-width:560px;min-height:calc(min(110vw - 35.2px,450px) + 48px)}}.bro{--p:.41cqw;--bp:var(--obj-paper);--bk:var(--obj-ink);--bb:var(--obj-blue);--by:var(--obj-tint);--serif:Georgia,"Times New Roman",serif;isolation:isolate;perspective:1800px;perspective-origin:50% 10%;max-width:720px;margin:0;padding-bottom:34px;position:relative}.bro-fold{aspect-ratio:360/772;width:33.3333%;transform-style:preserve-3d;pointer-events:none;transition:transform .3s var(--ease);position:relative}.bro:not(.is-open) .bro-fold:hover{transform:translateY(-3px)}.bro-p{width:100%;height:100%;transform-style:preserve-3d;transform-origin:0;transition:transform .6s var(--ease);position:absolute;top:0;left:0}.bro-p2,.bro-p3,.bro-p4{left:100%}.bro-p1{transform:rotateY(16deg)}.bro-p2{transform:rotateY(174deg)}.bro-p3{transform:rotateY(-172deg)}.bro-p4{transform:rotateY(172deg)}.bro-p2{visibility:hidden;transition:transform .6s var(--ease),visibility 0s .6s}.bro.is-open .bro-p2{visibility:visible;transition-delay:0s}.bro:not(.is-open) .bro-fold:hover .bro-p1{transform:rotateY(4deg)translateZ(16px)}.bro:not(.is-open) .bro-fold:hover .bro-p2{transform:rotateY(158deg)}.bro.is-open .bro-p1{transform:rotateY(34deg)}.bro.is-open .bro-p2,.bro.is-open .bro-p4{transform:rotateY(-68deg)}.bro.is-open .bro-p3{transform:rotateY(68deg)}.bro-face{pointer-events:auto;backface-visibility:hidden;background:var(--bp);color:var(--bk);box-shadow:var(--obj-shadow);border-radius:2px;position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;container-type:inline-size}.bro-back{background:linear-gradient(90deg,#00000024,transparent 30%),var(--bp);transform:rotateY(180deg)}.bro-front:after{content:"";z-index:2;pointer-events:none;transition:background-color .6s var(--ease);background:linear-gradient(90deg,#0000001a,#0000 14%,#0000 88%,#00000014);position:absolute;top:0;right:0;bottom:0;left:0}.bro.is-open .bro-p2>.bro-front:after{background-color:#00000014}.bro-front:before{content:"";z-index:2;pointer-events:none;opacity:0;background:var(--sh);transition:opacity .6s var(--ease);position:absolute;top:0;right:0;bottom:0;left:0}.bro.is-open .bro-front:before{opacity:1}.bro-p1>.bro-front{--sh:linear-gradient(90deg,#ffffff1a,transparent 30%,transparent 62%,#00000038)}.bro-p2>.bro-front{--sh:linear-gradient(90deg,#00000042,#0000001a 22%,#0000000d 80%,#ffffff1a)}.bro-p3>.bro-front{--sh:linear-gradient(90deg,#ffffff1f,transparent 25%,transparent 60%,#00000042)}.bro-p4>.bro-front{--sh:linear-gradient(90deg,#00000047,#0000001f 24%,#00000012 85%,#0000001a)}.bro-cover{padding:calc(16*var(--p)) 0 0;flex-direction:column;display:flex;container-type:inline-size}.bro-title{padding:0 calc(14*var(--p));flex-direction:column;display:flex}.bro-title b{font:600 min(19cqw,calc(124cqw/var(--n)))/1 var(--sans);letter-spacing:.03em;text-align:center;text-transform:uppercase;white-space:nowrap;color:var(--bb);transform-origin:50% 0;margin-bottom:.62em;display:block;transform:scaleY(1.62)}.bro-title i{font:italic 400 min(6.4cqw,1.2rem)/1.2 var(--serif);color:var(--bk);align-self:flex-end;margin-right:4cqw}.bro-art{flex:1;width:100%;min-height:0;display:block}.bro-frame{margin-top:calc(4*var(--p));-webkit-mask-image:radial-gradient(62% 56%,#000 62%,#0000 100%);mask-image:radial-gradient(62% 56%,#000 62%,#0000)}.bro-frame,.bro-vign{mix-blend-mode:multiply}.bro-x{position:relative}.bro-x img{object-fit:cover;width:100%;height:100%;position:absolute;top:0;right:0;bottom:0;left:0}.bro-ph{filter:grayscale()contrast(.8)opacity(.35);transform:scale(1.08)}.bro-sk{animation:.3s both bro-in}@keyframes bro-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.bro-sk{animation:none}}.bro-kind{inset:auto 0 calc(9*var(--p));z-index:1;text-align:center;font:500 max(7.5px,min(.54rem,3.8cqw)) var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--bk);position:absolute}@supports (color:color-mix(in lab,red,red)){.bro-kind{color:color-mix(in srgb,var(--bk) 70%,transparent)}}.ia-wash{opacity:.5}.ia-a{fill:var(--c1)}.ia-b{fill:var(--c2)}.ia-ray{stroke:var(--bk);stroke-width:.7px;stroke-linecap:round;opacity:.75}.ia-line{fill:none;stroke:var(--bk);stroke-width:1.1px;stroke-linejoin:round}.ia-sea{stroke:var(--bb);stroke-width:1.3px}.ia-star{fill:var(--bk)}.ia-n{font:700 8px var(--mono);fill:var(--bk)}.bro-photo{background:var(--bp)}.bro-photo img{object-fit:cover;width:100%;height:100%;display:block}.bro-btn{z-index:3;width:100%;padding:0 calc(18*var(--p)) calc(52*var(--p));color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:flex-end;display:flex;position:absolute;top:0;right:0;bottom:0;left:0}.bro-btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.bro-hint{border:1px solid var(--obj-line);background:var(--bp);border-radius:999px;align-items:center;min-height:34px;padding:0 16px;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.bro-hint{background:color-mix(in srgb,var(--bp) 90%,transparent)}}.bro-hint{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--bk);font:500 .78rem var(--mono);letter-spacing:.02em;text-align:center;line-height:1.15;transition:border-color .2s,color .2s;box-shadow:0 1px 2px #141e3c1f,0 6px 14px -4px #141e3c40}.bro-btn:hover .bro-hint,.bro-btn:focus-visible .bro-hint{border-color:var(--accent);color:var(--accent)}.bro-in{height:100%;padding:calc(22*var(--p)) calc(20*var(--p));font-size:calc(14.08*var(--p));line-height:1.5;position:relative;overflow:hidden}.bro:not(.is-open) .bro-in,.bro:not(.is-open) .bro-mband{visibility:hidden;transition:visibility 0s .6s}.bro-text{gap:calc(10*var(--p));padding:calc(16*var(--p)) calc(16*var(--p)) calc(12*var(--p));flex-direction:column;display:flex}.bro-band{padding:calc(12*var(--p)) calc(10*var(--p)) calc(13*var(--p));background:var(--by);font:italic 400 calc(14.72*var(--p))/1.3 var(--serif);text-align:center;flex-wrap:wrap;justify-content:center;align-items:baseline;column-gap:.3em;margin:0;display:flex}.bro-band b{font:600 calc(17.6*var(--p))/1 var(--sans);letter-spacing:.04em;text-transform:uppercase;font-style:normal;display:inline-block;transform:scaleY(1.35)}.bro-plain{align-items:center;row-gap:calc(6*var(--p));flex-direction:column}.bro-plain small{font:500 calc(10.56*var(--p)) var(--mono);font-style:normal}.bro-hook{font:italic 400 calc(14.4*var(--p))/1.35 var(--serif);text-align:center;margin:0}.bro-note{font:400 calc(12.48*var(--p))/1.45 var(--serif);text-align:justify;-webkit-hyphens:auto;hyphens:auto;margin:0}.bro-facts{gap:calc(3*var(--p));padding:calc(8*var(--p)) calc(10*var(--p));background:var(--by);border:1px solid var(--bk);margin:0;display:grid}@supports (color:color-mix(in lab,red,red)){.bro-facts{border:1px solid color-mix(in srgb,var(--bk) 35%,transparent)}}.bro-facts{font:400 calc(11.84*var(--p))/1.3 var(--serif)}.bro-facts>div{gap:calc(8*var(--p));display:flex}.bro-facts dt{white-space:nowrap;width:6.6em;font:600 calc(9.28*var(--p))/1.9 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--bb);flex:none}.bro-facts dd{margin:0}.bro-vign{flex:1 1 0;width:100%;min-height:0;display:block;-webkit-mask-image:radial-gradient(closest-side,#000 55%,#0000);mask-image:radial-gradient(closest-side,#000 55%,#0000)}.bro-boat{fill:none;width:52%;height:auto;min-height:0;stroke:var(--bk);stroke-width:1.2px;stroke-linecap:round;stroke-linejoin:round;flex:none;align-self:center;margin-top:auto;-webkit-mask-image:none;mask-image:none}.bro-map{flex-direction:column;display:flex}.bm{flex:1;width:100%;min-height:0;display:block}.bm-disc{fill:var(--bp);opacity:.88}.bm-ring{fill:none;stroke:var(--bk);stroke-width:.8px}.bm-dark{fill:var(--bk)}.bm-light{fill:var(--bb)}.bm-pin circle{fill:var(--bk);stroke:var(--bp);stroke-width:1.6px}.bm-pin text{fill:var(--bp);font:700 9.5px var(--serif)}.bro-mband{justify-content:center;gap:calc(4*var(--p));height:calc(112*var(--p));padding:calc(10*var(--p)) calc(14*var(--p));background:var(--by);font:500 calc(10.56*var(--p))/1.35 var(--mono);flex-direction:column;flex:none;display:flex}.bro-mband b{font:700 calc(15.68*var(--p))/1.2 var(--serif)}.bro-p4 .bro-mband{justify-content:space-between}.bro-legend{gap:calc(2*var(--p)) calc(10*var(--p));counter-reset:leg;font:400 calc(10.4*var(--p))/1.2 var(--serif);grid-template-columns:1fr 1fr;margin:0;padding:0;list-style:none;display:grid}.bro-legend li{align-items:flex-start;gap:calc(4*var(--p));overflow-wrap:anywhere;counter-increment:leg;min-width:0;display:flex}.bro-legend li:before{content:counter(leg);background:var(--bk);width:1.35em;height:1.35em;color:var(--bp);font:700 .9em/1 var(--serif);border-radius:50%;flex:none;place-items:center;display:inline-grid}.bro-mband a{color:inherit;opacity:.7;align-self:flex-end;text-decoration:none}.bro-mband a:hover,.bro-mband a:focus-visible{opacity:1;text-decoration:underline}@media (max-width:600px){.bro{--p:1px;perspective:1400px;max-width:360px;height:calc(33rem + 34px);transition:height .6s var(--ease)}.bro:not(.is-open){--p:.667px;width:100%;max-width:240px;height:calc(22rem + 16px);margin-inline:auto;padding-bottom:16px}.bro:not(.is-open) .bro-fold{height:22rem}.bro.is-open{height:calc(132rem + 34px)}.bro-fold{aspect-ratio:auto;width:100%;height:33rem}.bro-p{transform-origin:50% 0}.bro-p2,.bro-p3,.bro-p4{top:100%;left:0}.bro-p1,.bro:not(.is-open) .bro-fold:hover .bro-p1{transform:rotateX(3deg)}.bro-p2,.bro-p4,.bro:not(.is-open) .bro-fold:hover .bro-p2{transform:rotateX(-178deg)}.bro-p3{transform:rotateX(177deg)}.bro.is-open .bro-p1{transform:rotateX(-8deg)}.bro.is-open .bro-p2,.bro.is-open .bro-p4{transform:rotateX(16deg)}.bro.is-open .bro-p3{transform:rotateX(-16deg)}.bro-front:before{display:none}.bro-front:after{background:linear-gradient(#0000001a,#0000 16%)}.bro-title b{font-size:min(15cqw,calc(110cqw/var(--n)))}.bro-hint{padding:0 12px;font-size:.7rem}.bro-note{text-align:left;-webkit-hyphens:manual;hyphens:manual;font-size:15px;line-height:1.55}.bro-hook{font-size:15px}.bro-facts{font-size:14px}.bro-in{scrollbar-width:none;overflow:auto}.bro-in::-webkit-scrollbar{display:none}}.book{overflow-anchor:none;max-width:760px;margin:16px 0 6px}.book.is-open{margin-inline:auto}.book-cover{aspect-ratio:3/4;cursor:pointer;width:min(100%,340px);box-shadow:6px 0 0 -2px var(--paper),9px 2px 0 -2px var(--paper),0 18px 30px -12px #00000080;background:0 0;border:0;border-radius:2px 6px 6px 2px;padding:0;line-height:1.2;display:block;position:relative;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.book-cover{box-shadow:6px 0 0 -2px var(--paper),9px 2px 0 -2px color-mix(in srgb,var(--paper) 65%,#000),0 18px 30px -12px #00000080}}.book-cover{transition:transform .35s var(--ease)}.book-cover:hover{transform:translateY(-3px)}.book-cover:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.bc{color:var(--ink);background:linear-gradient(180deg,#ffffff12,#0000001a),repeating-linear-gradient(0deg,#ffffff0b 0,#ffffff0b 1px,#0000000d 1px,#0000000d 2px),repeating-linear-gradient(90deg,#ffffff09 0,#ffffff09 1px,#0000000d 1px,#0000000d 2px),var(--obj-blue);flex-direction:column;align-items:center;display:flex;position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;container-type:inline-size}@supports (color:color-mix(in lab,red,red)){.bc{background:linear-gradient(180deg,#ffffff12,#0000001a),repeating-linear-gradient(0deg,#ffffff0b 0,#ffffff0b 1px,#0000000d 1px,#0000000d 2px),repeating-linear-gradient(90deg,#ffffff09 0,#ffffff09 1px,#0000000d 1px,#0000000d 2px),color-mix(in srgb,var(--obj-blue) 38%,var(--raise-2))}}.bc:before{content:"";background:linear-gradient(90deg,#0000006b,#00000024 55%,#0000);width:9%;position:absolute;inset:0 auto 0 0;box-shadow:inset -1px 0 #ffffff1f}.bc:after{content:"";pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0;box-shadow:inset 0 0 0 1px #ffffff14,inset 0 -14px 22px -14px #00000059}.bc-photo{aspect-ratio:4/5;background:var(--obj-paper);flex:none;width:62cqw;margin:13cqw 0 0 6cqw;padding:3.2cqw;position:relative;box-shadow:0 1px 2px #0006,0 7px 12px -5px #00000080}.bc-photo img{object-fit:cover;width:100%;height:100%;display:block}.bc-photo:after{content:"";pointer-events:none;position:absolute;top:3.2cqw;right:3.2cqw;bottom:3.2cqw;left:3.2cqw;box-shadow:inset 0 0 6px #00000059}.book-title{text-align:center;flex-direction:column;align-items:center;gap:1.4cqw;margin:8cqw 0 0 6cqw;padding:0 4cqw;line-height:1.2;display:flex}.book-title b{letter-spacing:.14em;text-transform:uppercase;font-size:7.4cqw;font-weight:600}.book-title small{font:500 3.2cqw var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink)}@supports (color:color-mix(in lab,red,red)){.book-title small{color:color-mix(in srgb,var(--ink) 68%,transparent)}}.book:focus-visible{outline:2px solid var(--accent);outline-offset:14px;border-radius:6px}.book-stage{aspect-ratio:3/2;perspective:3200px;touch-action:pan-y;-webkit-user-select:none;user-select:none;margin:0 8px;position:relative}.book-stage.turning{pointer-events:none}.book-page{background:var(--paper);width:50%;position:absolute;top:0;bottom:0;overflow:hidden}.book-page.left{box-shadow:-3px 3px 0 -1px var(--paper),0 20px 30px -18px #0000008c;left:0}@supports (color:color-mix(in lab,red,red)){.book-page.left{box-shadow:-3px 3px 0 -1px color-mix(in srgb,var(--paper) 78%,#000),0 20px 30px -18px #0000008c}}.book-page.right{box-shadow:3px 3px 0 -1px var(--paper),0 20px 30px -18px #0000008c;left:50%}@supports (color:color-mix(in lab,red,red)){.book-page.right{box-shadow:3px 3px 0 -1px color-mix(in srgb,var(--paper) 78%,#000),0 20px 30px -18px #0000008c}}.book-stage.opening .book-page.left,.book-stage.closing .book-page.left{visibility:hidden}.book-stage.closing{pointer-events:none}.book.closing .book-bar{opacity:0;pointer-events:none;transition:opacity .25s}.book-page:before,.book-front:before,.book-back:before,.book-face.back:before{content:"";z-index:1;pointer-events:none;width:14%;position:absolute;top:0;bottom:0}.book-page.left:before,.book-back:before,.book-face.back:before{background:linear-gradient(270deg,#0003,#0000000d 40%,#0000);right:0}.book-page.right:before,.book-front:before{background:linear-gradient(90deg,#0003,#0000000d 40%,#0000);left:0}.book-photo{cursor:zoom-in;background:0 0;border:0;width:100%;height:100%;padding:8%;line-height:0;display:block}.book-photo:focus-visible{outline:2px solid var(--accent);outline-offset:-5px}.book-photo img{object-fit:cover;border-radius:1px;width:100%;height:100%;display:block;box-shadow:0 1px 2px #00000038,0 6px 12px -6px #00000059}.book-leaf{z-index:2;width:50%;position:absolute;top:0;bottom:0;left:50%}.book-under,.book-front,.book-flapwrap,.book-flap{position:absolute;top:0;right:0;bottom:0;left:0}.book-under{overflow:hidden}.book-front{background:var(--paper)}.book-flapwrap{filter:drop-shadow(0 3px 9px #0000004d)}.book-back{transform-origin:0 0;background:var(--paper);width:100%;height:100%;position:absolute;top:0;left:0}.book-shadow,.book-fold{transform-origin:0;pointer-events:none;height:400%;position:absolute;top:-200%;left:0}.book-shadow{background:linear-gradient(90deg,#0000006b,#0000001f 40%,#0000)}.book-fold{background:linear-gradient(90deg,#00000042,#ffffff38 10%,#ffffff0f 40%,#0000001a)}.book-lid{z-index:3;transform-origin:0;width:50%;transform-style:preserve-3d;position:absolute;top:0;bottom:0;left:50%}.book-face{background:var(--paper);backface-visibility:hidden;position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.book-face.back{transform:rotateY(180deg)}.book-face.front{border-radius:2px 6px 6px 2px;line-height:1.2}.book.single{max-width:420px}.book.single .book-stage{aspect-ratio:3/4;box-shadow:3px 3px 0 -1px var(--paper),0 20px 30px -18px #0000008c;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.book.single .book-stage{box-shadow:3px 3px 0 -1px color-mix(in srgb,var(--paper) 78%,#000),0 20px 30px -18px #0000008c}}.book.single .book-page,.book.single .book-leaf,.book.single .book-lid{width:100%;box-shadow:none;left:0}.book-bar{align-items:center;gap:10px;margin-top:28px;display:flex}.book-btn{border:1px solid var(--line);width:44px;height:44px;color:var(--ink);font:500 1.3rem/1 var(--mono);cursor:pointer;background:0 0;border-radius:50%;place-items:center;transition:background .2s;display:grid}.book-btn:hover{background:var(--accent-soft)}.book-btn:focus-visible,.book-close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.book-btn[aria-disabled]{opacity:.4;cursor:default}.book-pos{text-align:center;min-width:5.5rem;font:500 .8rem var(--mono);color:var(--muted)}.book-close{white-space:nowrap;border:1px solid var(--line);min-height:44px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border-radius:999px;margin-left:auto;padding:0 14px;font-size:.9rem;transition:color .2s,background .2s}.book-close:hover{color:var(--ink);background:var(--accent-soft)}.book-stage.can-next .book-page.right,.book-stage.can-back .book-page.left,.book-stage.can-next .book-photo,.book-stage.can-back .book-page.left .book-photo{cursor:grab}.book-stage.dragging,.book-stage.dragging *{cursor:grabbing}.book-page:after{content:"";z-index:1;pointer-events:none;width:0;height:0;transition:width .25s var(--ease),height .25s var(--ease);position:absolute;bottom:0}.book-page.right:after{background:linear-gradient(to top left,transparent 50%,#00000040 50%,var(--paper) 58%,var(--paper));right:0}@supports (color:color-mix(in lab,red,red)){.book-page.right:after{background:linear-gradient(to top left,transparent 50%,#00000040 50%,var(--paper) 58%,color-mix(in srgb,var(--paper) 82%,#000))}}.book-page.left:after{background:linear-gradient(to top right,transparent 50%,#00000040 50%,var(--paper) 58%,var(--paper));left:0}@supports (color:color-mix(in lab,red,red)){.book-page.left:after{background:linear-gradient(to top right,transparent 50%,#00000040 50%,var(--paper) 58%,color-mix(in srgb,var(--paper) 82%,#000))}}.book-stage.can-next .book-page.right:after,.book-stage.can-back .book-page.left:after{width:16px;height:16px}.book-stage.can-next .book-page.right:hover:after,.book-stage.can-back .book-page.left:hover:after{width:48px;height:48px}.book-stage.turning .book-page:after,.book-stage.dragging .book-page:after{width:0;height:0}@media (prefers-reduced-motion:reduce){.book-cover,.book-btn,.book-close,.book-page:after,.bro,.bro-fold,.bro:after,.bro-p,.bro:not(.is-open) .bro-in,.bro:not(.is-open) .bro-mband,.bro-front:after,.bro-front:before{transition:none}.book-cover:hover{transform:none}}.mm-burger{cursor:pointer;position:relative}.mm-burger:focus-visible{outline-offset:-4px;border-radius:50%}.mm-burger span{background:var(--ink);width:20px;height:1.5px;transition:transform .35s var(--ease),opacity .2s;border-radius:1px;margin:-.75px 0 0 -10px;position:absolute;top:50%;left:50%}.mm-burger span:first-child{transform:translateY(-6px)}.mm-burger span:nth-child(3){transform:translateY(6px)}.mm-burger[aria-expanded=true] span:first-child{transform:rotate(45deg)}.mm-burger[aria-expanded=true] span:nth-child(2){opacity:0}.mm-burger[aria-expanded=true] span:nth-child(3){transform:rotate(-45deg)}.mm-menu{z-index:29;visibility:hidden;transition:visibility 0s .18s;position:fixed;top:0;right:0;bottom:0;left:0}@media (min-width:720px){.mm-menu{display:none}}.mm-menu[data-open=true]{visibility:visible;transition:visibility}.mm-card{top:calc(76px + env(safe-area-inset-top,0px));background:var(--raise);border:1px solid var(--line);opacity:0;width:min(232px,100vw - 32px);transition:opacity .18s var(--ease),transform .18s var(--ease);border-radius:14px;padding:6px;display:grid;position:absolute;right:clamp(16px,4vw,48px);transform:translateY(-6px);box-shadow:0 10px 28px #00000047}.mm-menu[data-open=true] .mm-card{opacity:1;transform:none}.mm-link:active,.mm-link:focus-visible{background:var(--raise-2)}@media (prefers-reduced-motion:reduce){.mm-burger span,.mm-card{transition:none}}.desk{--u:clamp(8px,min(1.1vw,1.65vh),12.5px);--bw:calc(17.5*var(--u));--bwo:min(calc(19.5*var(--u)),33vh);--gap:calc(2.6*var(--u));margin-top:56px;display:grid}.desk>.bro{z-index:2;pointer-events:none}.desk .bro-fold{transition:transform .3s var(--ease),width .6s var(--ease),rotate .6s var(--ease);rotate:-3deg}.desk>.bro.is-open .bro-fold{rotate:0deg}.desk.no-bro .souv{margin-top:0}.souv{z-index:1;width:min(100%,520px);margin:var(--gap) auto 0;transition:opacity .5s var(--ease),filter .5s var(--ease),transform .5s var(--ease);position:relative;container-type:inline-size}@media (min-width:1101px){.desk{grid-template-columns:var(--bw) calc(58*var(--u));justify-content:center;column-gap:calc(3.4*var(--u));padding-bottom:34px}.desk.no-bro{grid-template-columns:calc(58*var(--u))}.desk>.bro{width:var(--bw);padding-bottom:0}.bro-fold{width:100%}.desk>.bro.is-open .bro-fold{width:var(--bwo)}.bro-hint{white-space:nowrap;min-height:2.6em;padding:0 1.1em;font-size:max(10px,min(.72rem,5.2cqw))}.souv{align-self:center;width:auto;margin:0}.desk:has(.bro.is-open) .souv{opacity:.3;filter:blur(2px);pointer-events:none;transform:scale(.97)}.desk .sv-stage{width:58em;height:42em;font-size:var(--u);padding:0;display:block;position:relative}.desk .sv-item{margin:0;position:absolute}.desk .sv-pass{--rot:3deg;width:38.5em;top:5em;left:1.5em}.desk .sv-tag{--rot:7deg;width:12em;height:16.6em;top:1.6em;left:45.5em}.desk .sv-ppage{--rot:-5deg;width:24.5em;height:16em;top:24.5em;left:30em}.desk .sv-syms{display:contents}.desk .sv-symbol-1{top:29.5em;left:1.5em}.desk .sv-symbol-2{top:23em;left:15.5em;translate:none}}.sv-defs{position:absolute}.sv-stage{font-size:clamp(11px,2.40964cqw,12.5px);font-family:var(--sans);color:var(--obj-ink);grid-template-columns:2fr 1fr;gap:3.2em 3.4em;padding:2.6em 0 2.4em;display:grid}.sv-item{min-width:0;filter:var(--obj-drop);transform:rotate(var(--rot,0deg));transition:transform .3s var(--ease);position:relative}.sv-item:hover{transform:translateY(-4px) rotate(calc(var(--rot,0deg)*.4))}.sv-pass{--rot:2deg;z-index:3;grid-column:1/-1}.pass-card{background:var(--obj-paper);color:var(--obj-ink);border-radius:1.1em;display:flex;-webkit-mask-image:radial-gradient(.7em at calc(100% - 9.5em) 0,#0000 97%,#000),radial-gradient(.7em at calc(100% - 9.5em) 100%,#0000 97%,#000);mask-image:radial-gradient(.7em at calc(100% - 9.5em) 0,#0000 97%,#000),radial-gradient(.7em at calc(100% - 9.5em) 100%,#0000 97%,#000);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:border-box,border-box;mask-clip:border-box,border-box;-webkit-mask-origin:border-box,border-box;mask-origin:border-box,border-box;-webkit-mask-composite:source-in;mask-composite:intersect;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.pass-main{flex-direction:column;flex:1;gap:1.2em;min-width:0;padding:1.3em 1.6em;display:flex}.pass-top{font:600 .6em var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--obj-muted);justify-content:space-between;align-items:center;gap:1em;display:flex}.pass-brand{white-space:nowrap;color:var(--accent);font:700 1.5em var(--sans);letter-spacing:-.01em;text-transform:none;align-items:center;gap:.5em;display:flex}.pass-brand svg,.pass-line svg{fill:currentColor;flex:none;width:1.3em;height:1.3em}.pass-route{align-items:center;gap:1em;display:flex}.pass-route>div{flex-direction:column;min-width:0;display:flex}.pass-route small{font:600 .58em var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--obj-muted)}.pass-route b{font:800 3em/1 var(--sans);letter-spacing:-.04em}.pass-route>div>span{font:500 .75em var(--sans);color:var(--obj-muted);white-space:nowrap}.pass-line{min-width:2em;color:var(--accent);flex:1;align-items:center;gap:.5em;display:flex}.pass-line:before,.pass-line:after{content:"";opacity:.45;border-top:.12em dashed;flex:1}.pass-grid{border-top:1px solid var(--obj-line);flex-wrap:wrap;justify-content:space-between;gap:.7em 1.4em;margin:0;padding-top:1em;display:flex}.pass-grid dt{font:600 .56em var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--obj-muted)}.pass-grid dd{font:700 .85em var(--sans);white-space:nowrap;margin:.2em 0 0}.pass-stub{border-left:.12em dashed var(--obj-line);flex-direction:column;flex:none;justify-content:center;align-items:center;gap:.8em;width:9.5em;padding:1em;display:flex}.pass-stub svg{width:6.2em;height:6.2em;fill:var(--obj-ink)}.pass-stub span{font:700 .7em var(--mono);letter-spacing:.12em}.sv-syms{grid-column:1/-1;align-items:flex-end;gap:2.6em;margin:2em 0 0 4em;display:flex}.sv-symbol{--rot:-6deg;z-index:2;height:12em;transform:none}.sv-symbol-2{--rot:7deg;height:9.4em;translate:0 -2em}.city-symbol{image-rendering:auto;width:auto;height:100%;transform:rotate(var(--rot));transition:transform .3s var(--ease);display:block}.sv-symbol:hover{transform:none}.sv-symbol:hover .city-symbol{transform:translateY(-4px) rotate(calc(var(--rot)*.4))}.sv-ppage{--rot:-3deg;z-index:2;min-height:16em;color:var(--obj-ink);background:linear-gradient(90deg,#283c641a,transparent 7%),repeating-radial-gradient(circle at 80% 125%,transparent 0 .35em,#4664961a .35em .4em),repeating-radial-gradient(circle at 8% -25%,transparent 0 .35em,#46649612 .35em .4em),var(--obj-paper);border-radius:.6em;top:0}.sv-ppage:last-child{grid-column:1/-1}.sv-ptitle{font:600 .62em var(--mono);letter-spacing:.32em;color:var(--obj-muted);position:absolute;top:1.3em;left:1.8em}.sv-stamp{fill:none;stroke:currentColor;stroke-width:1.2px;mix-blend-mode:multiply;opacity:.85;position:absolute;overflow:visible}.sv-stamp text{fill:currentColor;stroke:none}.sv-stamp.s1{color:#3b5a99;width:9.5em;height:9.5em;top:3.4em;left:5%;transform:rotate(-10deg)}.sv-stamp.s2{color:#6b4fa0;width:11em;height:5.7em;top:5em;left:46%;transform:rotate(4deg)}.st-l{stroke-width:1.8px}.st-t{stroke-width:.8px}.st-x{font:600 9.5px var(--mono);letter-spacing:.8px}.st-b{font:700 10.5px var(--mono);letter-spacing:1.6px}.st-s{font:600 8.5px var(--mono);letter-spacing:.4px}.st-c{font:800 25px var(--sans);letter-spacing:1px}.sv-mrz{white-space:nowrap;font:500 .78em/1.35 var(--mono);letter-spacing:.12em;color:var(--obj-muted);position:absolute;bottom:1em;left:4.8em;right:1.5em;overflow:hidden}.sv-tag{--rot:6deg;z-index:3;min-height:12em;color:var(--obj-ink);flex-direction:column;align-self:start;padding:2.8em .8em .8em;display:flex;top:1.2em}.sv-tag:before{content:"";z-index:-1;background:var(--obj-paper);clip-path:polygon(22% 0,78% 0,100% 10%,100% 100%,0 100%,0 10%);position:absolute;top:0;right:0;bottom:0;left:0;-webkit-mask:radial-gradient(.38em at 50% 1.35em,#0000 96%,#000);mask:radial-gradient(.38em at 50% 1.35em,#0000 96%,#000)}.sv-tag:after{content:"";border:.1em solid var(--obj-line);border-radius:50%;width:.76em;height:.76em;margin-left:-.38em;position:absolute;top:.97em;left:50%}.sv-string{display:none}.sv-tag b{text-align:center;font:600 .62em var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);padding-bottom:.6em;display:block}.sv-tag ul{flex-direction:column;flex:1;margin:0;padding:0;list-style:none;display:flex}.sv-tag li{text-align:center;font:700 1.5em/1.2 var(--sans);border-top:1px solid var(--obj-line);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.08em;padding:.35em 0;display:flex}.sv-tag li i{font:italic 400 .56em/1.2 var(--sans);color:var(--obj-muted)}.sv-pin{z-index:3}.desk .minimap-tack{--pin:calc(var(--u,12px)*2.1)}.bro-pin{z-index:3;transition:opacity .3s var(--ease),transform .3s var(--ease);top:.6em;left:48%}.bro.is-open .bro-pin{opacity:0;transform:translateY(-8px)}.bro:not(.is-open):has(.bro-fold:hover) .bro-pin{transform:translateY(-3px)}.sv-st{z-index:3;pointer-events:none;-webkit-user-select:none;user-select:none;transform:rotate(var(--r,0deg));filter:drop-shadow(0 1px 1px #00000040)drop-shadow(0 4px 6px #00000047);transition:transform .35s var(--ease);position:absolute}.sv-item:hover .sv-st{transform:translateY(-3px) rotate(calc(var(--r,0deg) + 7deg)) scale(1.06)}.sv-plane{--r:14deg;width:6em;height:auto;top:-2.6em;right:-1em}.sv-flag{--r:-8deg;background:#fff;border:.28em solid #fff;border-radius:.8em;display:block;bottom:-1.4em;left:-1.2em;overflow:hidden}.sv-flag:after{content:"";background:radial-gradient(circle at 30% 25%,#ffffff8c,#0000 45%);border-radius:.5em;position:absolute;top:0;right:0;bottom:0;left:0}.sv-flag canvas{display:block;width:5.4em!important;height:3.6em!important}@media (prefers-reduced-motion:reduce){.souv,.sv-item,.bro-fold,.desk .bro-fold,.sv-st,.bro-pin{transition:none}.sv-item:hover .sv-st{transform:rotate(var(--r,0deg))}.sv-item:hover{transform:rotate(var(--rot,0deg))}}@media (max-width:1100px){.bro-pin{left:16.66%}}@media (max-width:700px){.souv{overflow-x:clip}.sv-plane{right:.3em}.sv-flag{bottom:-1.2em;left:.2em}.pass-route b{font-size:2.5em}}@media (max-width:600px){.bro-pin{left:50%}}@media (max-width:560px){.trip-ch .sec-head{row-gap:8px;margin-bottom:14px}.trip-ch .sec-head h3{margin-top:6px;font-size:1.5rem}.trip-ch .sec-head p{font-size:.9rem;line-height:1.45}.sv-stage{grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:1.6em;padding:1.6em 0 1.2em;font-size:clamp(8.8px,1.92771cqw,10px)}.sv-pass{width:100%}.sv-ppage{grid-row:span 2;width:100%}.sv-tag{width:100%;min-height:0;margin:0;padding-bottom:.4em;top:0}.sv-syms{grid-column:2;justify-content:center;gap:1.4em;margin:0}.sv-symbol{height:7.6em}.sv-symbol-2{height:6em;translate:0 -1em}.sv-plane{width:4.6em}}.shelf{grid-template-columns:repeat(var(--n),minmax(0,var(--cw))) minmax(0,1fr);align-items:start;gap:clamp(24px,3.4vw,48px);display:grid}.shelf>.book{transition:opacity .5s var(--ease),filter .5s var(--ease),scale .5s var(--ease);margin:0}.shelf>.book:not(.is-open){rotate:var(--tilt,0deg);translate:0 var(--dy,0px)}.shelf>.book:nth-child(3n+1){--tilt:-1.2deg}.shelf>.book:nth-child(3n+2){--tilt:1deg;--dy:22px}.shelf>.book:nth-child(3n){--tilt:-.5deg;--dy:8px}.shelf>.book.is-open{z-index:3;width:100%;margin-inline:auto}.shelf-info{max-width:34ch;color:var(--muted);transition:opacity .5s var(--ease),filter .5s var(--ease);align-self:center;margin:0;font-size:.95rem;line-height:1.6}.shelf-info p{margin:0}.shelf-info .shelf-count{font:800 clamp(1.8rem,3.2vw,2.6rem)/1 var(--sans);letter-spacing:-.045em;color:var(--ink);margin-bottom:10px}.shelf:has(>.book.is-open)>:not(.is-open){opacity:.25;filter:blur(2px);pointer-events:none;scale:.97}@media (min-width:901px){.shelf>.book{grid-row:1;grid-column:var(--col)}.shelf>.book.is-open{grid-column:1/-1}.shelf-info{grid-area:1/-2/auto/-1}}@media (max-width:900px){.shelf{grid-template-columns:repeat(var(--n2),minmax(0,1fr))}.shelf>.book.is-open{grid-column:1/-1}.shelf-info{grid-column:1/-1;max-width:none}}@media (prefers-reduced-motion:reduce){.shelf>.book,.shelf-info{transition:none}}.tnav{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:14px 16px;margin-top:clamp(72px,9vw,120px);display:flex}.tnav~.next{margin-top:clamp(40px,5vw,64px)}.tnav-card{align-content:start;gap:6px;min-width:0;max-width:100%;text-decoration:none;display:grid}.tnav-card.is-next{text-align:right;justify-items:end;margin-left:auto}.tnav-card small{font:500 .72rem var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.tnav-card small>span{transition:transform .4s var(--ease);display:inline-block}.tnav-card.is-prev small>span:first-child{margin-right:.35em}.tnav-card.is-next small>span:last-child{margin-left:.35em}.tnav-city{align-items:center;gap:10px;min-width:0;display:flex}.tnav-city canvas{border-radius:3px;flex:none}.tnav-city b{text-overflow:ellipsis;letter-spacing:-.02em;color:var(--ink);font-size:clamp(1.1rem,1.8vw,1.25rem);font-weight:700;line-height:1.2;transition:color .3s;overflow:hidden}.tnav-card:hover .tnav-city b,.tnav-card:focus-visible .tnav-city b{color:var(--accent)}.tnav-card:focus-visible{outline:1px solid var(--accent);outline-offset:6px;border-radius:4px}.tnav-card.is-prev:hover small>span:first-child{transform:translate(-4px)}.tnav-card.is-next:hover small>span:last-child{transform:translate(4px)}@media (prefers-reduced-motion:reduce){.tnav-card small>span,.tnav-city b{transition:none}.tnav-card.is-prev:hover small>span:first-child,.tnav-card.is-next:hover small>span:last-child{transform:none}}@media (prefers-reduced-motion:no-preference){.trip{animation:.22s ease-out backwards trip-in}.trip-map{animation:.9s cubic-bezier(.2,.8,.25,1) .2s backwards map-peel}.desk>.bro{--k:0}.desk .sv-pass{--k:1}.desk .sv-tag{--k:2}.desk .sv-ppage{--k:3}.desk .sv-symbol-1{--k:4}.desk .sv-symbol-2{--k:5}.js .desk:not(.in)>.bro,.js .desk:not(.in) .sv-item{opacity:0}.desk.in>.bro,.desk.in .sv-item{animation:.75s cubic-bezier(.2,.8,.3,1.04) backwards desk-drop;animation-delay:calc(var(--k,0)*.11s)}.js .desk:not(.in) .minimap-tack-img,.js .desk:not(.in) .minimap-tack-shadow{animation:none}.desk.in .minimap-tack-img,.desk.in .minimap-tack-shadow{animation-delay:calc(var(--k,0)*.11s + .42s)}.desk.in .sv-st{animation:.55s cubic-bezier(.3,1.5,.5,1) backwards sv-stick;animation-delay:calc(var(--k,0)*.11s + .52s)}.js .shelf:not(.in)>*{opacity:0}.shelf.in>.book{animation:shelf-in .9s var(--ease) backwards;animation-delay:calc(var(--k,0)*.12s)}.shelf.in>.shelf-info{animation:shelf-info .9s var(--ease) .25s backwards}}@keyframes trip-in{0%{opacity:0}}@keyframes map-peel{0%{opacity:0;translate:22px -16px;rotate:10deg;scale:1.08}}@keyframes desk-drop{0%{opacity:0;translate:0 -30px;rotate:5deg;scale:1.05}55%{opacity:1}}@keyframes sv-stick{0%{opacity:0;scale:1.4}}@media (max-width:900px) and (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){.desk.in>.bro,.desk.in .sv-item{animation:linear both desk-drop;animation-timeline:view();animation-range:entry entry 70%}}}@keyframes shelf-in{0%{opacity:0;transform:translate(-48px)rotate(-5deg)}}@keyframes shelf-info{0%{opacity:0;transform:translateY(16px)}}@media (max-width:900px){.art-dots button{width:44px;height:44px}.art-dots button:before{top:18px;right:18px;bottom:18px;left:18px}.more{align-items:center;min-height:44px}.cert-link{margin-block:-12px;padding-block:12px}.cert-link.in-tl{margin-top:0}.work-lang .cert-link{display:inline-block}.school-link{padding-block:13px}}:root{color-scheme:dark;--ground:#0b0c10;--raise:#121319;--raise-2:#181a21;--line:#23252e;--ink:#f4f4f5;--muted:#8b8e98;--faint:#4a4d57;--accent:#4d7fe0;--accent-soft:#4d7fe024;--shadow:0 30px 80px #0000008c;--paper:#d9d3c2;--paper-ink:#26231e;--obj-paper:#d9dbe0;--obj-ink:#1c2026;--obj-muted:#5a5f69;--obj-line:#1c202633;--obj-tint:#c3c9d3;--obj-blue:#5f8396;--obj-shadow:0 1px 2px #0000004d, 0 12px 22px #0006;--obj-drop:drop-shadow(0 1px 2px #0000004d) drop-shadow(0 12px 18px #0006);--sans:"Geist", system-ui, -apple-system, "Segoe UI", sans-serif;--mono:"Geist Mono", ui-monospace, SFMono-Regular, Consolas, monospace;--script:"Caveat", "Segoe Script", cursive;--ease:cubic-bezier(.2, .8, .2, 1)}:root[data-theme=light]{color-scheme:light;--ground:#f5f6f8;--raise:#fff;--raise-2:#eaecf0;--line:#dde0e6;--ink:#0b0c10;--muted:#636772;--faint:#b3b6be;--accent:#2f63d0;--accent-soft:#2f63d017;--shadow:0 30px 70px #14182829;--paper:#fffdf6;--paper-ink:#26231e;--obj-paper:#f7f7f5;--obj-ink:#1e2125;--obj-muted:#5f646d;--obj-line:#1e212533;--obj-tint:#e4e8ee;--obj-blue:#7799ab;--obj-shadow:0 0 0 1px #1e21250d, 0 1px 2px #141e3c1a, 0 12px 20px #141e3c29;--obj-drop:drop-shadow(0 1px 2px #141e3c1a) drop-shadow(0 12px 18px #141e3c29)}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){color-scheme:light;--ground:#f5f6f8;--raise:#fff;--raise-2:#eaecf0;--line:#dde0e6;--ink:#0b0c10;--muted:#636772;--faint:#b3b6be;--accent:#2f63d0;--accent-soft:#2f63d017;--shadow:0 30px 70px #14182829;--paper:#fffdf6;--paper-ink:#26231e;--obj-paper:#f7f7f5;--obj-ink:#1e2125;--obj-muted:#5f646d;--obj-line:#1e212533;--obj-tint:#e4e8ee;--obj-blue:#7799ab;--obj-shadow:0 0 0 1px #1e21250d, 0 1px 2px #141e3c1a, 0 12px 20px #141e3c29;--obj-drop:drop-shadow(0 1px 2px #141e3c1a) drop-shadow(0 12px 18px #141e3c29)}}.font-script,.board .mark{font-feature-settings:"calt" 0}body{background:var(--ground);color:var(--ink);transition:background .4s,color .4s}.cursor-ring{z-index:90;pointer-events:none;border:1px solid var(--accent);opacity:0;width:34px;height:34px;transition:width .25s var(--ease),height .25s var(--ease),margin .25s var(--ease),background .25s,opacity .3s;border-radius:50%;margin:-17px 0 0 -17px;position:fixed;top:0;left:0}.cursor-ring.big{width:64px;height:64px;margin:-32px 0 0 -32px}.cursor-dot{z-index:90;pointer-events:none;background:var(--accent);opacity:0;border-radius:50%;width:5px;height:5px;margin:-2.5px 0 0 -2.5px;position:fixed;top:0;left:0}.term-veil{z-index:60;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#08090c61;place-items:center;padding:16px;display:grid;position:fixed;top:0;right:0;bottom:0;left:0}.term-veil[hidden]{display:none}.term-veil:not([hidden]){animation:.25s ease-out term-fade}.term-veil:not([hidden]) .term-panel{animation:term-rise .35s var(--ease)}@keyframes term-fade{0%{opacity:0}}@keyframes term-rise{0%{opacity:0;transform:translateY(10px)scale(.985)}}.term-panel{color:#ccc;width:min(760px,100%);height:min(460px,80svh);font-family:"Cascadia Mono",Consolas,"Lucida Console",var(--mono);background:#0c0c0c;border:1px solid #3a3a3a;border-radius:8px;flex-direction:column;font-size:.82rem;font-weight:400;display:flex;overflow:hidden;box-shadow:0 30px 80px -20px #000000a6}.term-bar{color:#d6d6d6;-webkit-user-select:none;user-select:none;background:#202020;align-items:flex-end;gap:4px;height:38px;padding:0 0 0 6px;font-family:Segoe UI,system-ui,sans-serif;font-size:.8rem;display:flex}.term-tab{background:#0c0c0c;border-radius:8px 8px 0 0;align-self:flex-end;align-items:center;gap:9px;height:32px;margin-top:6px;padding:0 16px 0 12px;display:flex}.term-tab svg{width:16px;height:16px}.term-bar .win-close{color:#d6d6d6;cursor:pointer;background:0 0;border:0;align-self:stretch;width:46px;margin-left:auto;padding:0;font-size:.8rem}.term-bar .win-close:hover{background:#c42b1c}.term-out{scrollbar-width:thin;scrollbar-color:#4a4a4a transparent;flex:0 auto;padding:8px 8px 0;line-height:1.32;overflow:auto}.term-out .l{white-space:pre-wrap;word-break:break-word;min-height:1.32em}.term-out .c:before{content:"🌸 " attr(data-t) " | marine@portfolio:~$ "}.term-out .d,.term-out .a,.term-out .e{color:#ccc}.term-out a{color:#3b78ff;text-underline-offset:3px}.term-in{align-items:center;padding:0 8px 10px;display:flex}.term-panel{cursor:text}.term-bar{cursor:default}.term-in label{white-space:pre}.term-in label b{font-weight:400}.term-field{flex:1;min-width:0;margin-left:.5ch;position:relative}.term-field input{caret-color:#0000;width:100%}.term-caret{pointer-events:none;background:#ccc;width:2px;height:1.15em;margin-top:-.575em;animation:1.06s step-end infinite term-blink;position:absolute;top:50%;left:0}.term-field:not(:focus-within) .term-caret{visibility:hidden}@keyframes term-blink{50%{opacity:0}}.term-in input{color:#ccc;min-width:0;font:inherit;background:0 0;border:0;outline:none;flex:1}.globe{z-index:0;isolation:isolate;aspect-ratio:1;touch-action:pan-y;cursor:grab;-webkit-user-select:none;user-select:none;will-change:transform;justify-self:center;width:100%;max-width:min(640px,78svh);position:relative}.globe:active{cursor:grabbing}.core{background:var(--accent);width:12px;height:12px;box-shadow:0 0 22px 5px var(--accent);border-radius:50%;margin:-6px 0 0 -6px;position:absolute;top:50%;left:50%}@supports (color:color-mix(in lab,red,red)){.core{box-shadow:0 0 22px 5px color-mix(in srgb,var(--accent) 50%,transparent)}}.core{animation:3s ease-in-out infinite breathe}@keyframes breathe{50%{transform:scale(1.35)}}.icon{will-change:transform,opacity;place-items:center;width:40px;height:40px;margin:-20px 0 0 -20px;display:grid;position:absolute;top:0;left:0}.icon svg{width:66%;height:66%;fill:var(--ink);transition:fill .2s,filter .2s}.icon:hover svg{fill:var(--accent);filter:drop-shadow(0 0 8px var(--accent))}.icon .tip{font-family:var(--mono);white-space:nowrap;background:var(--raise-2);border:1px solid var(--line);opacity:0;pointer-events:none;border-radius:6px;padding:2px 6px;font-size:.64rem;transition:opacity .15s;position:absolute;top:100%;left:50%;transform:translate(-50%)}.icon:hover .tip{opacity:1}@media (max-width:900px){.globe{max-width:400px}}@media (max-width:620px){.icon{width:32px;height:32px;margin:-16px 0 0 -16px}}.lego{aspect-ratio:31/36;background:var(--ground);isolation:isolate;cursor:grab;touch-action:pan-y;outline-offset:4px;border-radius:22px;width:100%;max-width:31rem;position:relative}.lego.turning{cursor:grabbing}.lego.over-hand{cursor:pointer}.lego canvas{border-radius:inherit;position:absolute;top:0;right:0;bottom:0;left:0;width:100%!important;height:100%!important}.lego-load{font-family:var(--mono);color:var(--muted);place-items:center;font-size:.74rem;display:grid;position:absolute;top:0;right:0;bottom:0;left:0}.lego.fallback{background:linear-gradient(to bottom,var(--raise),var(--ground));cursor:default}.lego.fallback .bubble{display:none}.bubble{z-index:2;background:var(--ground);border-radius:18px;width:max-content;max-width:86%;padding:11px 18px 9px;position:absolute;top:5%;left:50%}@supports (color:color-mix(in lab,red,red)){.bubble{background:color-mix(in srgb,var(--ground) 82%,transparent)}}.bubble{color:var(--ink);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--line);text-align:center;pointer-events:none;opacity:0;transition:opacity .5s ease,transform .6s var(--ease);font-size:.9rem;font-weight:500;line-height:1.4;transform:translate(-50%,6px);box-shadow:0 10px 30px -14px #00000047}.bubble:after{content:"";background:inherit;border-right:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0 0 3px;width:9px;height:9px;position:absolute;bottom:-5px;left:50%;transform:translate(-50%)rotate(45deg)}.bubble.on{opacity:1;transform:translate(-50%)}.bubble-text{display:block;position:relative}.bubble-ghost{visibility:hidden}.bubble-typed{text-align:center;position:absolute;top:0;right:0;bottom:0;left:0}.bubble-dots{justify-content:center;gap:5px;margin-top:7px;display:flex}.bubble-dots i{background:var(--muted);opacity:.35;border-radius:50%;width:4px;height:4px;transition:opacity .4s,background .4s}.bubble-dots i.on{opacity:1;background:var(--accent)}@media (max-width:900px){.lego{aspect-ratio:1;max-width:440px}}.earth{aspect-ratio:1;max-width:100%;position:relative}.earth canvas{touch-action:pan-y;cursor:grab;width:100%;height:100%;position:absolute;top:0;right:0;bottom:0;left:0}@media (pointer:coarse){.kbd-hint{display:none}.term-in input{font-size:16px}}@media (max-width:719px){.term-clock{display:none}.term-veil{place-items:start center;padding:8px}.term-panel{height:min(460px,100dvh - 16px)}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}
