:root{color-scheme:light;--color-bg: #f4f8fb;--color-bg-rgb: 244, 248, 251;--color-bg-elevated: rgba(255, 255, 255, .78);--color-fg: #12202b;--color-muted: #607080;--color-soft: #e8f0f6;--color-subtle: #f8fbfd;--color-border: #d6e2ea;--color-border-strong: #afc4d3;--color-accent: #1f6d8f;--color-accent-hover: #164e67;--color-accent-soft: #d9edf5;--color-signal: #2f8f83;--color-ink: #0b151d;--surface-card-border: rgba(96, 124, 130, .38);--surface-card-bg: linear-gradient( 180deg, rgba(255, 255, 255, .34), rgba(255, 255, 255, .18) );--surface-card-bg-hover: linear-gradient( 180deg, rgba(255, 255, 255, .46), rgba(255, 255, 255, .24) );--surface-panel-border: rgba(78, 97, 81, .42);--surface-panel-bg: linear-gradient( 180deg, rgba(255, 255, 255, .42), rgba(255, 255, 255, .24) );--surface-collection-bg: linear-gradient( 180deg, rgba(255, 255, 255, .38), rgba(255, 255, 255, .2) );--surface-collection-bg-hover: linear-gradient( 180deg, rgba(255, 255, 255, .5), rgba(255, 255, 255, .27) );--font-sans: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--max-width: 1280px;--content-width: 760px;--page-gutter: clamp(1.5rem, 7vw, 7rem);--page-section-gap: clamp(2.75rem, 5vw, 3.5rem);--page-edge-fade: clamp(.55rem, 1.05vw, .9rem);--page-dot-bg: radial-gradient( circle at 1px 1px, rgba(18, 32, 43, .11) 1px, transparent 0 );--page-dot-size: 6px 6px;--radius: 8px;--shadow-sm: 0 12px 40px rgba(45, 76, 96, .08);--glass-blur: 22px;--glass-saturate: 2.05;--glass-brightness: 1.08;--glass-tint: rgba(255, 255, 255, .18);--glass-tint-strong: rgba(255, 255, 255, .32);--glass-border: rgba(255, 255, 255, .5);--glass-highlight: inset 0 1px 0 rgba(255, 255, 255, .7), inset 0 -1px 1px rgba(255, 255, 255, .22), inset 0 0 0 1px rgba(255, 255, 255, .18);--glass-shadow: 0 14px 42px rgba(20, 64, 84, .14), 0 2px 8px rgba(255, 255, 255, .2);--glass-nav-tint: rgba(255, 255, 255, .88)}.button,.record-card,.system-panel,.contact-link,.experience-card,.record-modal-panel,.diary-block,.logbook-panel,.glass-card,.route-card,.placeholder-card,.book-card,.book-collection-panel,.book-collection-item,.empty-shelf,.card,.record-highlight,.signal-row,.empty-state{--glass-x: 50%;--glass-y: 18%;position:relative;background:linear-gradient(135deg,var(--glass-tint-strong),var(--glass-tint));-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate)) brightness(var(--glass-brightness));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate)) brightness(var(--glass-brightness));border:1px solid var(--glass-border);box-shadow:var(--glass-shadow),var(--glass-highlight);transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}.record-card:before,.system-panel:before,.contact-link:before,.experience-card:before,.record-modal-panel:before,.diary-block:before,.logbook-panel:before,.glass-card:before,.route-card:before,.placeholder-card:before,.book-card:before,.book-collection-panel:before,.book-collection-item:before,.empty-shelf:before,.card:before,.record-highlight:before,.signal-row:before,.empty-state:before{content:"";position:absolute;inset:0;z-index:0;border-radius:inherit;background:radial-gradient(circle at var(--glass-x) var(--glass-y),rgba(255,255,255,.9),rgba(255,255,255,.28) 13%,transparent 34%),linear-gradient(135deg,#ffffff80,#ffffff05 38%,#ffffff3d);opacity:.86;pointer-events:none;transition:opacity .2s ease}.record-card:after,.system-panel:after,.contact-link:after,.experience-card:after,.record-modal-panel:after,.diary-block:after,.logbook-panel:after,.glass-card:after,.route-card:after,.placeholder-card:after,.book-card:after,.book-collection-panel:after,.book-collection-item:after,.empty-shelf:after,.card:after,.record-highlight:after,.signal-row:after,.empty-state:after{content:"";position:absolute;inset:-1px;z-index:0;border-radius:inherit;background:radial-gradient(circle at var(--glass-x) var(--glass-y),rgba(255,255,255,.48),transparent 20%),linear-gradient(90deg,transparent,rgba(255,255,255,.66),transparent),linear-gradient(135deg,rgba(255,255,255,.78) 0%,transparent 18%,transparent 72%,rgba(255,255,255,.5) 100%);mix-blend-mode:screen;opacity:.72;pointer-events:none}.record-card>*,.system-panel>*,.contact-link>*,.experience-card>*,.record-modal-panel>*,.diary-block>*,.logbook-panel>*,.glass-card>*,.route-card>*,.placeholder-card>*,.book-card>*,.book-collection-panel>*,.book-collection-item>*,.empty-shelf>*,.card>*,.record-highlight>*,.signal-row>*,.empty-state>*{position:relative;z-index:1}:where(.record-card,.contact-link,.experience-card,.route-card,.book-card,.book-collection-item,.card,.record-highlight):is(:hover,:focus-visible,:focus-within){border-color:#ffffffc7;background:var(--surface-card-bg-hover);box-shadow:0 18px 48px #14405429,0 4px 14px #1f6d8f14,var(--glass-highlight);transform:translateY(-2px);text-decoration:none}:where(.record-card,.contact-link,.experience-card,.route-card,.book-card,.book-collection-item,.card,.record-highlight):is(:hover,:focus-visible,:focus-within):before{opacity:1}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.button,.record-card,.system-panel,.contact-link,.experience-card,.record-modal-panel,.diary-block,.logbook-panel,.glass-card,.route-card,.placeholder-card,.book-card,.book-collection-panel,.book-collection-item,.empty-shelf,.card,.record-highlight,.signal-row,.empty-state{background:var(--surface-card-bg);box-shadow:var(--shadow-sm)}}@supports (backdrop-filter: url(#liquid-glass)){.record-card,.system-panel,.contact-link,.experience-card,.record-modal-panel,.diary-block,.logbook-panel,.glass-card,.route-card,.placeholder-card,.book-card,.book-collection-panel,.book-collection-item,.empty-shelf,.card,.record-highlight,.signal-row,.empty-state{-webkit-backdrop-filter:url(#liquid-glass) blur(6px) saturate(var(--glass-saturate)) brightness(var(--glass-brightness));backdrop-filter:url(#liquid-glass) blur(6px) saturate(var(--glass-saturate)) brightness(var(--glass-brightness))}}.glass-defs{position:absolute;width:0;height:0;pointer-events:none}.site-aurora{position:fixed;inset:0;z-index:-2;overflow:hidden;pointer-events:none}.site-aurora .aurora-blob{position:absolute;border-radius:50%;filter:blur(86px);opacity:.44;transform-origin:50% 50%;will-change:transform}.aurora-a{top:-6%;left:-4%;width:38vw;height:38vw;min-width:22rem;min-height:22rem;background:radial-gradient(circle,rgba(31,109,143,.62),transparent 70%);animation:aurora-a 148s linear infinite both;animation-delay:var(--aurora-delay-a, 0s)}.aurora-b{top:20%;right:-6%;width:34vw;height:34vw;min-width:20rem;min-height:20rem;background:radial-gradient(circle,rgba(126,161,184,.52),transparent 70%);animation:aurora-b 176s linear infinite both;animation-delay:var(--aurora-delay-b, 0s)}.aurora-c{bottom:-8%;left:18%;width:40vw;height:40vw;min-width:24rem;min-height:24rem;background:radial-gradient(circle,rgba(47,143,131,.42),transparent 70%);animation:aurora-c 204s linear infinite both;animation-delay:var(--aurora-delay-c, 0s)}.aurora-d{top:40%;left:38%;width:30vw;height:30vw;min-width:18rem;min-height:18rem;background:radial-gradient(circle,rgba(96,112,128,.44),transparent 70%);animation:aurora-d 164s linear infinite both;animation-delay:var(--aurora-delay-d, 0s)}@keyframes aurora-a{0%{transform:translateZ(0) scale(1) rotate(0)}25%{transform:translate3d(5vw,3vh,0) scale(1.12) rotate(18deg)}50%{transform:translate3d(7vw,9vh,0) scale(.96) rotate(41deg)}75%{transform:translate3d(1vw,6vh,0) scale(1.16) rotate(64deg)}to{transform:translateZ(0) scale(1) rotate(80deg)}}@keyframes aurora-b{0%{transform:translateZ(0) scale(1.08) rotate(0)}25%{transform:translate3d(-4vw,5vh,0) scale(.94) rotate(-16deg)}50%{transform:translate3d(-8vw,1vh,0) scale(1.14) rotate(-34deg)}75%{transform:translate3d(-3vw,-5vh,0) scale(1.02) rotate(-58deg)}to{transform:translateZ(0) scale(1.08) rotate(-78deg)}}@keyframes aurora-c{0%{transform:translateZ(0) scale(.95) rotate(0)}25%{transform:translate3d(4vw,-6vh,0) scale(1.15) rotate(12deg)}50%{transform:translate3d(9vw,-2vh,0) scale(1.04) rotate(31deg)}75%{transform:translate3d(3vw,4vh,0) scale(1.2) rotate(53deg)}to{transform:translateZ(0) scale(.95) rotate(72deg)}}@keyframes aurora-d{0%{transform:translateZ(0) scale(1) rotate(0)}25%{transform:translate3d(-3vw,-4vh,0) scale(1.16) rotate(20deg)}50%{transform:translate3d(3vw,-7vh,0) scale(.92) rotate(39deg)}75%{transform:translate3d(6vw,1vh,0) scale(1.1) rotate(61deg)}to{transform:translateZ(0) scale(1) rotate(84deg)}}@media(prefers-reduced-motion:reduce){.site-aurora .aurora-blob{animation:none}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;overflow-x:hidden;height:100%;overscroll-behavior:none}body{margin:0;font-family:var(--font-sans);font-size:16px;line-height:1.6;color:var(--color-fg);background:radial-gradient(circle at 13% 8%,rgba(31,109,143,.18),transparent 30rem),radial-gradient(circle at 84% 22%,rgba(120,196,224,.16),transparent 28rem),radial-gradient(circle at 34% 78%,rgba(47,143,131,.12),transparent 34rem),radial-gradient(circle at 68% 62%,rgba(96,112,128,.12),transparent 26rem),var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;height:100%;overflow:hidden}body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:var(--page-dot-bg);background-size:var(--page-dot-size)}main{--main-block-start: clamp(3.8rem, 5vw, 4.6rem);--main-block-end: clamp(3.7rem, 5vw, 4.4rem);width:100%;height:100vh;padding:var(--main-block-start) 0 var(--main-block-end);min-width:0;overflow-y:auto;overscroll-behavior:contain}@media(min-width:1600px){:root{--content-width: 820px}}h1,h2,h3,h4{line-height:1.14;font-weight:680;letter-spacing:0;margin:1.75rem 0 .75rem}h1{font-size:3.3rem;margin-top:0}h2{font-size:1.65rem}h3{font-size:1.05rem}p{margin:0 0 1rem}a{color:var(--color-accent);text-decoration:none}h1,h2,h3,h4,p,a{overflow-wrap:break-word}a:hover,a:focus-visible{color:var(--color-accent-hover);text-decoration:underline;text-decoration-thickness:.08em;text-underline-offset:.18em}code{font-family:var(--font-mono);font-size:.9em;background:var(--color-subtle);padding:.1em .35em;border-radius:4px}hr{border:0;border-top:1px solid var(--color-border);margin:2rem 0}img{max-width:100%;height:auto}::selection{color:var(--color-ink);background:var(--color-accent-soft)}.muted{color:var(--color-muted)}.tag{display:inline-block;font-size:.78rem;padding:.22rem .5rem;background:var(--color-accent-soft);color:var(--color-muted);border:1px solid rgba(31,109,143,.12);border-radius:6px;margin-right:.25rem}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:3px}.skip-link{position:fixed;left:1rem;top:0;z-index:100;transform:translateY(calc(-100% - 1rem));opacity:0;pointer-events:none;background:var(--color-ink);color:#fff;padding:.55rem .8rem;border-radius:6px}.skip-link:focus{top:1rem;transform:translateY(0);opacity:1;pointer-events:auto}.page-shell{display:grid;gap:var(--page-section-gap);width:min(100% - (var(--page-gutter) * 2),var(--max-width));max-width:var(--max-width);margin:0 auto;min-width:0}.hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:3rem;align-items:end;min-height:58vh;padding:1rem 0 2.5rem;width:100%;max-width:100%;min-width:0}.hero-copy{width:100%;max-width:720px;min-width:0}.eyebrow{display:inline-flex;align-items:center;gap:.45rem;margin:0 0 1.15rem;color:var(--color-accent);font-family:var(--font-mono);font-size:.78rem}.eyebrow:before{content:"";width:.65rem;height:.65rem;border:2px solid var(--color-signal);border-radius:50%}.lead{width:100%;max-width:660px;color:#455767;font-size:1.14rem;line-height:1.7}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:1.75rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:2.7rem;padding:.7rem 1rem;border:1px solid var(--color-border-strong);border-radius:7px;background:#ffffff9e;color:var(--color-fg);font-weight:620;box-shadow:var(--shadow-sm)}.button.primary{background:var(--color-ink);border-color:var(--color-ink);color:#fff}.button:hover,.button:focus-visible{color:var(--color-fg);border-color:var(--color-accent);text-decoration:none}.button.primary:hover,.button.primary:focus-visible{color:#fff;background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.system-panel{align-self:stretch;width:100%;max-width:100%;min-width:0;overflow:hidden;border:1px solid var(--surface-panel-border);border-radius:var(--radius);background:var(--surface-panel-bg);padding:1rem;box-shadow:var(--shadow-sm)}.system-panel header{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--color-border);padding-bottom:.8rem;color:var(--color-muted);font-family:var(--font-mono);font-size:.78rem}.signal-stack{display:grid;gap:.75rem;margin-top:1rem;width:100%;min-width:0}.signal-row{display:grid;grid-template-columns:5.5rem 1fr;gap:1rem;align-items:start;width:100%;min-width:0;padding:.85rem;border:1px solid var(--surface-card-border);border-radius:7px;background:var(--surface-card-bg)}.signal-row span{color:var(--color-accent);font-family:var(--font-mono);font-size:.76rem}.signal-row p{margin:0;color:#405363;font-size:.93rem;min-width:0}.section{border-top:1px solid var(--color-border);padding-top:2rem;min-width:0}.section-head{max-width:var(--content-width);margin-bottom:0;min-width:0}.section-kicker{margin:0 0 .5rem;color:var(--color-accent);font-family:var(--font-mono);font-size:.78rem}.section-head h2,.section-head h1{margin-top:0}.section-head p{color:var(--color-muted)}.route-grid,.placeholder-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(13rem,15rem));gap:1rem;min-width:0}.route-card,.placeholder-card{min-height:20rem;border:1px solid var(--surface-card-border);border-radius:var(--radius);background:var(--surface-card-bg);padding:1rem;box-shadow:var(--shadow-sm)}.route-card{display:flex;flex-direction:column;justify-content:space-between;color:var(--color-fg)}.route-card:hover,.route-card:focus-visible{color:var(--color-fg);text-decoration:none}.route-card .index,.placeholder-card .index{color:var(--color-accent);font-family:var(--font-mono);font-size:.78rem}.route-card-meta{display:grid;grid-template-columns:1fr;min-height:10.5rem;gap:.5rem}.route-icon{display:inline-flex;align-items:center;justify-content:center;justify-self:center;align-self:center;width:6.8rem;height:6.8rem;color:var(--color-accent)}.route-icon svg{display:block;width:4.45rem;height:4.45rem;fill:none;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round}.route-card h3,.placeholder-card h3{margin:1.1rem 0 .55rem}.route-card p,.placeholder-card p{color:var(--color-muted);font-size:.94rem}.timeline{display:grid;gap:.75rem;max-width:920px;min-width:0}.timeline-item{display:grid;grid-template-columns:9rem 1fr;gap:1.4rem;border-top:1px solid var(--color-border);padding:1.2rem 0}.timeline-item time{color:var(--color-accent);font-family:var(--font-mono);font-size:.82rem}.timeline-item h2{margin:0 0 .4rem;font-size:1.15rem}.timeline-item p{color:var(--color-muted)}.contact-stage{position:relative;isolation:isolate;display:grid;align-items:start;width:100%;min-height:100vh;margin-top:calc(-1 * var(--main-block-start));margin-bottom:calc(-1 * var(--main-block-end));padding:var(--main-block-start) max(1.25rem,calc((100vw - var(--max-width)) / 2 + 1.25rem)) var(--main-block-end);overflow:hidden}.contact-content{position:relative;z-index:1;display:grid;gap:var(--page-section-gap);width:min(var(--max-width),100%);margin:0 auto;min-width:0}.portrait-field{position:absolute;z-index:0;right:clamp(-16rem,-9vw,-6rem);bottom:clamp(-4rem,-5vw,-2.5rem);width:clamp(42rem,57vw,55rem);height:auto;pointer-events:none;opacity:.12;filter:saturate(.62) contrast(.84);mix-blend-mode:multiply;transform:translate3d(0,var(--portrait-parallax, 0px),0);will-change:transform;-webkit-mask-image:radial-gradient(ellipse at 58% 58%,#000 0 38%,rgba(0,0,0,.58) 60%,transparent 86%);-webkit-mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-image:radial-gradient(ellipse at 58% 58%,#000 0 38%,rgba(0,0,0,.58) 60%,transparent 86%);mask-repeat:no-repeat;mask-size:100% 100%}.contact-panel{display:grid;align-items:center;padding:1.5rem 0;width:min(100%,42rem);min-width:0}.contact-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;width:100%;min-width:0}.contact-link{display:grid;grid-template-columns:2.25rem minmax(0,1fr);gap:.75rem;align-items:center;min-height:4.1rem;padding:.75rem .9rem;border:1px solid var(--surface-card-border);border-radius:var(--radius);background:var(--surface-card-bg);color:var(--color-fg);box-shadow:var(--shadow-sm)}.contact-icon{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border:1px solid rgba(31,109,143,.16);border-radius:7px;color:var(--color-accent);background:#d9edf580}.contact-icon svg{width:1.25rem;height:1.25rem;fill:currentColor}.contact-copy{display:grid;gap:.2rem;min-width:0}.contact-copy span{color:var(--color-accent);font-family:var(--font-mono);font-size:.78rem}.contact-copy strong{font-size:.98rem;font-weight:650;overflow-wrap:anywhere}.contact-link:hover,.contact-link:focus-visible{color:var(--color-fg);text-decoration:none}.record-list{display:grid;gap:.75rem;width:100%;max-width:900px;margin-inline:auto;min-width:0}.record-card{position:relative;display:grid;gap:.4rem;width:100%;min-height:5.6rem;padding:1rem 7.3rem 1rem 1.05rem;border:1px solid var(--surface-card-border);border-radius:var(--radius);background:var(--surface-card-bg);color:var(--color-fg);cursor:pointer;font:inherit;text-align:left;box-shadow:var(--shadow-sm)}.record-card:hover,.record-card:focus-visible{background:var(--surface-card-bg-hover)}.record-year{position:absolute;top:1rem;right:1rem;min-width:4.6rem;border:1px solid rgba(31,109,143,.16);border-radius:7px;background:#d9edf580;color:var(--color-accent);font-family:var(--font-mono);font-size:.78rem;line-height:1;padding:.42rem .52rem;text-align:center}.record-kicker{color:var(--color-accent);font-family:var(--font-mono);font-size:.76rem;line-height:1.35}.record-title{font-size:1.08rem;font-weight:680;line-height:1.28}.record-modal{width:min(760px,calc(100vw - 2rem));max-height:calc(100dvh - 2rem);border:0;padding:0;background:transparent;color:var(--color-fg)}.record-modal::backdrop{background:#12202b33;backdrop-filter:blur(10px)}.record-modal-panel{position:relative;max-height:calc(100dvh - 2rem);overflow:auto;border:1px solid var(--surface-panel-border);border-radius:var(--radius);background:var(--surface-panel-bg);padding:1.35rem;box-shadow:0 24px 80px #12202b29,var(--glass-highlight);scrollbar-color:rgba(18,32,43,.34) rgba(255,255,255,.16)}.record-modal-panel:before,.record-modal-panel:after{content:none}.record-modal-panel::-webkit-scrollbar{width:.72rem}.record-modal-panel::-webkit-scrollbar-track{background:#ffffff24}.record-modal-panel::-webkit-scrollbar-thumb{border:.18rem solid rgba(255,255,255,.18);border-radius:999px;background:#12202b57}.record-modal-close{position:absolute;top:.85rem;right:.85rem;margin:0}.record-modal-close button{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:1px solid rgba(31,109,143,.22);border-radius:7px;background:#ffffff4d;color:var(--color-fg);cursor:pointer;font:inherit;font-size:1.15rem;line-height:1}.record-modal-close button:hover,.record-modal-close button:focus-visible{border-color:#1f6d8f85;background:#ffffff6b}.record-modal-meta{display:flex;flex-wrap:wrap;gap:.5rem;padding-right:2.75rem;margin-bottom:.85rem;color:var(--color-accent);font-family:var(--font-mono);font-size:.78rem}.record-modal-meta span{border:1px solid rgba(31,109,143,.14);border-radius:6px;background:#d9edf575;padding:.24rem .45rem}.record-modal-panel h2{max-width:640px;margin:0 0 1.1rem;font-size:1.38rem;color:#10202d}.record-details{display:grid;gap:.6rem;margin:0}.record-details div{display:grid;grid-template-columns:9.5rem minmax(0,1fr);gap:1rem;border-top:1px solid rgba(175,196,211,.34);padding-top:.65rem}.record-details dt,.record-detail-section h3{color:var(--color-accent);font-family:var(--font-mono);font-size:.78rem;font-weight:560}.record-details dd{margin:0;color:#172938;font-weight:620}.record-detail-section{margin-top:1rem;border-top:1px solid rgba(175,196,211,.34);padding-top:.75rem}.record-detail-section h3{margin:0 0 .6rem}.course-heading{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:.5rem}.course-total{color:#536779;font-family:var(--font-mono);font-size:.78rem}.course-table{width:100%;border-collapse:collapse;font-size:.84rem}.course-table tbody tr{border-top:1px solid rgba(175,196,211,.26)}.course-table td{padding:.3rem .4rem;color:#3d5060;line-height:1.4}.course-table td:first-child{padding-left:0}.course-table-ects{text-align:right;font-family:var(--font-mono);font-size:.82rem;font-variant-numeric:tabular-nums;color:#536779;white-space:nowrap;width:3rem}.credential-button{width:fit-content;margin-top:1.1rem}.credential-button.is-disabled{color:var(--color-muted);border-color:var(--color-border);background:#f8fbfdad;box-shadow:none;cursor:not-allowed}@media(max-width:880px){main{--main-block-start: 3.55rem;--main-block-end: 4.4rem}h1{font-size:2.45rem}.hero{grid-template-columns:1fr;min-height:auto}.route-grid,.placeholder-grid,.timeline-item,.contact-panel{grid-template-columns:1fr}.contact-stage{padding-inline:1.25rem;padding-block:var(--main-block-start) var(--main-block-end)}.portrait-field{top:auto;right:-15rem;bottom:clamp(-4rem,-5vw,-2.5rem);width:39.6rem;opacity:.085;transform:translate3d(0,var(--portrait-parallax, 0px),0)}.contact-list{min-width:0}}@media(max-width:640px){.contact-list{grid-template-columns:1fr}.contact-link{min-height:0}}@media(max-width:540px){main{--main-block-start: 3.4rem;--main-block-end: 5.25rem}h1{font-size:2.1rem}.lead{font-size:1.02rem}.contact-stage{padding-inline:1rem}.portrait-field{top:auto;right:-18rem;bottom:clamp(-4rem,-5vw,-2.5rem);width:35.2rem;opacity:.07}.signal-row{grid-template-columns:1fr;gap:.35rem}.record-card{min-height:0;padding:3rem 1rem 1rem}.record-modal-panel{padding:1.1rem}.record-details div{grid-template-columns:1fr;gap:.25rem}}.navbar[data-astro-cid-5blmo7yk]{background:transparent;position:fixed;top:0;right:0;left:0;z-index:20;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate))}.navbar[data-astro-cid-5blmo7yk]:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:var(--glass-nav-tint);box-shadow:var(--glass-highlight)}.navbar[data-astro-cid-5blmo7yk]:after{content:"";position:absolute;top:100%;right:0;left:0;z-index:0;height:var(--page-edge-fade);pointer-events:none;background:linear-gradient(180deg,#ffffffe0,#ffffff85 42%,#fff0)}.navbar-inner[data-astro-cid-5blmo7yk]{position:relative;z-index:1;max-width:var(--max-width);margin:0 auto;padding:.24rem 1.25rem .28rem;display:flex;align-items:center;justify-content:flex-end}.menu-toggle[data-astro-cid-5blmo7yk]{display:none;width:2.4rem;height:2.4rem;padding:0;border:1px solid var(--color-border);border-radius:6px;background:#ffffffe0;color:var(--color-fg);cursor:pointer;align-items:center;justify-content:center;flex-direction:column;gap:.26rem}.menu-toggle[data-astro-cid-5blmo7yk] span[data-astro-cid-5blmo7yk]{display:block;width:1.05rem;height:2px;border-radius:999px;background:currentColor;transition:transform .16s ease,opacity .16s ease}.menu-toggle[data-astro-cid-5blmo7yk]:hover,.menu-toggle[data-astro-cid-5blmo7yk]:focus-visible{border-color:var(--color-border-strong)}.links[data-astro-cid-5blmo7yk]{list-style:none;margin:0;padding:0;min-width:0;display:flex;justify-content:flex-end;gap:.35rem;flex-wrap:wrap;flex:1 1 auto}.links[data-astro-cid-5blmo7yk] a[data-astro-cid-5blmo7yk]{position:relative;color:var(--color-muted);display:inline-flex;align-items:center;min-height:1.72rem;padding:.2rem .48rem;border:1px solid transparent;border-radius:6px;font-size:.84rem}.links[data-astro-cid-5blmo7yk] a[data-astro-cid-5blmo7yk].active{background:var(--color-subtle);border-color:var(--color-border);color:var(--color-fg)}.links[data-astro-cid-5blmo7yk] a[data-astro-cid-5blmo7yk].active,.links[data-astro-cid-5blmo7yk] a[data-astro-cid-5blmo7yk]:hover,.links[data-astro-cid-5blmo7yk] a[data-astro-cid-5blmo7yk]:focus-visible{color:var(--color-fg);border-color:var(--color-border);text-decoration:none}.links[data-astro-cid-5blmo7yk] a[data-astro-cid-5blmo7yk].active,.links[data-astro-cid-5blmo7yk] a[data-astro-cid-5blmo7yk].active:hover,.links[data-astro-cid-5blmo7yk] a[data-astro-cid-5blmo7yk].active:focus-visible{background:var(--color-subtle);border-color:var(--color-border)}@media(max-width:540px){.navbar[data-astro-cid-5blmo7yk]:before{background:var(--glass-nav-tint)}.navbar[data-astro-cid-5blmo7yk]:after{background:linear-gradient(180deg,#ffffffe6,#ffffff8f 42%,#fff0)}.navbar-inner[data-astro-cid-5blmo7yk]{padding-inline:1rem;justify-content:flex-end}.menu-toggle[data-astro-cid-5blmo7yk]{position:relative;z-index:2;display:inline-flex}.navbar[data-astro-cid-5blmo7yk].menu-open .menu-toggle[data-astro-cid-5blmo7yk] span[data-astro-cid-5blmo7yk]:nth-child(1){transform:translateY(.42rem) rotate(45deg)}.navbar[data-astro-cid-5blmo7yk].menu-open .menu-toggle[data-astro-cid-5blmo7yk] span[data-astro-cid-5blmo7yk]:nth-child(2){opacity:0}.navbar[data-astro-cid-5blmo7yk].menu-open .menu-toggle[data-astro-cid-5blmo7yk] span[data-astro-cid-5blmo7yk]:nth-child(3){transform:translateY(-.42rem) rotate(-45deg)}.links[data-astro-cid-5blmo7yk]{position:absolute;top:calc(100% + .35rem);right:1rem;z-index:1;width:min(14rem,calc(100vw - 2rem));display:grid;gap:0;padding:.35rem;border:1px solid var(--color-border);border-radius:8px;background:#ffffffb8;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));box-shadow:var(--shadow-sm),var(--glass-highlight);opacity:0;transform:translateY(-.25rem);pointer-events:none;visibility:hidden;transition:opacity .16s ease,transform .16s ease,visibility .16s ease}.navbar[data-astro-cid-5blmo7yk].menu-open .links[data-astro-cid-5blmo7yk]{opacity:1;transform:translateY(0);pointer-events:auto;visibility:visible}.links[data-astro-cid-5blmo7yk] a[data-astro-cid-5blmo7yk]{width:100%;min-height:2.35rem;justify-content:flex-start;padding:.35rem .55rem;font-size:.9rem}.links[data-astro-cid-5blmo7yk] a[data-astro-cid-5blmo7yk].active,.links[data-astro-cid-5blmo7yk] a[data-astro-cid-5blmo7yk].active:hover,.links[data-astro-cid-5blmo7yk] a[data-astro-cid-5blmo7yk].active:focus-visible{border-radius:6px;background:var(--color-subtle)}}.footer[data-astro-cid-sz7xmlte]{position:fixed;right:0;bottom:0;left:0;z-index:20;border-top:0;background:var(--glass-nav-tint);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));box-shadow:var(--glass-highlight)}.footer[data-astro-cid-sz7xmlte]:before{content:"";position:absolute;right:0;bottom:100%;left:0;height:var(--page-edge-fade);pointer-events:none;background:linear-gradient(180deg,#fff0,#ffffff85 58%,#ffffffe0)}.footer-inner[data-astro-cid-sz7xmlte]{position:relative;z-index:1;max-width:var(--max-width);margin:0 auto;padding:.24rem 1.25rem .28rem;display:flex;align-items:center;justify-content:space-between;gap:.8rem;flex-wrap:wrap;font-size:.82rem;line-height:1.25}.social[data-astro-cid-sz7xmlte]{display:flex;align-items:center;gap:.42rem;flex-wrap:wrap}.social[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{display:inline-flex;align-items:center;justify-content:center;width:1.72rem;height:1.72rem;border:1px solid transparent;border-radius:6px;color:var(--color-muted)}.social[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover,.social[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:focus-visible{color:var(--color-fg);border-color:var(--color-border);text-decoration:none}.social[data-astro-cid-sz7xmlte] svg{display:block;width:1rem;height:1rem;fill:currentColor}@media(max-width:540px){.footer-inner[data-astro-cid-sz7xmlte]{padding-inline:1rem;gap:.42rem}.social[data-astro-cid-sz7xmlte]{gap:.34rem}}
