*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:Noto Sans SC,PingFang SC,Microsoft YaHei,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.static{position:static}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.top-0{top:0}.z-50{z-index:50}.mx-auto{margin-left:auto;margin-right:auto}.mt-10{margin-top:2.5rem}.mt-12{margin-top:3rem}.mt-14{margin-top:3.5rem}.mt-16{margin-top:4rem}.mt-2{margin-top:.5rem}.mt-2\.5{margin-top:.625rem}.mt-20{margin-top:5rem}.mt-24{margin-top:6rem}.mt-28{margin-top:7rem}.mt-3{margin-top:.75rem}.mt-32{margin-top:8rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-7{margin-top:1.75rem}.mt-8{margin-top:2rem}.mt-9{margin-top:2.25rem}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.\!grid{display:grid!important}.grid{display:grid}.hidden{display:none}.aspect-square{aspect-ratio:1/1}.h-1\.5{height:.375rem}.h-6{height:1.5rem}.h-full{height:100%}.h-px{height:1px}.min-h-\[500px\]{min-height:500px}.min-h-\[74px\]{min-height:74px}.min-h-screen{min-height:100vh}.w-1\.5{width:.375rem}.w-6{width:1.5rem}.w-full{width:100%}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-\[410px\]{max-width:410px}.max-w-\[520px\]{max-width:520px}.max-w-xl{max-width:36rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scroll-mt-28{scroll-margin-top:7rem}.list-disc{list-style-type:disc}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-12{gap:3rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-7{gap:1.75rem}.gap-8{gap:2rem}.gap-x-5{column-gap:1.25rem}.gap-x-6{column-gap:1.5rem}.gap-y-1{row-gap:.25rem}.gap-y-2{row-gap:.5rem}.gap-y-3{row-gap:.75rem}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.whitespace-pre-wrap{white-space:pre-wrap}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-line{border-color:var(--line)}.border-line-strong{border-color:var(--line-strong)}.bg-\[rgba\(18\2c 13\2c 8\2c 0\.72\)\]{background-color:rgba(18,13,8,.72)}.bg-card{background-color:var(--card-bg)}.bg-gold-bright{background-color:var(--gold-bright)}.bg-line{background-color:var(--line)}.bg-\[radial-gradient\(closest-side\2c rgba\(216\2c 168\2c 78\2c 0\.22\)\2c rgba\(216\2c 168\2c 78\2c 0\.06\)_55\%\2c transparent_75\%\)\]{background-image:radial-gradient(closest-side,rgba(216,168,78,.22),rgba(216,168,78,.06) 55%,transparent 75%)}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.from-gold-bright{--tw-gradient-from:var(--gold-bright) var(--tw-gradient-from-position);--tw-gradient-to:hsla(0,0%,100%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.to-gold{--tw-gradient-to:var(--gold) var(--tw-gradient-to-position)}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-7{padding:1.75rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-7{padding-left:1.75rem;padding-right:1.75rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-24{padding-top:6rem;padding-bottom:6rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.pb-24{padding-bottom:6rem}.pl-5{padding-left:1.25rem}.pt-10{padding-top:2.5rem}.pt-14{padding-top:3.5rem}.pt-6{padding-top:1.5rem}.pt-8{padding-top:2rem}.text-center{text-align:center}.font-sans{font-family:Noto Sans SC,PingFang SC,Microsoft YaHei,sans-serif}.font-serif{font-family:"Noto Serif SC","Source Han Serif SC",STSong,SimSun,serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-6xl{font-size:3.75rem;line-height:1}.text-\[15px\]{font-size:15px}.text-\[17px\]{font-size:17px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.leading-\[1\.15\]{line-height:1.15}.leading-\[1\.7\]{line-height:1.7}.leading-\[1\.8\]{line-height:1.8}.leading-\[1\.9\]{line-height:1.9}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.tracking-\[0\.14em\]{letter-spacing:.14em}.tracking-\[0\.16em\]{letter-spacing:.16em}.tracking-\[0\.18em\]{letter-spacing:.18em}.tracking-\[0\.2em\]{letter-spacing:.2em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-\[\#241505\]{--tw-text-opacity:1;color:rgb(36 21 5/var(--tw-text-opacity,1))}.text-cream{color:var(--cream)}.text-gold{color:var(--gold)}.text-gold-bright{color:var(--gold-bright)}.text-ink{color:var(--foreground)}.text-ink-dim{color:var(--text-dim)}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-70{opacity:.7}.shadow-\[0_4px_24px_rgba\(216\2c 168\2c 78\2c 0\.35\)\]{--tw-shadow:0 4px 24px rgba(216,168,78,.35);--tw-shadow-colored:0 4px 24px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-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{--tw-backdrop-blur:blur(8px);-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-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.text-balance{text-wrap:balance}.\[animation-delay\:120ms\]{animation-delay:.12s}.\[animation-delay\:240ms\]{animation-delay:.24s}.\[animation-delay\:300ms\]{animation-delay:.3s}.\[animation-delay\:360ms\]{animation-delay:.36s}.\[animation-delay\:480ms\]{animation-delay:.48s}:root{--background:#120d08;--bg-1:#191109;--bg-2:#24180d;--foreground:#e6d2a3;--gold:#d8a84e;--gold-bright:#f2c76e;--gold-dim:#b8862b;--cream:#f4ead6;--text-dim:#b3a184;--line:hsla(40,84%,69%,.16);--line-strong:hsla(40,84%,69%,.4);--card-bg:rgba(255,244,214,.045)}html{scroll-padding-top:96px}body{color:var(--foreground);background:radial-gradient(1000px 700px at 82% 8%,rgba(216,168,78,.2),transparent 62%),radial-gradient(900px 600px at 30% 46%,rgba(184,134,43,.07),transparent 65%),radial-gradient(760px 480px at 6% 96%,rgba(184,134,43,.1),transparent 65%),linear-gradient(180deg,var(--bg-2) 0,var(--bg-1) 30%,var(--background) 100%);background-color:var(--background);min-height:100vh}.portal-card{overflow:hidden;border-radius:14px;border:1px solid hsla(40,84%,69%,.22);background:linear-gradient(180deg,rgba(216,168,78,.08),rgba(255,244,214,.045) 45%,rgba(255,244,214,.02));box-shadow:inset 0 1px 0 hsla(40,84%,69%,.22),inset 0 0 42px rgba(216,168,78,.05);transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease}.portal-card:before{top:0;left:12%;right:12%;height:1px;background:linear-gradient(90deg,transparent,hsla(40,84%,69%,.7),transparent)}.portal-card:hover{transform:translateY(-4px);border-color:hsla(40,84%,69%,.45);box-shadow:inset 0 1px 0 hsla(40,84%,69%,.3),0 12px 40px rgba(0,0,0,.35),0 0 32px rgba(216,168,78,.14)}.icon-disc{display:flex;align-items:center;justify-content:center;width:3.25rem;height:3.25rem;border-radius:9999px;border:1px solid hsla(40,84%,69%,.3);background:radial-gradient(circle at 35% 30%,rgba(216,168,78,.24),rgba(216,168,78,.05) 72%);box-shadow:inset 0 0 14px rgba(216,168,78,.14),0 0 18px rgba(216,168,78,.1)}.step-card{border-radius:12px;border:1px solid hsla(40,84%,69%,.14);background:rgba(255,244,214,.03);transition:border-color .3s ease,background-color .3s ease}.step-card:hover{border-color:hsla(40,84%,69%,.32);background:rgba(216,168,78,.06)}@keyframes fade-up{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes glow-breathe{0%,to{opacity:.55;filter:drop-shadow(0 0 6px rgba(216,168,78,.2))}50%{opacity:.9;filter:drop-shadow(0 0 22px rgba(242,199,110,.45))}}@keyframes wave-drift{0%{stroke-dashoffset:0}to{stroke-dashoffset:-240}}.anim-fade-up{animation:fade-up .8s cubic-bezier(.2,.6,.2,1) both}.anim-glow{animation:glow-breathe 7s ease-in-out infinite}.anim-wave{animation:wave-drift 9s linear infinite}@media (prefers-reduced-motion:reduce){.anim-fade-up,.anim-glow,.anim-wave{animation:none}.anim-fade-up{opacity:1;transform:none}.portal-card,.portal-card:hover{transform:none;transition:none}}.portrait-page{width:min(100%,1280px);margin:0 auto;padding:5.5rem 2rem 2rem}.portrait-intro{max-width:760px;margin-bottom:4.5rem}.portrait-kicker{color:var(--gold);font-size:.7rem;letter-spacing:.24em}.portrait-intro h1{margin-top:1.25rem;color:var(--cream);font-family:"Noto Serif SC","Source Han Serif SC",STSong,SimSun,serif;font-size:clamp(3.6rem,10vw,8.5rem);font-weight:500;letter-spacing:-.05em;line-height:.95}.portrait-intro-lead{max-width:620px;margin-top:2rem;color:var(--foreground);font-size:clamp(1rem,2vw,1.2rem);line-height:1.9}.portrait-disclosure{margin-top:1.25rem;padding-left:1rem;border-left:1px solid var(--line-strong);color:var(--text-dim);font-size:.78rem;line-height:1.8}.portrait-row{display:grid;gap:clamp(1.25rem,3vw,3rem);align-items:start}.portrait-row--landscape .portrait-frame{width:100%}.portrait-row--landscape .portrait-image{width:100%;height:auto}.portrait-row--upright{margin-top:clamp(2rem,5vw,4rem)}.portrait-row--upright[data-count="1"]{grid-template-columns:min(68%,480px);justify-content:center}.portrait-row--upright[data-count="2"]{grid-template-columns:repeat(2,minmax(0,1fr));max-width:min(92%,900px);margin-left:auto;margin-right:auto}.portrait-frame--lead{border-color:hsla(40,84%,69%,.2);box-shadow:0 35px 90px rgba(0,0,0,.36)}.portrait-frame{position:relative;display:block;overflow:hidden;padding:0;border:1px solid hsla(40,84%,69%,.14);background:#090705;color:inherit;cursor:zoom-in;text-align:left;box-shadow:0 24px 70px rgba(0,0,0,.28)}.portrait-image{display:block;width:100%;height:auto;transition:transform .8s cubic-bezier(.2,.6,.2,1),filter .5s ease}.portrait-frame:focus-visible .portrait-image,.portrait-frame:hover .portrait-image{transform:scale(1.025);filter:brightness(1.06)}.portrait-frame:focus-visible{outline:2px solid var(--gold-bright);outline-offset:4px}.portrait-caption{position:absolute;right:0;bottom:0;left:0;display:flex;justify-content:space-between;gap:1rem;padding:2.5rem 1.25rem 1rem;color:var(--cream);font-size:.7rem;letter-spacing:.12em;opacity:0;transform:translateY(8px);background:linear-gradient(transparent,rgba(8,5,3,.88));transition:opacity .3s ease,transform .3s ease}.portrait-frame:focus-visible .portrait-caption,.portrait-frame:hover .portrait-caption{opacity:1;transform:none}.portrait-series-list{margin-top:9rem}.portrait-series{margin-top:10rem}.portrait-series-heading{display:grid;grid-template-columns:5rem minmax(0,540px);gap:1.5rem;align-items:start;margin-bottom:3rem}.portrait-series-number{padding-top:.4rem;border-top:1px solid var(--line-strong);color:var(--gold);font-size:.72rem;letter-spacing:.2em}.portrait-series-heading h2{color:var(--cream);font-family:"Noto Serif SC","Source Han Serif SC",STSong,SimSun,serif;font-size:clamp(2rem,5vw,3.8rem);font-weight:500}.portrait-series-heading p{max-width:520px;margin-top:.9rem;color:var(--text-dim);line-height:1.85}.portrait-grid{display:grid;gap:clamp(1.25rem,3vw,3rem);align-items:start}.portrait-grid--single{width:min(68%,620px);margin-left:auto}.portrait-grid--2{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)}.portrait-grid--2 .portrait-frame:nth-child(2){margin-top:8rem}.portrait-series--midnight-machine .portrait-series-heading{margin-left:auto}.portrait-series--midnight-machine .portrait-frame{width:min(100%,1080px)}.portrait-lightbox{position:fixed;z-index:100;inset:0;display:grid;grid-template-columns:4.5rem minmax(0,1fr) 4.5rem;align-items:center;padding:2rem;background:rgba(7,5,3,.96);backdrop-filter:blur(18px)}.portrait-lightbox figure{display:flex;min-width:0;height:calc(100vh - 5rem);flex-direction:column;align-items:center;justify-content:center}.portrait-lightbox figure img{display:block;max-width:100%;max-height:calc(100vh - 9rem);width:auto;height:auto;object-fit:contain;box-shadow:0 30px 100px rgba(0,0,0,.6)}.portrait-lightbox figcaption{display:flex;width:min(100%,920px);justify-content:space-between;gap:1rem;padding-top:1rem;color:var(--text-dim);font-size:.75rem;letter-spacing:.12em}.portrait-lightbox-close,.portrait-lightbox-nav{border:1px solid var(--line-strong);border-radius:9999px;color:var(--cream);background:rgba(18,13,8,.75);transition:color .2s ease,border-color .2s ease,background .2s ease}.portrait-lightbox-close:focus-visible,.portrait-lightbox-close:hover,.portrait-lightbox-nav:focus-visible,.portrait-lightbox-nav:hover{border-color:var(--gold-bright);color:var(--gold-bright);background:rgba(216,168,78,.1);outline:none}.portrait-lightbox-close{position:absolute;top:1.5rem;right:1.5rem;width:2.75rem;height:2.75rem;font-size:1.6rem;line-height:1}.portrait-lightbox-nav{width:3.25rem;height:3.25rem;font-size:1.25rem}.portrait-page-footer{display:flex;justify-content:space-between;gap:1rem;margin-top:11rem;padding-top:1.5rem;border-top:1px solid var(--line);color:var(--text-dim);font-size:.68rem;letter-spacing:.18em}@media (max-width:700px){.portrait-page{padding:3.5rem 1.25rem 1rem}.portrait-intro{margin-bottom:3rem}.portrait-row--upright[data-count="2"]{grid-template-columns:minmax(0,1fr);max-width:min(78%,420px)}.portrait-series,.portrait-series-list{margin-top:6rem}.portrait-series-heading{grid-template-columns:2.8rem minmax(0,1fr);gap:1rem;margin-bottom:2rem}.portrait-grid--single,.portrait-series--midnight-machine .portrait-frame{width:100%;margin-left:0}.portrait-grid--2{grid-template-columns:1fr}.portrait-grid--2 .portrait-frame:nth-child(2){margin-top:0}.portrait-caption{opacity:1;transform:none}.portrait-lightbox{grid-template-columns:3.25rem minmax(0,1fr) 3.25rem;gap:.4rem;padding:1rem .5rem}.portrait-lightbox-nav{width:2.75rem;height:2.75rem}.portrait-lightbox-close{top:.8rem;right:.8rem}.portrait-page-footer{margin-top:7rem;flex-direction:column}}@media (prefers-reduced-motion:reduce){.portrait-caption,.portrait-image,.portrait-lightbox-close,.portrait-lightbox-nav{transition:none}.portrait-frame:focus-visible .portrait-image,.portrait-frame:hover .portrait-image{transform:none}}@keyframes hero-circle-draw{0%{stroke-dashoffset:100}to{stroke-dashoffset:0}}.anim-hero-circle-draw{animation:hero-circle-draw 1.8s cubic-bezier(.4,0,.2,1) both}@keyframes wave-bar-rise{0%{transform:scaleY(0);opacity:0}to{transform:scaleY(1);opacity:.55}}.anim-wave-bar{transform-origin:center 252px;animation:wave-bar-rise .7s cubic-bezier(.2,.8,.3,1.1) both}.anim-wave-bar:first-of-type{animation-delay:.55s}.anim-wave-bar:nth-of-type(2){animation-delay:.4s}.anim-wave-bar:nth-of-type(3){animation-delay:.25s}.anim-wave-bar:nth-of-type(4){animation-delay:.4s}.anim-wave-bar:nth-of-type(5){animation-delay:.55s}@property --beam-angle{syntax:"<angle>";inherits:false;initial-value:0deg}@keyframes portal-beam{to{--beam-angle:360deg}}.portal-card{position:relative}.portal-card:before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;background:conic-gradient(from var(--beam-angle),transparent 0,transparent 78%,hsla(40,84%,69%,.9) 92%,transparent 100%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;pointer-events:none}.portal-card:focus-within:before,.portal-card:hover:before{opacity:1;animation:portal-beam 1.6s linear infinite}@supports not (background:paint(x)){.portal-card:focus-within:before,.portal-card:hover:before{background:hsla(40,84%,69%,.55)}}.portal-card:focus-within,.portal-card:hover{transform:translateY(-4px)}@keyframes glyph-redraw{0%{stroke-dashoffset:120}to{stroke-dashoffset:0}}.portal-card .glyph-path{stroke-dasharray:120;stroke-dashoffset:0}.portal-card:focus-within .glyph-path,.portal-card:hover .glyph-path{animation:glyph-redraw .6s ease-out}.reveal{opacity:1}.js-reveal-ready .reveal:not(.is-revealed){opacity:0;transform:translateY(18px)}.reveal.is-revealed{transition:opacity .7s ease-out,transform .7s cubic-bezier(.2,.8,.3,1)}.link-underline{background-image:linear-gradient(var(--gold),var(--gold));background-repeat:no-repeat;background-position:left calc(100% - 1px);background-size:0 1px;transition:background-size .35s ease-out}.link-underline:focus-visible,.link-underline:hover{background-size:100% 1px}@keyframes portrait-title-rise{0%{clip-path:inset(110% 0 0 0);transform:translateY(14px)}to{clip-path:inset(-10% 0 -10% 0);transform:translateY(0)}}.portrait-intro h1{animation:portrait-title-rise 1s cubic-bezier(.2,.8,.3,1) .15s both}.portrait-kicker{animation:portrait-kicker-track 1.1s ease-out both}@keyframes portrait-kicker-track{0%{letter-spacing:.42em;opacity:0}to{letter-spacing:.24em;opacity:1}}@keyframes gold-curtain-reveal{0%{clip-path:inset(0 100% 0 0);filter:blur(12px)}to{clip-path:inset(0 0 0 0);filter:blur(0)}}.anim-gold-curtain{animation:gold-curtain-reveal 1.4s cubic-bezier(.65,0,.25,1) both}@keyframes ken-burns-idle{0%{transform:scale(1)}to{transform:scale(1.04)}}.anim-ken-burns{animation:ken-burns-idle 20s ease-in-out 1.5s infinite alternate}.portrait-frame--lead:before{content:"";position:absolute;z-index:3;top:0;bottom:0;width:22%;background:linear-gradient(100deg,transparent,hsla(40,84%,69%,.28),transparent);transform:translateX(-130%) skewX(-12deg);animation:hero-sweep 1.6s cubic-bezier(.65,0,.25,1) .1s both;pointer-events:none}@keyframes hero-sweep{to{transform:translateX(560%) skewX(-12deg)}}.portrait-frame .portrait-image{transition:transform 1.2s cubic-bezier(.2,.8,.3,1)}.portrait-frame:hover .portrait-caption span:first-child{transform:translateY(0);opacity:1}.portrait-caption span:last-child{transition:transform .35s ease-out}.portrait-frame:hover .portrait-caption span:last-child{transform:translateX(4px)}@keyframes lightbox-emerge{0%{opacity:0}to{opacity:1}}@keyframes lightbox-figure-emerge{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes lightbox-slide-next{0%{opacity:0;transform:translateX(28px)}to{opacity:1;transform:translateX(0)}}@keyframes lightbox-slide-previous{0%{opacity:0;transform:translateX(-28px)}to{opacity:1;transform:translateX(0)}}.portrait-lightbox{animation:lightbox-emerge .25s ease-out both}.anim-lightbox-emerge{animation:lightbox-figure-emerge .32s cubic-bezier(.2,.8,.3,1) both}.anim-lightbox-slide-next{animation:lightbox-slide-next .3s ease-out both}.anim-lightbox-slide-previous{animation:lightbox-slide-previous .3s ease-out both}.portrait-series-number{color:transparent;-webkit-text-stroke:1px var(--gold);transition:color .9s ease .2s}.is-revealed .portrait-series-number,.portrait-series-heading:hover .portrait-series-number{color:var(--gold)}@media (prefers-reduced-motion:reduce){.anim-gold-curtain,.anim-hero-circle-draw,.anim-ken-burns,.anim-lightbox-emerge,.anim-lightbox-slide-next,.anim-lightbox-slide-previous,.anim-wave-bar{animation:none}.portal-card:before,.portrait-frame--lead:before,.portrait-intro h1,.portrait-kicker{animation:none;opacity:1;transform:none}.portal-card:focus-within,.portal-card:hover{transform:none}.portal-card:focus-within:before,.portal-card:hover:before{opacity:1;background:hsla(40,84%,69%,.55)}.js-reveal-ready .reveal:not(.is-revealed){opacity:1;transform:none}.link-underline,.reveal.is-revealed{transition:none}}.anim-hero-circle-draw{animation:hero-circle-draw 1.8s cubic-bezier(.4,0,.2,1) both,glow-breathe 7s ease-in-out 1.8s infinite}.anim-hero-portrait{animation:gold-curtain-reveal 1.4s cubic-bezier(.65,0,.25,1) both,ken-burns-idle 20s ease-in-out 1.5s infinite alternate}@media (prefers-reduced-motion:reduce){.anim-hero-portrait{animation:none}}@font-face{font-family:ZhiMang Xing;src:url(/fonts/zhimangxing-subset.woff2) format("woff2");font-display:swap}@font-face{font-family:Ma Shan Zheng;src:url(/fonts/mashanzheng-subset.woff2) format("woff2");font-display:swap}.cinema,.lanting-page{height:100vh;overflow:hidden}.cinema{position:relative;width:100%;font-family:ZhiMang Xing,Kaiti SC,KaiTi,serif}.cinema-photo{position:absolute;inset:0;background:url(/images/lanting/westlake-dusk.webp) 50%/cover no-repeat;animation:cinema-cam-push 46s ease-in-out infinite alternate;transform-origin:42% 52%}@keyframes cinema-cam-push{0%{transform:scale(1)}to{transform:scale(1.09)}}.cinema-veil{position:absolute;inset:0;background:rgba(10,7,5,.66);opacity:0;transition:opacity 2.2s ease}.cinema-veil.on{opacity:1}.cinema-grid{position:absolute;inset:0;display:grid;place-items:center;padding:4vh 3vw}.cinema-grid span{color:#f3ecdc;line-height:1;text-shadow:0 0 1px hsla(0,0%,100%,.4),0 0 22px hsla(40,58%,90%,.18);opacity:0;transform:scale(1.14);filter:blur(5px)}.cinema-grid span.in{animation:cinema-ink 1.1s ease-out forwards}@keyframes cinema-ink{to{opacity:1;transform:scale(1);filter:blur(0)}}.cinema-grid.fade span{animation:none!important;transition:opacity 2.2s ease,filter 2.2s ease;opacity:0!important;filter:blur(6px)}.cinema-seal{position:absolute;left:12vw;bottom:14vh;width:clamp(56px,9vh,90px);height:auto;opacity:0}.cinema-seal.on{animation:cinema-stamp .55s cubic-bezier(.3,1.6,.5,1) forwards}.cinema-seal.off{transition:opacity 1.6s ease;opacity:0!important;animation:none}@keyframes cinema-stamp{0%{opacity:0;transform:scale(1.6) rotate(-8deg)}to{opacity:.92;transform:scale(1) rotate(0)}}.cinema-ind{position:absolute;right:2rem;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:.6rem;z-index:5}.cinema-ind i{width:3px;height:2.4rem;background:hsla(40,84%,69%,.25)}.cinema-ind i.on{background:hsla(40,84%,69%,.9);box-shadow:0 0 8px hsla(40,84%,69%,.5);transition:background .6s ease}.cinema-ctrl{position:absolute;left:50%;bottom:2.6rem;transform:translateX(-50%);z-index:6;background:rgba(12,9,6,.55);color:hsla(40,63%,91%,.85);border:1px solid hsla(40,84%,69%,.35);border-radius:999px;padding:.45rem 1.3rem;font-size:.85rem;letter-spacing:.25em;cursor:pointer;font-family:inherit;backdrop-filter:blur(4px)}.cinema-ctrl:hover{border-color:hsla(40,84%,69%,.7);color:#f6ecd8}.cinema-hint{position:absolute;left:50%;bottom:1rem;transform:translateX(-50%);color:hsla(40,63%,91%,.55);font-size:.75rem;letter-spacing:.3em;z-index:5}.cinema.paused .cinema-grid span,.cinema.paused .cinema-seal{animation-play-state:paused!important}.cinema--static{display:grid;place-items:center;background:url(/images/lanting/westlake-dusk.webp) 50%/cover no-repeat}.cinema-static-card{display:flex;flex-direction:column;align-items:center;gap:2rem;padding:clamp(2rem,6vh,4rem) clamp(2.5rem,8vw,6rem);background:rgba(12,9,6,.62);border:1px solid hsla(40,84%,69%,.35);backdrop-filter:blur(3px)}.cinema-static-title{font-family:Ma Shan Zheng,Kaiti SC,KaiTi,serif;letter-spacing:.85em;color:hsla(40,84%,69%,.9)}.cinema-static-quote{font-family:ZhiMang Xing,Kaiti SC,KaiTi,serif;font-size:clamp(1.6rem,4.5vh,2.8rem);color:#f3ecdc;letter-spacing:.3em}.cinema-static-note{font-size:.85rem;letter-spacing:.4em;color:hsla(40,63%,91%,.55)}@media (prefers-reduced-motion:reduce){.cinema-photo{animation:none}.cinema-grid span,.cinema-ind i.on,.cinema-seal,.cinema-veil{animation:none;transition:none}}body:has(.lanting-page) header{display:none}.cinema-back{position:absolute;top:1.2rem;right:1.6rem;z-index:7;color:hsla(40,63%,91%,.6);font-size:.85rem;letter-spacing:.25em;transition:color .3s ease}.cinema-back:hover{color:#f6ecd8}.marker\:text-gold ::marker{color:var(--gold)}.marker\:text-gold::marker{color:var(--gold)}.hover\:border-gold:hover{border-color:var(--gold)}.hover\:text-cream:hover{color:var(--cream)}.hover\:text-gold-bright:hover{color:var(--gold-bright)}.hover\:shadow-\[0_4px_32px_rgba\(242\2c 199\2c 110\2c 0\.5\)\]:hover{--tw-shadow:0 4px 32px hsla(40,84%,69%,.5);--tw-shadow-colored:0 4px 32px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}@media (prefers-reduced-motion:reduce){.motion-reduce\:transition-none{transition-property:none}}@media (min-width:640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:p-9{padding:2.25rem}.sm\:text-5xl{font-size:3rem;line-height:1}}@media (min-width:768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1024px){.lg\:min-h-\[560px\]{min-height:560px}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:grid-cols-\[1\.3fr_0\.7fr\]{grid-template-columns:1.3fr .7fr}.lg\:gap-10{gap:2.5rem}.lg\:gap-6{gap:1.5rem}.lg\:gap-8{gap:2rem}.lg\:py-0{padding-top:0;padding-bottom:0}.lg\:text-\[62px\]{font-size:62px}}.\[\&_a\:hover\]\:text-gold-bright a:hover{color:var(--gold-bright)}.\[\&_a\]\:text-gold a{color:var(--gold)}.\[\&_blockquote\]\:mt-4 blockquote{margin-top:1rem}.\[\&_blockquote\]\:border-l-2 blockquote{border-left-width:2px}.\[\&_blockquote\]\:border-line-strong blockquote{border-color:var(--line-strong)}.\[\&_blockquote\]\:pl-4 blockquote{padding-left:1rem}.\[\&_blockquote\]\:text-ink-dim blockquote{color:var(--text-dim)}.\[\&_code\]\:text-gold-bright code{color:var(--gold-bright)}.\[\&_h2\]\:mt-10 h2{margin-top:2.5rem}.\[\&_h2\]\:font-serif h2{font-family:"Noto Serif SC","Source Han Serif SC",STSong,SimSun,serif}.\[\&_h2\]\:text-2xl h2{font-size:1.5rem;line-height:2rem}.\[\&_h2\]\:text-cream h2{color:var(--cream)}.\[\&_h3\]\:mt-8 h3{margin-top:2rem}.\[\&_h3\]\:font-serif h3{font-family:"Noto Serif SC","Source Han Serif SC",STSong,SimSun,serif}.\[\&_h3\]\:text-xl h3{font-size:1.25rem;line-height:1.75rem}.\[\&_h3\]\:text-cream h3{color:var(--cream)}.\[\&_li\]\:mt-2 li{margin-top:.5rem}.\[\&_ol\]\:mt-4 ol{margin-top:1rem}.\[\&_ol\]\:list-decimal ol{list-style-type:decimal}.\[\&_ol\]\:pl-6 ol{padding-left:1.5rem}.\[\&_p\]\:mt-4 p,.\[\&_pre\]\:mt-4 pre{margin-top:1rem}.\[\&_pre\]\:overflow-x-auto pre{overflow-x:auto}.\[\&_pre\]\:border pre{border-width:1px}.\[\&_pre\]\:border-line pre{border-color:var(--line)}.\[\&_pre\]\:bg-card pre{background-color:var(--card-bg)}.\[\&_pre\]\:p-4 pre{padding:1rem}.\[\&_ul\]\:mt-4 ul{margin-top:1rem}.\[\&_ul\]\:list-disc ul{list-style-type:disc}.\[\&_ul\]\:pl-6 ul{padding-left:1.5rem}