.progress-bar{background:linear-gradient(to right,var(--accent),var(--accent-bright));height:2px;left:0;position:fixed;right:0;top:0;-webkit-transform-origin:0;transform-origin:0;width:100%;z-index:100}.landing-page{display:flex;flex-direction:column;height:100vh;justify-content:center}.hero-portrait{aspect-ratio:1;background:#fff;border:1px solid var(--accent-line-strong);border-radius:50%;box-shadow:var(--shadow-panel);flex:none;overflow:hidden;position:relative;width:clamp(170px,38vw,260px)}.hero-portrait img{display:block;height:100%;object-fit:cover;object-position:50% 40%;width:100%}.text-detail{color:var(--ink-dim)}.ldmap_contextmenu_info,.ldmap_tooltip,.longdo-map *{color:var(--ink)}.map-container{border-radius:50px!important;height:100%;overflow:hidden}.qrcode-bar{position:absolute;right:0;top:0;z-index:1}.qr-frame{background:var(--accent-wash);border:1px solid var(--accent-line);border-radius:var(--radius-panel);margin:0 auto;padding:16px;position:relative;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.qr-frame:after,.qr-frame:before{border:2px solid var(--accent);content:"";height:14px;opacity:.9;position:absolute;width:14px}.qr-frame:before{border-bottom:none;border-right:none;border-top-left-radius:var(--radius-panel);left:-1px;top:-1px}.qr-frame:after{border-bottom-right-radius:var(--radius-panel);border-left:none;border-top:none;bottom:-1px;right:-1px}.qr-frame img{aspect-ratio:1;display:block;height:auto;width:clamp(220px,62vw,300px)}.qr-caption{margin-top:16px;text-align:center}.qr-caption .qr-link{color:var(--accent);font-family:var(--font-mono);font-size:14px;letter-spacing:.06em}.qr-caption .qr-link:hover{color:var(--accent-bright)}.area{height:100vh;width:100%}.circles{height:100%;left:0;overflow:hidden;position:absolute;top:0;width:100%}.circles li{-webkit-animation:animate 25s linear infinite;animation:animate 25s linear infinite;background:rgba(255,187,86,.07);bottom:-150px;display:block;height:20px;list-style:none;position:fixed;width:20px}.circles li:first-child{-webkit-animation-delay:0s;animation-delay:0s;height:45px;left:10%;top:5%;width:45px}.circles li:nth-child(2){-webkit-animation-delay:2s;animation-delay:2s;-webkit-animation-duration:12s;animation-duration:12s;height:20px;left:10%;top:70%;width:20px}.circles li:nth-child(3){-webkit-animation-delay:4s;animation-delay:4s;height:20px;left:70%;top:17%;width:20px}.circles li:nth-child(4){-webkit-animation-delay:0s;animation-delay:0s;-webkit-animation-duration:18s;animation-duration:18s;height:60px;left:20%;top:20%;width:60px}.circles li:nth-child(5){-webkit-animation-delay:0s;animation-delay:0s;height:20px;left:65%;top:67%;width:20px}.circles li:nth-child(6){-webkit-animation-delay:3s;animation-delay:3s;height:30px;left:75%;top:80%;width:30px}.circles li:nth-child(7){-webkit-animation-delay:7s;animation-delay:7s;height:50px;left:35%;top:60%;width:50px}.circles li:nth-child(8){-webkit-animation-delay:15s;animation-delay:15s;-webkit-animation-duration:10s;animation-duration:10s;height:25px;left:50%;top:32%;width:25px}.circles li:nth-child(9){-webkit-animation-delay:2s;animation-delay:2s;-webkit-animation-duration:35s;animation-duration:35s;height:15px;left:20%;top:90%;width:15px}.circles li:nth-child(10){-webkit-animation-delay:0s;animation-delay:0s;-webkit-animation-duration:11s;animation-duration:11s;height:50px;left:85%;top:20%;width:50px}@-webkit-keyframes animate{0%{border-radius:0;opacity:1;-webkit-transform:translateY(0) rotate(0deg);transform:translateY(0) rotate(0deg)}to{border-radius:50%;opacity:0;-webkit-transform:translateY(0) rotate(2turn);transform:translateY(0) rotate(2turn)}}@keyframes animate{0%{border-radius:0;opacity:1;-webkit-transform:translateY(0) rotate(0deg);transform:translateY(0) rotate(0deg)}to{border-radius:50%;opacity:0;-webkit-transform:translateY(0) rotate(2turn);transform:translateY(0) rotate(2turn)}}.section-heading{align-items:baseline;display:flex;gap:14px;margin-bottom:26px}.section-heading__index{color:var(--accent);font-family:var(--font-mono);font-size:12px;letter-spacing:.14em;padding-top:2px}.section-heading__title{white-space:nowrap}.section-heading__rule{background:linear-gradient(to right,var(--accent-line),var(--hairline-soft) 45%,transparent);flex:1 1;height:1px;margin-bottom:6px;min-width:24px}@media only screen and (max-width:480px){.section-heading{gap:10px;margin-bottom:20px}.section-heading__title{white-space:normal}}.about{grid-gap:26px 36px;align-items:start;display:grid;gap:26px 36px;grid-template-columns:minmax(0,1.6fr) minmax(250px,.85fr)}.about__lead{color:var(--ink-soft);font-size:15px;line-height:1.9;margin:0}.about__lead+.about__lead{margin-top:14px}.about__mark{color:var(--ink);font-weight:500}.about__accent{color:var(--accent)}.about__card{padding:18px 20px 20px}.about__card-title{margin-bottom:14px}.about__row{grid-gap:12px;display:grid;gap:12px;grid-template-columns:88px 1fr;padding:5px 0}.about__row+.about__row{border-top:1px solid var(--hairline-soft)}.about__label{color:var(--ink-faint);font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;line-height:1.8;text-transform:uppercase}.about__value{color:var(--ink-soft);font-size:13px;line-height:1.8}@media only screen and (max-width:780px){.about{grid-template-columns:1fr}}@media only screen and (max-width:480px){.about__lead{font-size:14px;line-height:1.85}.about__row{grid-template-columns:76px 1fr}}.timeline{list-style:none;margin:0;padding:0}.timeline__item{padding:0 0 30px 32px;position:relative}.timeline__item:last-child{padding-bottom:0}.timeline__item:before{background:linear-gradient(to bottom,var(--accent-line),var(--hairline));bottom:0;content:"";left:4px;position:absolute;top:15px;width:1px}.timeline__item:last-child:before{background:linear-gradient(to bottom,var(--accent-line),transparent);bottom:auto;height:46px}.timeline__node{background:var(--surface);border:1px solid var(--accent-line-strong);border-radius:50%;height:9px;left:0;position:absolute;top:6px;transition:background .25s ease,box-shadow .25s ease;width:9px}.timeline__item:hover .timeline__node{background:var(--accent-line-strong);box-shadow:0 0 0 4px var(--accent-glow)}.timeline__item--current .timeline__node{background:var(--accent);border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-glow)}.timeline__meta{align-items:center;display:flex;gap:10px}.timeline__duration{color:var(--accent);font-family:var(--font-mono);font-size:12px;letter-spacing:.08em}.timeline__badge{background:var(--accent-wash);border:1px solid var(--accent-line);border-radius:var(--radius-pill);color:rgba(255,210,150,.95);font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;padding:2px 8px;text-transform:uppercase}.timeline__title{color:var(--ink);font-size:17px;font-weight:500;line-height:1.35;margin:6px 0 0}.timeline__subtitle{color:var(--ink-soft);font-size:14px;line-height:1.6;margin:4px 0 0}.timeline__detail{color:var(--ink-faint);font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;margin:6px 0 0}@media only screen and (max-width:480px){.timeline__item{padding:0 0 26px 24px}.timeline__title{font-size:16px}}.project-list{grid-gap:14px;counter-reset:work;display:grid;gap:14px}.card-container{cursor:pointer}.card-project{background:var(--surface-panel);border:1px solid var(--hairline);border-left:2px solid var(--accent-line-strong);border-radius:var(--radius-panel);display:grid;grid-template-columns:96px 1fr;overflow:hidden;position:relative;transition:border-color .25s ease,box-shadow .25s ease,-webkit-transform .25s ease;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease,-webkit-transform .25s ease}.card-project:hover{border-color:rgba(255,187,86,.24);box-shadow:var(--shadow-panel),0 0 26px var(--accent-glow);-webkit-transform:translateY(-3px);transform:translateY(-3px)}.card-project__index{align-items:center;background-color:rgba(255,187,86,.04);background-image:repeating-linear-gradient(0deg,rgba(255,187,86,.11) 0 1px,transparent 1px 22px),repeating-linear-gradient(90deg,rgba(255,187,86,.11) 0 1px,transparent 1px 22px);border-right:1px solid hsla(0,0%,100%,.06);display:flex;justify-content:center;position:relative;transition:background-color .25s ease}.card-project:hover .card-project__index{background-color:rgba(255,187,86,.08)}.card-project__index:before{color:rgba(255,187,86,.75);content:counter(work,decimal-leading-zero);counter-increment:work;font-family:var(--font-mono);font-size:26px;letter-spacing:.04em;text-shadow:0 2px 12px rgba(0,0,0,.5);transition:color .25s ease}.card-project:hover .card-project__index:before{color:var(--accent)}.card-project__body{font-family:var(--font-sans);padding:20px 22px}.card-project__title{color:var(--ink);font-size:18px;font-weight:500;line-height:1.35;margin:0}.card-project__subtitle{color:var(--accent);font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;margin:5px 0 0;text-transform:uppercase}.card-project__tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.card-project__tag{background:var(--accent-wash);border:1px solid var(--accent-line);border-radius:var(--radius-pill);color:rgba(255,210,150,.95);font-family:var(--font-mono);font-size:10px;letter-spacing:.04em;padding:3px 9px}.card-project__action{align-items:center;background:none;border:none;color:var(--ink-dim);cursor:pointer;display:inline-flex;font-family:var(--font-mono);font-size:11px;gap:7px;letter-spacing:.12em;margin-top:16px;padding:0;text-transform:uppercase;transition:color .2s ease}.card-project__arrow{transition:-webkit-transform .25s ease;transition:transform .25s ease;transition:transform .25s ease,-webkit-transform .25s ease}.card-project:hover .card-project__action,.card-project__action:focus-visible{color:var(--accent)}.card-project:hover .card-project__arrow{-webkit-transform:translateX(4px);transform:translateX(4px)}.card-project__action:focus-visible{border-radius:4px;outline:1px solid rgba(255,187,86,.6);outline-offset:4px}.awssld__box,.awssld__container figure,.awssld__content{display:block;height:100%;left:0;position:absolute;top:0;width:100%}.awssld__bullets button,.awssld__controls button{outline-color:0;outline-style:none;outline-width:0}.awssld{--organic-arrow-thickness:4px;--organic-arrow-height:40px;--slider-height-percentage:60%;--loader-bar-color:#851515;--loader-bar-height:6px;--control-button-width:10%;--control-button-height:25%;--control-button-opacity:0.5;--control-button-hover-opacity:0.75;--control-button-background:transparent;--transition-bezier:cubic-bezier(0.5,0.075,0.25,0.95);--slider-transition-duration:575ms;--organic-arrow-color:#6a6a6a;--organic-arrow-border-radius:0;--control-bullet-color:#6a6a6a;--control-bullet-active-color:#6a6a6a;--content-background-color:#2f2f2f;max-width:100%}.awssld,.awssld__wrapper{display:block;position:relative;width:100%}.awssld__wrapper{height:100%;overflow:hidden}.awssld__container{display:block;height:0;padding-bottom:var(--slider-height-percentage);width:100%}@media (max-width:500px){.awssld__container{padding-bottom:calc(var(--slider-height-percentage)*1.25)}}.awssld__startUp{background-color:red;height:100%;width:100%}.awssld__startUp>div{align-items:center;display:flex;height:100%;justify-content:center;width:100%}.awssld__startUp img{height:auto;width:35%}.awssld__content{align-items:center;background-color:var(--content-background-color);display:flex;justify-content:center;overflow:hidden}.awssld__content>img,.awssld__content>video{height:100%;left:0;object-fit:cover;position:absolute;top:0;width:100%}.awssld__controls button{align-items:center;background-color:var(--control-button-background);border:none;color:#fff;cursor:pointer;display:flex;height:var(--control-button-height);justify-content:center;position:absolute;top:calc(50% - var(--control-button-height)*.5);width:var(--control-button-width);z-index:10}.awssld__controls button .awssld__controls__arrow-left,.awssld__controls button .awssld__controls__arrow-right{opacity:var(--control-button-opacity)}.awssld__controls button:hover .awssld__controls__arrow-left,.awssld__controls button:hover .awssld__controls__arrow-right{opacity:var(--control-button-opacity-hover)}.awssld__controls--active .awssld__controls__arrow-left{opacity:var(--control-button-opacity-hover);-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}.awssld__controls--active .awssld__controls__arrow-right{opacity:var(--control-button-opacity-hover);-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}.awssld__controls--hidden{display:none}@media (max-width:520px){.awssld__controls{visibility:hidden}}.awssld__bar{background-color:var(--loader-bar-color);display:block;height:var(--loader-bar-height);left:0;position:absolute;top:0;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0);transition:-webkit-transform 3s var(--transition-bezier);transition:transform 3s var(--transition-bezier);transition:transform 3s var(--transition-bezier),-webkit-transform 3s var(--transition-bezier);width:100%;z-index:101}.awssld__bar--active{-webkit-transform:translate3d(-20%,0,0);transform:translate3d(-20%,0,0)}.awssld__bar--end{-webkit-transform:translateZ(0);transform:translateZ(0);transition-duration:.3s}.awssld__next{right:0}.awssld__prev{left:0}.awssld__box{visibility:hidden;z-index:1}.awssld--animated{visibility:visible;will-change:transform}.awssld--animated-mobile{transition:-webkit-transform 325ms cubic-bezier(.15,.65,.1,1);transition:transform 325ms cubic-bezier(.15,.65,.1,1);transition:transform 325ms cubic-bezier(.15,.65,.1,1),-webkit-transform 325ms cubic-bezier(.15,.65,.1,1);will-change:transform}.awssld--active{-webkit-transform:translateZ(0);transform:translateZ(0);visibility:visible;z-index:2}.awssld--moveLeft,.awssld--moveRight{-webkit-backface-visibility:hidden;backface-visibility:hidden}.awssld--moveRight{-webkit-animation:slideFromRight var(--slider-transition-duration) both var(--transition-bezier);animation:slideFromRight var(--slider-transition-duration) both var(--transition-bezier)}.awssld--moveLeft{-webkit-animation:slideFromLeft var(--slider-transition-duration) both var(--transition-bezier);animation:slideFromLeft var(--slider-transition-duration) both var(--transition-bezier)}.awssld--exit{z-index:0}.awssld--exit.awssld--moveLeft{-webkit-animation:slideToLeft var(--slider-transition-duration) both var(--transition-bezier);animation:slideToLeft var(--slider-transition-duration) both var(--transition-bezier)}.awssld--exit.awssld--moveRight{-webkit-animation:slideToRight var(--slider-transition-duration) both var(--transition-bezier);animation:slideToRight var(--slider-transition-duration) both var(--transition-bezier)}.awssld--first .awssld__prev,.awssld--last .awssld__next{visibility:hidden}.awssld--fill-parent{height:100%!important;left:0;position:absolute!important;top:0;width:100%!important}.awssld--fill-parent .awssld__container{height:100%;padding:0}.awssld__bullets{align-items:center;bottom:-40px;display:flex;justify-content:center;position:absolute;width:100%}.awssld__bullets button{background:var(--control-bullet-color);border:none;border-radius:50%;cursor:pointer;display:block;height:16px;margin:5px;overflow:hidden;padding:0;text-indent:-9999px;transition:background-color .175s ease-out,-webkit-transform .225s cubic-bezier(.8,1.35,.75,1.45);transition:transform .225s cubic-bezier(.8,1.35,.75,1.45),background-color .175s ease-out;transition:transform .225s cubic-bezier(.8,1.35,.75,1.45),background-color .175s ease-out,-webkit-transform .225s cubic-bezier(.8,1.35,.75,1.45);width:16px}.awssld__bullets .awssld__bullets--loading,.awssld__bullets button:hover{-webkit-transform:scale(1.2);transform:scale(1.2)}.awssld__bullets .awssld__bullets--active{background:var(--control-bullet-active-color)}.awssld__bullets .awssld__bullets--active,.awssld__bullets .awssld__bullets--active:hover{-webkit-transform:scale(1.5);transform:scale(1.5)}.awssld__controls__arrow-left,.awssld__controls__arrow-right{display:block;height:var(--organic-arrow-height);position:relative;transition:opacity .2s ease-out,-webkit-transform .2s ease-out .125s;transition:transform .2s ease-out .125s,opacity .2s ease-out;transition:transform .2s ease-out .125s,opacity .2s ease-out,-webkit-transform .2s ease-out .125s;width:100%}.awssld__controls__arrow-left:after,.awssld__controls__arrow-left:before,.awssld__controls__arrow-right:after,.awssld__controls__arrow-right:before{background-color:var(--organic-arrow-color);border-radius:var(--organic-arrow-border-radius);content:" ";height:100%;position:absolute;right:calc(50% - (var(--organic-arrow-height) + var(--organic-arrow-thickness))*.7071/2);transition:background-color .15s ease-out,-webkit-transform .15s ease-out;transition:transform .15s ease-out,background-color .15s ease-out;transition:transform .15s ease-out,background-color .15s ease-out,-webkit-transform .15s ease-out;width:var(--organic-arrow-thickness)}.awssld__controls__arrow-left:before,.awssld__controls__arrow-right:before{top:-50%;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);-webkit-transform-origin:100% 100% 0;transform-origin:100% 100% 0}.awssld__controls__arrow-left:after,.awssld__controls__arrow-right:after{top:50%;-webkit-transform:rotate(45deg);transform:rotate(45deg);-webkit-transform-origin:100% 0 0;transform-origin:100% 0 0}.awssld__controls__arrow-right--active{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}.awssld__controls__arrow-right--active:after{-webkit-transform:rotate(90deg) translate3d(50%,0,0)!important;transform:rotate(90deg) translate3d(50%,0,0)!important}.awssld__controls__arrow-right--active:before{-webkit-transform:rotate(-90deg) translate3d(50%,0,0)!important;transform:rotate(-90deg) translate3d(50%,0,0)!important}.awssld__controls__arrow-left:after,.awssld__controls__arrow-left:before{left:calc(50% - (var(--organic-arrow-height) + var(--organic-arrow-thickness))*.7071/2);right:auto}.awssld__controls__arrow-left:before{top:-50%;-webkit-transform:rotate(45deg);transform:rotate(45deg);-webkit-transform-origin:0 100% 0;transform-origin:0 100% 0}.awssld__controls__arrow-left:after{top:50%;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);-webkit-transform-origin:0 0 0;transform-origin:0 0 0}.awssld__controls__arrow-left--active{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}.awssld__controls__arrow-left--active:after{-webkit-transform:rotate(-90deg) translate3d(-50%,0,0)!important;transform:rotate(-90deg) translate3d(-50%,0,0)!important}.awssld__controls__arrow-left--active:before{-webkit-transform:rotate(90deg) translate3d(-50%,0,0)!important;transform:rotate(90deg) translate3d(-50%,0,0)!important}.awssld__controls button:hover .awssld__controls__arrow-left:before{opacity:1;-webkit-transform:rotate(30deg);transform:rotate(30deg)}.awssld__controls button:hover .awssld__controls__arrow-left:after,.awssld__controls button:hover .awssld__controls__arrow-right:before{opacity:1;-webkit-transform:rotate(-30deg);transform:rotate(-30deg)}.awssld__controls button:hover .awssld__controls__arrow-right:after{opacity:1;-webkit-transform:rotate(30deg);transform:rotate(30deg)}.awssld__timer{--timer-delay:2000ms;--timer-release:200ms;--timer-height:4px;--timer-background-color:rgba(0,0,0,.15);background-color:var(--timer-background-color);height:var(--timer-height);left:0;position:absolute;top:0;-webkit-transform:translateX(-100%);transform:translateX(-100%);width:100%;z-index:100}.awssld__timer--animated{transition:-webkit-transform var(--timer-delay) linear;transition:transform var(--timer-delay) linear;transition:transform var(--timer-delay) linear,-webkit-transform var(--timer-delay) linear;will-change:transform}.awssld__timer--run{-webkit-transform:translateX(0);transform:translateX(0)}.awssld__timer--fast{-webkit-transform:translateX(-.00001px);transform:translateX(-.00001px);transition:-webkit-transform calc(var(--timer-release)/2) linear;transition:transform calc(var(--timer-release)/2) linear;transition:transform calc(var(--timer-release)/2) linear,-webkit-transform calc(var(--timer-release)/2) linear}.awssld__timer--end{-webkit-transform:translateX(-.0001px);transform:translateX(-.0001px);transition:-webkit-transform var(--timer-release) linear;transition:transform var(--timer-release) linear;transition:transform var(--timer-release) linear,-webkit-transform var(--timer-release) linear}.awssld__timer--hidden{display:none}@-webkit-keyframes slideFromLeft{0%{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes slideFromLeft{0%{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}@-webkit-keyframes slideFromRight{0%{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes slideFromRight{0%{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}@-webkit-keyframes slideToLeft{0%{-webkit-transform:translateZ(0);transform:translateZ(0)}to{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@keyframes slideToLeft{0%{-webkit-transform:translateZ(0);transform:translateZ(0)}to{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@-webkit-keyframes slideToRight{0%{-webkit-transform:translateZ(0);transform:translateZ(0)}to{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}@keyframes slideToRight{0%{-webkit-transform:translateZ(0);transform:translateZ(0)}to{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}.spec-grid{grid-gap:30px 40px;display:grid;gap:30px 40px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.spec-group__title{color:var(--ink);font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.spec-list{margin:12px 0 0}.spec-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:168px 1fr;padding:4px 0}.spec-row__label{color:var(--ink-faint);font-family:var(--font-mono);font-size:11px;line-height:1.7;margin:0}.spec-row__value{color:var(--ink-soft);font-size:14px;line-height:1.7;margin:0}@media only screen and (max-width:620px){.spec-row{gap:2px;grid-template-columns:1fr;padding:6px 0}}.modal-copy{color:var(--ink-soft);font-size:14px;line-height:1.85}.modal-figure{margin:0}.modal-figure__media{background:var(--surface-glass);border:1px solid var(--hairline);border-radius:var(--radius-panel);display:block;width:100%}.modal-figure__caption{color:var(--ink-faint);font-size:12px;line-height:1.7;margin-top:10px}.map-tour{--tour-accent:var(--accent);--tour-ink:var(--ink);--tour-mono:var(--font-mono);background:#0d1117;border-radius:24px;box-shadow:0 24px 60px rgba(0,0,0,.45),inset 0 0 0 1px rgba(255,187,86,.16);height:100%;overflow:hidden;position:relative;width:100%}.map-tour__canvas{cursor:default;height:100%;touch-action:pan-y!important;width:100%}.map-tour__canvas .maplibregl-canvas,.map-tour__canvas canvas{cursor:default!important;touch-action:pan-y!important}.map-tour__frame{background:linear-gradient(var(--tour-accent),var(--tour-accent)) no-repeat 0 0 /22px 1px,linear-gradient(var(--tour-accent),var(--tour-accent)) no-repeat 0 0 /1px 22px,linear-gradient(var(--tour-accent),var(--tour-accent)) no-repeat 100% 0 /22px 1px,linear-gradient(var(--tour-accent),var(--tour-accent)) no-repeat 100% 0 /1px 22px,linear-gradient(var(--tour-accent),var(--tour-accent)) no-repeat 0 100% /22px 1px,linear-gradient(var(--tour-accent),var(--tour-accent)) no-repeat 0 100% /1px 22px,linear-gradient(var(--tour-accent),var(--tour-accent)) no-repeat 100% 100% /22px 1px,linear-gradient(var(--tour-accent),var(--tour-accent)) no-repeat 100% 100% /1px 22px;border-radius:12px;inset:14px;opacity:.55;z-index:2}.map-tour__coords,.map-tour__frame{pointer-events:none;position:absolute}.map-tour__coords{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:rgba(13,17,23,.72);border:1px solid rgba(255,187,86,.18);border-radius:8px;color:hsla(42,31%,94%,.72);font-family:var(--tour-mono);font-size:11px;letter-spacing:.06em;padding:5px 10px;right:26px;top:30px;z-index:3}.map-tour .longdo-map .maplibregl-ctrl-attrib,.map-tour .maplibregl-ctrl-attrib{background:rgba(13,17,23,.72)!important;border-radius:8px 0 0 0;font-size:10px}.map-tour .maplibregl-ctrl-attrib a{color:hsla(42,31%,94%,.62)!important}.map-tour__card{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:linear-gradient(155deg,rgba(16,20,28,.94),rgba(16,20,28,.78));border:1px solid rgba(255,187,86,.22);border-left:2px solid var(--tour-accent);border-radius:16px;box-shadow:0 18px 40px rgba(0,0,0,.5);font-family:var(--font-sans);left:26px;padding:18px 20px 20px;position:absolute;top:26px;width:min(330px,calc(100% - 52px));z-index:2}.map-tour__card.is-milestone{border-color:rgba(255,187,86,.45);box-shadow:0 18px 44px rgba(0,0,0,.55),0 0 0 1px rgba(255,187,86,.18),0 0 34px rgba(255,187,86,.12)}.map-tour__star{font-size:11px;margin-right:6px}.map-tour__eyebrow{align-items:baseline;display:flex;gap:12px;justify-content:space-between;margin-bottom:10px}.map-tour__year{color:var(--tour-accent);font-family:var(--tour-mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase}.map-tour__count{color:hsla(42,31%,94%,.45);font-family:var(--tour-mono);font-size:11px}.map-tour__title{color:var(--tour-ink);font-size:19px;font-weight:500;line-height:1.3;margin:0}.map-tour__place{color:hsla(42,31%,94%,.5);font-family:var(--tour-mono);font-size:11px;letter-spacing:.08em;margin:4px 0 0}.map-tour__summary{color:hsla(42,31%,94%,.78);font-size:13px;line-height:1.65;margin:12px 0 0}.map-tour__stack{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.map-tour__chip{background:rgba(255,187,86,.08);border:1px solid rgba(255,187,86,.28);border-radius:999px;color:rgba(255,210,150,.95);font-family:var(--tour-mono);font-size:10px;letter-spacing:.04em;padding:3px 9px}.map-tour__controls{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(13,17,23,.86);border:1px solid hsla(0,0%,100%,.1);border-radius:999px;bottom:22px;display:flex;gap:8px;left:26px;padding:7px 10px;position:absolute;z-index:2}.map-tour__btn{align-items:center;background:hsla(0,0%,100%,.07);border:none;border-radius:50%;color:var(--tour-ink);cursor:pointer;display:flex;font-size:14px;height:28px;justify-content:center;line-height:1;transition:background .18s ease,-webkit-transform .18s ease;transition:background .18s ease,transform .18s ease;transition:background .18s ease,transform .18s ease,-webkit-transform .18s ease;width:28px}.map-tour__btn:hover{background:rgba(255,187,86,.22);-webkit-transform:translateY(-1px);transform:translateY(-1px)}.map-tour__btn--play{background:var(--tour-accent);color:#14171f;font-size:11px}.map-tour__btn--play:hover{background:#ffca7a}.map-tour__dots{align-items:center;display:flex;gap:6px;margin-left:4px}.map-tour__dot{background:hsla(0,0%,100%,.2);border:none;border-radius:999px;cursor:pointer;height:3px;overflow:hidden;padding:0;position:relative;transition:background .2s ease;width:22px}.map-tour__dot:hover{background:hsla(0,0%,100%,.4)}.map-tour__dot.is-active{background:rgba(255,187,86,.35)}.map-tour__dot-fill{-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;-webkit-animation-name:tour-dot-fill;animation-name:tour-dot-fill;-webkit-animation-timing-function:linear;animation-timing-function:linear;background:var(--tour-accent);inset:0;position:absolute;-webkit-transform-origin:left center;transform-origin:left center}@-webkit-keyframes tour-dot-fill{0%{-webkit-transform:scaleX(0);transform:scaleX(0)}to{-webkit-transform:scaleX(1);transform:scaleX(1)}}@keyframes tour-dot-fill{0%{-webkit-transform:scaleX(0);transform:scaleX(0)}to{-webkit-transform:scaleX(1);transform:scaleX(1)}}.longdo-map .tour-pin,.tour-pin{align-items:center;cursor:pointer;display:flex;height:44px;justify-content:center;position:relative;width:44px}.longdo-map .tour-pin__dot,.tour-pin__dot{background:rgba(255,187,86,.55);border:1.5px solid hsla(0,0%,100%,.85);border-radius:50%;box-shadow:0 0 10px rgba(255,187,86,.5);height:11px;transition:all .25s ease;width:11px}.longdo-map .tour-pin.is-active .tour-pin__dot,.tour-pin.is-active .tour-pin__dot{background:#ffbb56;background:var(--tour-accent,#ffbb56);box-shadow:0 0 0 5px rgba(255,187,86,.18),0 0 18px rgba(255,187,86,.85);height:15px;width:15px}.longdo-map .tour-pin--milestone .tour-pin__dot,.tour-pin--milestone .tour-pin__dot{background:rgba(255,187,86,.8);box-shadow:0 0 0 3px rgba(255,187,86,.16),0 0 14px rgba(255,187,86,.7);height:13px;width:13px}.longdo-map .tour-pin--milestone.is-active .tour-pin__dot,.tour-pin--milestone.is-active .tour-pin__dot{height:18px;width:18px}.longdo-map .tour-pin__wave,.tour-pin__wave{border:1px solid rgba(255,187,86,.7);border-radius:50%;height:15px;opacity:0;position:absolute;width:15px}.longdo-map .tour-pin.is-active .tour-pin__wave,.tour-pin.is-active .tour-pin__wave{-webkit-animation:tour-pin-wave 2.1s ease-out infinite;animation:tour-pin-wave 2.1s ease-out infinite}@-webkit-keyframes tour-pin-wave{0%{opacity:.85;-webkit-transform:scale(1);transform:scale(1)}to{opacity:0;-webkit-transform:scale(2.9);transform:scale(2.9)}}@keyframes tour-pin-wave{0%{opacity:.85;-webkit-transform:scale(1);transform:scale(1)}to{opacity:0;-webkit-transform:scale(2.9);transform:scale(2.9)}}.longdo-map .tour-pin__label,.tour-pin__label{color:hsla(42,31%,94%,.55);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:10px;letter-spacing:.08em;opacity:0;position:absolute;text-shadow:0 1px 5px rgba(0,0,0,.95);top:28px;-webkit-transform:translateY(-3px);transform:translateY(-3px);transition:opacity .25s ease,-webkit-transform .25s ease;transition:opacity .25s ease,transform .25s ease;transition:opacity .25s ease,transform .25s ease,-webkit-transform .25s ease;white-space:nowrap}.longdo-map .tour-pin.is-active .tour-pin__label,.tour-pin.is-active .tour-pin__label{color:#ffbb56;color:var(--tour-accent,#ffbb56);opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}@media only screen and (max-width:620px){.map-tour__card{left:16px;padding:14px 16px 16px;top:16px;width:calc(100% - 32px)}.map-tour__title{font-size:16px}.map-tour__summary{font-size:12px;line-height:1.55}.map-tour__controls{bottom:40px;left:16px}.map-tour__coords{bottom:86px;font-size:10px;right:16px;top:auto}}.icon-skill{background:var(--surface-glass);border:1px solid var(--hairline-soft);border-radius:12px;color:var(--ink-dim);font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;padding:14px 8px 12px;transition:color .22s ease,border-color .22s ease,background .22s ease;width:104px}.icon-skill:hover{background:var(--accent-wash);border-color:var(--accent-line);color:var(--accent)}.video-responsive{height:0;overflow:hidden;padding-bottom:56.25%;position:relative}.video-responsive iframe{height:100%;left:0;position:absolute;top:0;width:100%}.circle-icon{margin-left:8px}@media (min-width:480px){.circle-icon{margin-left:13px}}:root{--accent:#ffbb56;--accent-bright:#ffca7a;--accent-line:rgba(255,187,86,.28);--accent-line-strong:rgba(255,187,86,.45);--accent-wash:rgba(255,187,86,.08);--accent-glow:rgba(255,187,86,.12);--ink:#f4f1ea;--ink-soft:hsla(42,31%,94%,.78);--ink-dim:hsla(42,31%,94%,.55);--ink-faint:hsla(42,31%,94%,.38);--surface:#0d1117;--surface-panel:linear-gradient(118deg,rgba(22,27,36,.96),rgba(16,20,28,.92));--surface-glass:rgba(13,17,23,.78);--hairline:hsla(0,0%,100%,.08);--hairline-soft:hsla(0,0%,100%,.05);--shadow-panel:0 16px 34px rgba(0,0,0,.45);--shadow-lifted:0 20px 44px rgba(0,0,0,.55);--font-sans:"Kanit",sans-serif;--font-mono:ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;--radius-panel:14px;--radius-pill:999px}.eyebrow{color:#ffbb56;color:var(--accent);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase}.panel{background:linear-gradient(118deg,rgba(22,27,36,.96),rgba(16,20,28,.92));background:var(--surface-panel);border:1px solid hsla(0,0%,100%,.08);border-left:2px solid rgba(255,187,86,.45);border:1px solid var(--hairline);border-left:2px solid var(--accent-line-strong);border-radius:14px;border-radius:var(--radius-panel)}.chip{background:rgba(255,187,86,.08);background:var(--accent-wash);border:1px solid rgba(255,187,86,.28);border:1px solid var(--accent-line);border-radius:999px;border-radius:var(--radius-pill);color:rgba(255,210,150,.95);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-family:var(--font-mono);font-size:10px;letter-spacing:.04em;padding:3px 9px}
/*# sourceMappingURL=main.a4c02ca9.css.map*/