/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.hidden{display:none}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.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,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--black:#080a0b;--ink:#101416;--fog:#c6c8c8;--white:#f2f0eb;--muted:#8b9092;--red:#941f2b;--serif:"Songti SC", STSong, "Noto Serif SC", "Times New Roman", serif;--sans:"Helvetica Neue", "PingFang SC", "Microsoft YaHei", Arial, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--black)}body{background:var(--black);color:var(--white);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;overflow-x:hidden}body.modal-open{overflow:hidden}body.opening-locked{overscroll-behavior:none;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}button:focus-visible,a:focus-visible{outline:2px solid var(--white);outline-offset:3px}.album-site{background:var(--black);width:100%;min-width:320px;min-height:100vh;position:relative;overflow:clip}.opening-gate{z-index:500;height:100dvh;color:var(--white);isolation:isolate;touch-action:none;background:#050708;position:fixed;inset:0;overflow:hidden}.opening-backdrop,.opening-vignette,.opening-axis{pointer-events:none;position:absolute;inset:0}.opening-backdrop{z-index:-3;filter:saturate(.52)contrast(1.2)brightness(.25);background-image:url(/albums/wedding/MEITU_20260627_160455499.jpg);background-position:50%;background-size:cover;animation:9s cubic-bezier(.2,.72,.2,1) both opening-breathe;transform:scale(1.08)}.opening-vignette{z-index:-2;background:linear-gradient(#05070894,#0000 34% 62%,#050708d9),radial-gradient(circle at 50% 47%,#0000 0%,#05070833 38%,#050708e0 100%)}.opening-vignette:after{content:"";opacity:.12;mix-blend-mode:soft-light;background-image:repeating-linear-gradient(0deg,#0000 0 3px,#ffffff0b 3px 4px);position:absolute;inset:0}.opening-axis{z-index:4;background:linear-gradient(transparent 4%, var(--red) 20%, var(--red) 80%, transparent 96%);opacity:0;transform-origin:50%;width:1px;left:50%;right:auto;transform:scaleY(0)}.opening-frame{inset:calc(16px + env(safe-area-inset-top)) 16px calc(16px + env(safe-area-inset-bottom));border:1px solid #f2f0eb2e;grid-template-rows:auto 1fr auto;padding:18px 17px 17px;display:grid;position:absolute}.opening-header,.opening-footer{color:#f2f0eb8c;letter-spacing:.22em;justify-content:space-between;font-size:7px;animation:1.32s .26s both opening-detail-in;display:flex}.opening-footer{align-items:flex-end;animation-delay:.46s}.opening-copy{text-align:center;align-self:center;margin-top:3svh;animation:1.56s cubic-bezier(.2,.72,.2,1) .18s both opening-copy-in}.opening-folio{color:var(--red);letter-spacing:.31em;margin:0 0 24px;font-size:7px}.opening-copy h1{font-family:var(--serif);letter-spacing:.09em;text-shadow:0 4px 30px #0009;margin:0;font-size:clamp(26px,8.2vw,37px);font-weight:400;line-height:1.18}.opening-copy h1 b{color:var(--red);font-family:var(--sans);margin:0 .08em;font-size:.62em;font-weight:400}.opening-names{color:#f2f0eb80;letter-spacing:.17em;margin:13px 0 0;font-size:8px}.opening-button{width:116px;height:116px;color:var(--white);cursor:pointer;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#05070847;border:1px solid #f2f0eb61;border-radius:50%;place-content:center;gap:8px;margin:clamp(64px,11svh,94px) auto 0;padding:0;animation:3.4s ease-in-out 1.6s infinite opening-button-pulse;display:grid;position:relative;overflow:visible}.opening-button:before,.opening-button:after{content:"";pointer-events:none;border-radius:50%;position:absolute}.opening-button:before{border:1px solid #941f2bad;inset:7px}.opening-button:after{border:1px solid #f2f0eb14;inset:-8px}.opening-button>span{background:linear-gradient(90deg,#0000,#f2f0eb2e 19%,#0000 19% 81%,#f2f0eb2e 81%,#0000);height:1px;position:absolute;top:50%;left:-25px;right:-25px}.opening-button strong,.opening-button small{z-index:1;font-weight:400;position:relative}.opening-button strong{font-family:var(--serif);letter-spacing:.18em;font-size:15px}.opening-button small{color:#f2f0eb73;letter-spacing:.15em;font-size:6px}.opening-button:focus-visible{outline-color:var(--red);outline-offset:9px}.opening-button:disabled{cursor:default}.opening-gate.is-opening{pointer-events:none;animation:1.85s cubic-bezier(.76,0,.24,1) both opening-unseal}.opening-gate.is-opening .opening-axis{animation:1.42s cubic-bezier(.76,0,.24,1) both opening-axis}.opening-gate.is-opening .opening-copy,.opening-gate.is-opening .opening-header,.opening-gate.is-opening .opening-footer{animation:.7s both opening-depart}.album-locked .hero-primary img,.album-locked .hero-kicker i,.album-locked .hero-copy,.album-locked .hero-reel,.album-locked .hero-caption{animation-play-state:paused}.reading-progress{z-index:120;background:#ffffff14;width:100%;height:2px;position:fixed;top:0;left:0}.reading-progress span{transform-origin:0;background:var(--red);width:100%;height:100%;display:block}.floating-controls{z-index:110;top:calc(58px + env(safe-area-inset-top));pointer-events:none;justify-content:flex-end;align-items:center;gap:7px;display:flex;position:fixed;left:clamp(15px,4.5vw,22px);right:clamp(15px,4.5vw,22px)}.sound-control{min-width:48px;min-height:44px;color:var(--white);letter-spacing:.08em;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);pointer-events:auto;cursor:pointer;background:#080a0ba8;border:1px solid #f2f0eb38;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:0 13px;font-size:10px;text-decoration:none;display:flex}.sound-control[aria-pressed=true]{border-color:#941f2bcc}.sound-control span:first-child{color:var(--red);font-size:13px}.hero{isolation:isolate;background:#080a0b;height:max(100svh,min(216.41vw,930px));min-height:700px;position:relative;overflow:hidden}.hero-primary,.hero-reel{background:#111517;margin:0;position:absolute;overflow:hidden}.hero-primary{height:54.03%;top:0;left:0;right:0}.hero-primary img,.hero-reel img{object-fit:cover;width:100%;height:100%;display:block}.hero-primary img{object-position:50% 46%;filter:saturate(.64)contrast(1.16)brightness(.72);animation:2.16s cubic-bezier(.2,.72,.2,1) both hero-settle;transform:scale(1.025)}.hero-primary-shade{z-index:1;pointer-events:none;background:linear-gradient(#080a0b61 0%,#0000 24% 58%,#080a0bf5 100%),linear-gradient(90deg,#080a0b4d,#0000 67%);height:54.03%;position:absolute;top:0;left:0;right:0}.hero-kicker{z-index:2;top:calc(22px + env(safe-area-inset-top));color:#f2f0ebc7;letter-spacing:.2em;white-space:nowrap;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:8px;font-size:8px;display:grid;position:absolute;left:20px;right:20px}.hero-kicker i{background:var(--red);transform-origin:0;width:22px;height:2px;animation:1.38s .3s both signal-in}.hero-copy{z-index:2;animation:1.38s cubic-bezier(.2,.72,.2,1) .18s both hero-copy-in;position:absolute;top:37.68%;left:20px;right:20px}.hero-copy h1{font-family:var(--serif);letter-spacing:.065em;text-shadow:0 2px 24px #00000073;margin:0;font-size:clamp(27px,8vw,35px);font-weight:400;line-height:1.12}.hero-copy h1 b{color:#f2f0ebb8;font-family:var(--sans);margin:0 .08em;font-size:.57em;font-weight:400}.hero-en,.hero-date{color:#f2f0ebad;letter-spacing:.17em;margin:11px 0 0;font-size:9px}.hero-date{letter-spacing:.13em;margin-top:27px}.hero-route{z-index:2;color:#f2f0eb80;letter-spacing:.16em;font-size:8px;position:absolute;top:51.9%;right:20px}.hero-route span{color:var(--red);margin:0 4px}.hero-reel{z-index:1;clip-path:inset(0 100% 0 0);animation:1.26s cubic-bezier(.76,0,.24,1) both cinema-cut}.hero-reel-vow{height:13.3%;animation-delay:.42s;top:57.11%;left:20px;right:20px}.hero-reel-vow img{object-position:50% 53%;filter:saturate(.55)contrast(1.14)brightness(.82)}.hero-reel-wild{height:16.8%;animation-delay:.624s;top:77.01%;left:0;right:0}.hero-reel-wild img{object-position:50% 48%;filter:saturate(.72)contrast(1.15)brightness(.7)}.hero-caption{z-index:2;color:#f2f0eb94;letter-spacing:.18em;text-transform:uppercase;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:9px;font-size:7px;animation:1.08s .76s both hero-caption-in;display:grid;position:absolute;left:20px;right:20px}.hero-caption i{background:#f2f0eb42;height:1px}.hero-caption small{color:#f2f0eb61;font-size:inherit;letter-spacing:inherit}.hero-caption-vow{top:72.87%}.hero-caption-wild{animation-delay:.96s;top:95.85%}.hero-frame-mark{z-index:2;color:#f2f0eb52;letter-spacing:.17em;font-size:6px;position:absolute;top:75.83%;right:20px}.prologue{background:var(--black);min-height:72svh;padding:112px clamp(22px,7vw,36px) 104px;position:relative}.folio,.epilogue-index{color:var(--red);letter-spacing:.22em;margin:0;font-size:8px}.prologue-line{font-family:var(--serif);letter-spacing:.08em;margin:82px 0 0;font-size:clamp(26px,7.8vw,36px);font-weight:400;line-height:1.65}.prologue-en{color:var(--muted);font-family:var(--serif);letter-spacing:.2em;border-top:1px solid #f2f0eb33;margin:45px 0 0 41%;padding-top:15px;font-size:9px;line-height:1.7}[data-reveal]{opacity:0;transition:opacity 1.08s,transform 1.32s cubic-bezier(.2,.72,.2,1);transform:translateY(24px)}[data-reveal].is-visible{opacity:1;transform:none}.story-chapter{background:var(--black);padding:104px 0 118px;position:relative}.chapter-japan{padding-top:58px}.chapter-heading{border-top:1px solid #c6c8c838;grid-template-columns:minmax(60px,24%) 1fr;align-items:end;gap:20px;margin:0 clamp(20px,5vw,28px) 68px;padding-top:17px;display:grid}.chapter-index,.chapter-location,.chapter-en{color:var(--muted);letter-spacing:.2em;font-size:8px}.chapter-heading>div{text-align:right}.chapter-heading h2{font-family:var(--serif);letter-spacing:.1em;margin:7px 0 0;font-size:clamp(28px,8vw,38px);font-weight:400}.chapter-location,.chapter-en{margin:0}.chapter-en{color:#f2f0ebb3;margin-top:8px}.story-sequence{flex-direction:column;gap:clamp(68px,18vw,100px);display:flex}.story-photo{width:100%;margin:0}.story-photo[data-reveal]{opacity:1;transition:none;transform:none}.story-photo.landscape-inset{width:calc(100% - clamp(35px,11vw,58px));margin-left:auto}.story-photo.portrait-left,.story-photo.portrait-right{width:min(78%,430px)}.story-photo.portrait-left{margin-left:clamp(20px,5vw,28px)}.story-photo.portrait-right{margin-left:auto;margin-right:clamp(20px,5vw,28px)}.photo-button{width:100%;min-height:44px;color:inherit;cursor:zoom-in;clip-path:inset(0 100% 0 0);background:#15191b;border:0;padding:0;transition:clip-path 1.26s cubic-bezier(.76,0,.24,1);display:block;overflow:hidden}.story-photo.portrait-right .photo-button,.story-photo.landscape-inset .photo-button{clip-path:inset(0 0 0 100%)}.story-photo.is-visible .photo-button{clip-path:inset(0)}.photo-button img{object-fit:cover;filter:saturate(.72)contrast(1.15)brightness(.82);width:100%;height:auto;max-height:88svh;transition:transform 2.16s cubic-bezier(.2,.72,.2,1),filter .86s;display:block;transform:scale(1.045)}.story-photo.is-visible .photo-button img{transform:scale(1)}.portrait-left .photo-button img,.portrait-right .photo-button img{aspect-ratio:2/3}.photo-button:active img{filter:saturate(.78)contrast(1.12)brightness(.88);transform:scale(1.012)}.story-photo figcaption{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;opacity:0;grid-template-columns:28px auto minmax(0,1fr);align-items:center;gap:9px;padding:11px clamp(20px,5vw,28px) 0;font-size:8px;line-height:1.4;transition:opacity 1.08s .54s,transform 1.08s cubic-bezier(.2,.72,.2,1) .54s;display:grid;transform:translateY(9px)}.story-photo figcaption:before{content:"";background:#f2f0eb38;height:1px}.story-photo figcaption span:last-child{text-align:right}.story-photo.is-visible figcaption{opacity:1;transform:none}.portrait-left figcaption,.portrait-right figcaption,.landscape-inset figcaption{padding-left:0;padding-right:0}.crossing{--crossing:0;background:var(--black);height:210svh;position:relative}.crossing-sticky{isolation:isolate;height:100svh;min-height:620px;position:sticky;top:0;overflow:hidden}.crossing-warm,.crossing-cold{background-position:50%;background-size:cover;position:absolute;inset:0}.crossing-warm{opacity:calc(1 - var(--crossing));filter:saturate(.75)contrast(1.08);transform:scale(calc(1.03 + var(--crossing) * .04));background-image:linear-gradient(#080a0b59,#080a0bd1),url(/albums/wedding/MEITU_20260627_160455499.jpg)}.crossing-cold{opacity:var(--crossing);filter:saturate(.55)contrast(1.18)brightness(.78);transform:scale(calc(1.08 - var(--crossing) * .05));background-image:linear-gradient(#080a0b47,#080a0bbd),url(/albums/prewedding/MEITU_20260627_140530027.jpg)}.crossing-copy{z-index:3;right:clamp(20px,6vw,32px);bottom:max(54px, calc(34px + env(safe-area-inset-bottom)));text-align:right;opacity:calc(.2 + var(--crossing) * .8);transform:translateY(calc((1 - var(--crossing)) * 22px));position:absolute;left:clamp(20px,6vw,32px)}.crossing-copy span,.crossing-copy p{color:#f2f0eba3;letter-spacing:.17em;font-size:8px}.crossing-copy h2{font-family:var(--serif);letter-spacing:.1em;margin:13px 0;font-size:clamp(29px,8.5vw,40px);font-weight:400}.crossing-copy p{margin:0}.epilogue{min-height:92svh;padding:112px clamp(22px, 7vw, 36px) calc(70px + env(safe-area-inset-bottom));background:var(--black)}.epilogue h2{font-family:var(--serif);letter-spacing:.08em;margin:112px 0 0;font-size:clamp(31px,9vw,43px);font-weight:400}.epilogue>p{color:var(--muted);letter-spacing:.25em;margin:13px 0 0;font-size:9px}.open-album{width:100%;min-height:88px;color:var(--white);text-align:left;cursor:pointer;background:0 0;border:0;border-top:1px solid #f2f0eb61;border-bottom:1px solid #f2f0eb26;flex-direction:column;justify-content:center;align-items:flex-start;gap:8px;margin-top:128px;padding:21px 49px 20px 0;display:flex;position:relative}.open-album:after{content:"→";color:var(--red);font-size:22px;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.open-album span{font-family:var(--serif);letter-spacing:.09em;font-size:22px}.open-album small{color:var(--muted);letter-spacing:.14em;font-size:8px}.site-footer{padding:30px clamp(20px, 5vw, 28px) calc(34px + env(safe-area-inset-bottom));color:#666c6f;letter-spacing:.12em;border-top:1px solid #f2f0eb1a;grid-template-columns:1fr auto;gap:10px;font-size:8px;display:grid}.site-footer p{margin:0}.site-footer p:nth-child(2){text-align:right}.site-footer a{color:#666c6f;grid-column:1/-1;width:fit-content;min-height:44px;padding-top:15px;text-decoration:none}.gallery-overlay,.photo-viewer{z-index:200;background:#080a0bfc;position:fixed;inset:0}.gallery-overlay{overscroll-behavior:contain;padding-bottom:calc(60px + env(safe-area-inset-bottom));overflow-y:auto}.gallery-header{z-index:2;min-height:92px;padding:calc(18px + env(safe-area-inset-top)) 20px 16px;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#080a0beb;justify-content:space-between;align-items:flex-end;display:flex;position:sticky;top:0}.gallery-header span{color:var(--red);letter-spacing:.18em;font-size:8px}.gallery-header h2{font-family:var(--serif);letter-spacing:.1em;margin:5px 0 0;font-size:23px;font-weight:400}.gallery-header button,.photo-viewer header button{width:44px;height:44px;color:var(--white);cursor:pointer;background:0 0;border:1px solid #f2f0eb3d;border-radius:50%;place-items:center;padding:0;font-size:24px;display:grid}.gallery-filters{scrollbar-width:none;gap:7px;padding:13px 20px 18px;display:flex;overflow-x:auto}.gallery-filters::-webkit-scrollbar{display:none}.gallery-filters button{min-height:44px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #f2f0eb2e;border-radius:999px;flex:none;padding:0 15px;font-size:11px}.gallery-filters button[aria-pressed=true]{border-color:var(--red);color:var(--white)}.gallery-grid{flex-direction:column;gap:3px;padding:0 3px;display:flex}.gallery-row{content-visibility:auto;contain-intrinsic-size:auto 420px;width:100%}.gallery-row-portrait-duo{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:3px;display:grid}.gallery-tile{cursor:zoom-in;isolation:isolate;background:#131719;border:0;width:100%;min-height:96px;padding:0;display:block;position:relative;overflow:hidden}.gallery-row-landscape .gallery-tile{aspect-ratio:var(--tile-aspect,1.5)}.gallery-row-portrait-duo .gallery-tile{aspect-ratio:3/4}.gallery-row-portrait-feature .gallery-tile{aspect-ratio:4/5}.gallery-ambient,.gallery-tile img{position:absolute;inset:0}.gallery-ambient{background-image:var(--ambient-image);background-position:50%;background-size:cover;display:none}.gallery-tile img{z-index:1;object-fit:cover;filter:saturate(.72)contrast(1.12)brightness(.84);width:100%;height:100%;transition:transform 1.08s cubic-bezier(.2,.72,.2,1),filter .72s;display:block}.gallery-row-portrait-feature .gallery-ambient{filter:blur(28px)saturate(.7)brightness(.3);display:block;inset:-10%;transform:scale(1.14)}.gallery-row-portrait-feature .gallery-tile:after{content:"";z-index:0;background:linear-gradient(90deg,#080a0b80,#0000 26% 74%,#080a0b80);position:absolute;inset:0}.gallery-row-portrait-feature .gallery-tile img{object-fit:contain;filter:saturate(.8)contrast(1.08)brightness(.9)}.gallery-tile:active img{filter:saturate(.8)contrast(1.08)brightness(.92);transform:scale(1.012)}.gallery-tile>span{z-index:2;color:#ffffffb8;letter-spacing:.12em;text-shadow:0 1px 5px #000;font-size:7px;position:absolute;bottom:7px;right:8px}.photo-viewer{z-index:240;touch-action:pan-y pinch-zoom;overscroll-behavior:none;grid-template-rows:auto 1fr auto;height:100dvh;display:grid}.photo-viewer header{z-index:2;min-height:calc(62px + env(safe-area-inset-top));padding:calc(9px + env(safe-area-inset-top)) 15px 9px 20px;color:var(--muted);letter-spacing:.16em;justify-content:space-between;align-items:center;font-size:9px;display:flex}.viewer-stage{isolation:isolate;background:#080a0b;place-items:center;min-height:0;display:grid;position:relative;overflow:hidden}.viewer-backdrop{z-index:0;object-fit:cover;filter:blur(32px)saturate(.68)brightness(.27);opacity:.94;-webkit-user-select:none;user-select:none;width:124%;height:124%;display:block;position:absolute;inset:-12%;transform:scale(1.1)}.viewer-vignette{z-index:1;pointer-events:none;background:radial-gradient(circle,#0000 38%,#080a0b6b 100%),linear-gradient(#080a0b47,#0000 18% 82%,#080a0b4d);position:absolute;inset:0}.viewer-image{z-index:2;object-fit:contain;filter:saturate(.86)contrast(1.04)brightness(.94);-webkit-user-select:none;user-select:none;width:auto;max-width:100%;height:auto;max-height:100%;display:block;position:relative;box-shadow:0 18px 52px #00000047}.viewer-prev,.viewer-next{z-index:3;color:#f2f0ebb8;cursor:pointer;background:#080a0b38;border:0;place-items:center;width:48px;height:56px;padding:0;font-size:20px;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.viewer-prev{left:0}.viewer-next{right:0}.viewer-count{min-height:calc(58px + env(safe-area-inset-bottom));padding:18px 20px calc(14px + env(safe-area-inset-bottom));text-align:center;font-family:var(--serif);letter-spacing:.16em;margin:0;font-size:17px}.viewer-count span{color:var(--muted);font-size:10px}@keyframes hero-settle{0%{opacity:0;transform:scale(1.095)}to{opacity:1;transform:scale(1.025)}}@keyframes opening-breathe{0%{transform:scale(1.08)}to{transform:scale(1.015)}}@keyframes opening-detail-in{0%{opacity:0}to{opacity:1}}@keyframes opening-copy-in{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}@keyframes opening-button-pulse{0%,to{box-shadow:0 0 #941f2b00}50%{box-shadow:0 0 0 10px #941f2b1a}}@keyframes opening-axis{0%{opacity:0;transform:scaleY(0)}24%,72%{opacity:.9;transform:scaleY(1)}to{opacity:0;transform:scaleY(1)}}@keyframes opening-depart{to{opacity:0;transform:scale(.985)}}@keyframes opening-unseal{0%,38%{clip-path:inset(0)}to{clip-path:inset(0 49.96%)}}@keyframes signal-in{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes cinema-cut{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@keyframes hero-copy-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes hero-caption-in{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}@media (width>=720px){body{background:#030405}.album-site{max-width:720px;margin:0 auto;box-shadow:0 0 100px #00000085}.floating-controls{left:auto;right:max(50vw - 336px,24px)}.reading-progress{width:min(720px,100%);left:50%;transform:translate(-50%)}.gallery-overlay,.photo-viewer{width:min(720px,100vw);left:50%;right:50%;transform:translate(-50%)}}@media (width<=374px){.hero-kicker{grid-template-columns:18px minmax(0,1fr) auto;gap:6px;font-size:7px}.hero-kicker i{width:18px}.sound-control span:last-child{display:none}.sound-control{width:44px;min-width:44px;padding:0}}@media (height<=720px) and (orientation:portrait){.opening-button{width:102px;height:102px;margin-top:46px}}@media (orientation:landscape) and (height<=560px){.opening-frame{inset:calc(10px + env(safe-area-inset-top)) 14px calc(10px + env(safe-area-inset-bottom));padding:12px 16px}.opening-copy{margin-top:0}.opening-folio{margin-bottom:12px}.opening-button{width:82px;height:82px;margin-top:20px}.opening-button strong{font-size:12px}.hero{height:100svh;min-height:430px}.hero-primary,.hero-primary-shade{height:100%}.hero-reel,.hero-caption,.hero-frame-mark{display:none}.floating-controls{top:calc(14px + env(safe-area-inset-top))}.hero-copy{top:auto;bottom:72px}.hero-date{margin-top:14px}.hero-route{inset:auto auto 32px 20px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}[data-reveal]{opacity:1;transform:none}.story-photo[data-reveal] .photo-button{clip-path:inset(0)}.story-photo[data-reveal] .photo-button img,.story-photo[data-reveal] figcaption{opacity:1;transform:none}.crossing-warm,.crossing-cold,.crossing-copy{transform:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
