.back-to-top{position:fixed;z-index:15;right:max(24px,env(safe-area-inset-right));bottom:max(24px,env(safe-area-inset-bottom));display:grid;place-items:center;width:48px;height:48px;padding:0;border:1px solid #c8b5c0;border-radius:50%;color:#392b36;background:#fff;box-shadow:0 4px 18px #0002;cursor:pointer}.back-to-top:hover{background:#f5eef3}.back-to-top:focus-visible{outline:3px solid #865276;outline-offset:3px}html[data-dev-theme] .back-to-top{color:#f4e5ec;border-color:#eac3d15c;background:#291e32}@media(max-width:700px){.back-to-top{right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom))}}::view-transition-group(root),::view-transition-old(root),::view-transition-new(root),::view-transition-group(public-content),::view-transition-old(public-content),::view-transition-new(public-content){animation:none}@media(prefers-reduced-motion:no-preference){.public-motion{view-transition-name:public-content}.site-header[data-site-reveal=true]{position:relative;z-index:6}[data-site-reveal=true]{animation:site-landing-fade .48s ease-out backwards;animation-delay:var(--site-reveal-delay, 0ms)}@keyframes site-landing-fade{0%{opacity:0}to{opacity:1}}[data-list-reveal=shown]{animation:list-row-enter .48s cubic-bezier(.2,.65,.3,1) backwards;animation-delay:var(--list-reveal-delay, 0ms)}[data-list-item]:focus-within{opacity:1;transform:none;animation:none;pointer-events:auto}@keyframes list-row-enter{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}:root:has(.public-motion)::view-transition-old(public-content){animation:public-content-leave .1s ease-in both;mix-blend-mode:normal}:root:has(.public-motion)::view-transition-new(public-content){animation:public-content-enter .16s ease-out both;mix-blend-mode:normal}@keyframes public-content-enter{0%{opacity:.88}to{opacity:1}}@keyframes public-content-leave{to{opacity:0}}}.card-image{position:relative}[data-list-reveal=pending] :is(.card-caption,.dev-story-title,.dev-card-label){visibility:hidden}[data-list-reveal=pending] img.public-image-reveal,img.public-image-reveal:is([data-list-image-state=loading],[data-list-image-state=unavailable]){visibility:hidden}[data-list-reveal=pending] :is(.card-image,.dev-story-image,.dev-card-picture):before,:is(.card-image,.dev-story-image,.dev-card-picture):has(img[data-list-image-state=loading]):before,:is(.card-image,.dev-story-image,.dev-card-picture):has(img[data-list-image-state=unavailable]):before{content:"";position:absolute;inset:0;display:grid;place-items:center;z-index:1;background:var(--media-placeholder, #e9e8e6);color:var(--media-placeholder-ink, #6d6972);font:12px/1.5 sans-serif;pointer-events:none}.dev-page{--media-placeholder: #302c3b;--media-placeholder-ink: #c8c2d0;--media-surface: #1c1726;--media-error: #21192aeb}:is(.card-image,.dev-story-image,.dev-card-picture):has(img[data-list-image-state=unavailable]):before{content:"Image unavailable"}[data-list-reveal=pending] .dev-row-track{animation-play-state:paused!important}[data-list-item] img.public-image-reveal.is-loaded{opacity:1!important;animation:none!important}@media(prefers-reduced-motion:reduce){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}@media(max-width:900px)and (prefers-reduced-motion:no-preference){.dev-post-article[data-site-reveal=true]{animation:site-landing-rise .48s ease-out backwards;animation-delay:var(--site-reveal-delay, 0ms)}@keyframes site-landing-rise{0%{opacity:0;transform:translateY(60dvh)}to{opacity:1;transform:translateY(0)}}}.dev-arrival{position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;min-height:100dvh;padding:48px 24px;overflow:clip;background:#101723;color:#f5f0ed;text-align:center}.dev-arrival:before{content:"";position:absolute;z-index:-2;inset:-8px;pointer-events:none;background:url(/images/dev-new-york-night.webp) 48% center / cover no-repeat;opacity:.42;filter:blur(3px) saturate(.65)}.dev-arrival:after{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 45%,#31223233,#101723b3 85%),linear-gradient(180deg,#10172333,#10172380)}.dev-arrival-mark{display:block;width:1px;height:58px;background:linear-gradient(transparent,#eac3d199)}.entry-bridge.dev-entry h1{max-width:min(780px,100%);font-family:Georgia,Times New Roman,serif;font-size:clamp(34px,5vw,68px);font-weight:400;line-height:1.2;letter-spacing:-.035em;overflow-wrap:anywhere;text-wrap:balance}.entry-bridge.dev-entry button{display:inline-flex;align-items:center;justify-content:center;gap:24px;max-width:100%;min-height:52px;margin-top:8px;padding:14px 25px;border:1px solid #eac3d159;border-radius:999px;color:#f5e8ee;background:#38233580;box-shadow:0 8px 40px #07071024;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font-size:14px;line-height:1.5;transition:background .35s ease,border-color .35s ease,box-shadow .35s ease}.dev-entry button span{color:#eac3d1;font-size:18px}.dev-entry button:focus-visible{outline:2px solid #eac3d1;outline-offset:6px}@media(hover:hover)and (pointer:fine){.dev-entry button:hover{border-color:#eac3d194;background:#57364c99;box-shadow:0 0 35px #eac3d117}}@media(prefers-reduced-motion:reduce){.dev-arrival,.dev-arrival *,.dev-arrival *:after{animation:none!important;transition:none!important}}@media(max-width:900px){.dev-arrival:before{background-image:url(/images/dev-new-york-night-mobile.webp)}}html:has(.dev-page,.dev-loading,.dev-entry){scrollbar-width:none}html:has(.dev-page,.dev-loading,.dev-entry)::-webkit-scrollbar{display:none}html:has(.dev-page,.dev-loading,.dev-entry),body:has(.dev-page,.dev-loading,.dev-entry){background:#101723;color-scheme:dark}@media(prefers-reduced-motion:no-preference){.dev-route-stage,.dev-list-results{opacity:1;transition:opacity .36s ease-out}.dev-route-stage[aria-busy=true],.dev-list-results[data-filtering=true]{opacity:0;transition-duration:.2s;transition-timing-function:ease-in}}.post-search{--search-bg: #fff;--search-ink: #333;--search-muted: #777;--search-border: #d9d2d8;--search-active: #fff0fc;position:relative;z-index:8;width:min(320px,100%);min-width:0;margin-left:auto;color:var(--search-ink);font-size:14px;font-weight:400}.post-search-field{display:flex;align-items:center;min-height:44px;border:1px solid var(--search-border);border-radius:8px;background:var(--search-bg)}.post-search-field:focus-within{outline:2px solid #b724a7;outline-offset:2px}.post-search input{flex:1;width:100%;min-width:0;height:44px;padding:10px 12px;border:0;outline:none;background:transparent;color:inherit;font:inherit;font-size:16px}.post-search input::placeholder{color:var(--search-muted);opacity:1}.post-search input::-webkit-search-cancel-button{display:none}.post-search .post-search-clear,.post-search .post-search-submit{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:0;border:0;border-radius:6px;color:inherit;background:transparent}.post-search .post-search-clear{font-size:23px}.post-search-dropdown{position:absolute;top:calc(100% + 6px);right:0;width:100%;border:1px solid var(--search-border);border-radius:8px;overflow:hidden;color:var(--search-ink);background:var(--search-bg);box-shadow:0 12px 30px #0002;text-align:left}.post-search-dropdown[hidden]{display:none}.post-search-status{padding:10px 12px;color:var(--search-muted);font-size:13px}.post-search-options{max-height:min(320px,45dvh);margin:0;padding:0;list-style:none;overflow-y:auto;overscroll-behavior:contain}.post-search-options a{display:flex;flex-direction:column;gap:2px;min-height:48px;padding:10px 12px;border-top:1px solid var(--search-border);overflow-wrap:anywhere}.post-search-options small{color:var(--search-muted);font-size:12px}.post-search-options a:hover,.post-search-options a[aria-selected=true]{color:var(--search-ink);background:var(--search-active)}.post-search-retry{margin:0 12px 12px;min-height:44px;padding:8px 16px}.utility-row{gap:8px 24px}.utility-contacts{display:flex;flex:1 1 240px;align-items:center;flex-wrap:wrap;min-width:0}.utility-contacts:empty{display:none}.site-header{position:relative;z-index:8}.dev-header-tools{display:flex;flex:0 1 320px;flex-direction:column;align-items:flex-end;gap:8px;min-width:0;max-width:100%;margin-left:auto}.dev-header-tools .dev-contact-phones{flex:none;min-height:0}.dev-header-tools .dev-contact-phones:empty{display:none}.dev-intro,.dev-content-header{position:relative;z-index:8}.dev-page .post-search{--search-bg: #182230;--search-ink: #f5f0ed;--search-muted: #c0bfcb;--search-border: #536071;--search-active: #354152}.dev-page .post-search-field:focus-within{outline-color:var(--dev-accent)}.post-search-summary{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:8px 20px;padding:0 15px 24px;overflow-wrap:anywhere}.post-search-summary a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:3px}.post-breadcrumb{margin-bottom:16px;font-size:14px;line-height:1.7;color:inherit}.post-breadcrumb ol{display:flex;flex-wrap:wrap;gap:4px 8px;list-style:none;padding:0;margin:0}.post-breadcrumb li{min-width:0;overflow-wrap:anywhere}.post-breadcrumb li>span{margin-left:8px;opacity:.6}.post-breadcrumb a{text-decoration:underline;text-underline-offset:3px}.post-breadcrumb a:focus-visible{outline:2px solid currentColor;outline-offset:3px}.post-breadcrumb [aria-current]{opacity:.8}.post-image-stage:has(.post-magnifier){touch-action:pan-y pinch-zoom}.post-magnifier{position:relative;overflow:hidden;isolation:isolate;cursor:zoom-in}.post-magnifier.is-locked{touch-action:pinch-zoom;cursor:crosshair}.post-image-zoom-view{position:absolute;z-index:2;pointer-events:none;border:0;border-radius:0;background-color:var(--media-surface, white);background-repeat:no-repeat;animation:image-zoom-reveal .18s ease-out both}.post-image-zoom-view[hidden]{display:none}.post-magnifier-help{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@keyframes image-zoom-reveal{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.post-image-zoom-view{animation:none}}.post-magnifier:focus-visible{outline:3px solid #3563a0;outline-offset:-3px}.post-image-carousel{position:relative;min-width:0;align-self:start}.post-image-carousel.has-thumbnails{display:grid;grid-template-columns:72px minmax(0,1fr);gap:12px;align-items:start}.post-image-stage{position:relative;min-width:0;background:var(--media-surface, #f5f5f3);border:1px solid #ddd;touch-action:pan-y pinch-zoom;opacity:1;transition:opacity .2s ease-out}.post-image-carousel.has-thumbnails .post-image-stage{aspect-ratio:4 / 5;max-height:var(--post-stage-max-height, 76dvh)}.post-image-carousel.has-thumbnails .post-image-stage>img,.post-image-carousel.has-thumbnails .post-magnifier,.post-image-carousel.has-thumbnails .post-magnifier>img{height:100%;max-height:none;aspect-ratio:auto;object-fit:contain}.dev-content-page .post-image-carousel{--post-stage-max-height: 78dvh}.dev-detail-panel .post-image-carousel{--post-stage-max-height: 65dvh}@media(max-width:900px){.dev-detail-panel .post-image-carousel{--post-stage-max-height: 40dvh}}.post-image-stage>img,.post-magnifier>img,.post-image-empty>img{display:block;width:100%;height:auto;aspect-ratio:4 / 5;max-height:76vh;object-fit:contain}.post-image-carousel button{min-width:44px;min-height:44px;padding:8px 12px;border:1px solid #bbb;background:var(--media-surface, white);color:#222;cursor:pointer}.post-image-carousel button:focus-visible{outline:3px solid #3563a0;outline-offset:3px}.post-image-thumbnail-rail{position:relative;min-height:0;align-self:stretch}.post-image-thumbnails{position:absolute;inset:0;display:flex;flex-direction:column;align-items:stretch;gap:8px;padding:2px;overflow-y:auto;overscroll-behavior-y:contain;touch-action:pan-y pinch-zoom;scrollbar-width:none}.post-image-thumbnails::-webkit-scrollbar{display:none}.post-image-carousel .post-image-thumbnail{display:block;flex-shrink:0;width:100%;min-width:44px;padding:2px;border:1px solid #ddd;border-radius:4px;background:var(--media-surface, #f5f5f3)}.post-image-thumbnail img{width:100%;height:auto;aspect-ratio:4 / 5;object-fit:contain}.post-image-carousel .post-image-thumbnail[aria-current=true]{border-color:#a72a99;box-shadow:inset 0 0 0 1px #a72a99;background:#ffe5f9}.post-image-carousel .post-image-thumbnail:focus-visible{outline-offset:-3px}.post-image-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.post-image-error{position:absolute;inset:auto 0 0;display:grid;justify-items:center;gap:8px;padding:12px;background:var(--media-error, #fffc);font-size:14px}.dev-page .post-image-thumbnail{border-color:#c99aaf4d;color:#f0e3eb;background:#211a2c}.dev-page .post-image-thumbnail[aria-current=true]{border-color:#eac3d1;box-shadow:inset 0 0 0 1px #eac3d1;background:#503044}.dev-page .post-image-thumbnail:focus-visible{outline-color:#eac3d1}@media(max-width:700px){.post-image-carousel.has-thumbnails{grid-template-columns:48px minmax(0,1fr);gap:8px}.post-image-thumbnails{padding-inline:1px;gap:6px}}@media(prefers-reduced-motion:reduce){.post-image-carousel *,.post-image-carousel *:before,.post-image-carousel *:after{animation:none;transition:none;scroll-behavior:auto}}.post-image-carousel .post-image-stage{transition:opacity .14s ease-in-out}.post-image-carousel .post-image-stage[data-image-loading=true]{opacity:0}@media(prefers-reduced-motion:reduce){.post-image-carousel .post-image-stage{transition:none}}.site-popup{width:min(440px,calc(100% - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:0;border:1px solid #dce1e7;border-radius:14px;color:#18212d;background:#fff;box-shadow:0 20px 70px #0813213d;overflow:hidden;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.site-popup:not([open]){display:none}.site-popup[open]{display:flex;flex-direction:column}.site-popup::backdrop{background:#101c2c80}.site-popup-top,.site-popup-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-shrink:0;padding:10px 18px}.site-popup-top{border-bottom:1px solid #e9ecf0;font-size:12px;font-weight:700;color:#667387}.site-popup-scroll{overflow:auto;overscroll-behavior:contain;min-height:0}.site-popup-content{padding:24px;text-align:left;color:#18212d;overflow-wrap:anywhere}.site-popup-content h2{margin:0 0 18px;font:700 23px/1.4 system-ui,sans-serif;color:#18212d;letter-spacing:-.025em}.site-popup-content img{display:block;width:100%;height:auto;max-height:50dvh;object-fit:contain;border-radius:6px;background:#f6f7f9}.site-popup-text{margin:18px 0 0;white-space:pre-wrap;font:400 15px/1.8 system-ui,sans-serif;color:#364254}.site-popup-image-error{padding:28px 14px;background:#f5f6f8;color:#667387;font:14px/1.6 system-ui,sans-serif}.site-popup-link{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;margin-top:22px;padding:11px 16px;border-radius:7px;background:#233c59;color:#fff;text-decoration:none;font:600 14px/1.4 system-ui,sans-serif;min-height:44px;box-sizing:border-box}.site-popup-actions{border-top:1px solid #e9ecf0;background:#fafbfc}.site-popup button{font:500 13px/1.4 system-ui,sans-serif;min-height:44px;padding:8px;border:0;border-radius:5px;color:#364254;background:transparent;cursor:pointer}.site-popup button:hover{background:#edf0f4}.site-popup button:focus-visible,.site-popup-link:focus-visible{outline:3px solid #3273a9;outline-offset:2px}.site-popup-feedback{position:fixed;z-index:30;left:16px;right:16px;bottom:16px;width:min(460px,calc(100% - 32px));padding:14px 18px;margin:auto;color:#18212d;background:#fff5d6;border:1px solid #d4bd7a;border-radius:8px;font:14px/1.6 system-ui,sans-serif}@media(max-width:480px){.site-popup-content{padding:20px}.site-popup-content h2{font-size:21px}}@media(prefers-reduced-motion:no-preference){.site-popup[open]{animation:popup-appear .14s ease-out}@keyframes popup-appear{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}}.site-popup-link .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.site-popup-content:has(.site-popup-media){container-type:inline-size}.site-popup-media{position:relative;display:grid;grid-template-rows:minmax(0,1fr);place-items:center;height:min(62.5cqw,50dvh);background:#f6f7f9;border-radius:6px;overflow:hidden}.site-popup-content .site-popup-media img{width:100%;height:100%;min-height:0;max-height:none;object-fit:contain}.site-popup-media[data-loading=true]:after{content:"";position:absolute;inset:0;pointer-events:none;background:#e9e8e6}.site-popup-media .site-popup-image-error{margin:0}:root[data-dev-theme] .site-popup-media:not([data-loading]){width:fit-content;max-width:100%;height:auto;margin-inline:auto;background:transparent}:root[data-dev-theme] .site-popup-media:not([data-loading]) img{width:auto;max-width:100%;height:auto;max-height:50dvh;background:transparent}.dev-category-scroller{position:relative;display:flex;align-items:center;gap:6px;min-width:0}.dev-category-scroll-viewport{position:relative;flex:1;min-width:0}.dev-category-scroll-viewport>nav{scrollbar-width:none}.dev-category-scroll-viewport>nav::-webkit-scrollbar{display:none}.dev-category-scroll-viewport>nav>*{max-width:var(--dev-category-item-max, 100%)}.dev-category-scroll-viewport:before,.dev-category-scroll-viewport:after{content:"";position:absolute;z-index:1;top:4px;bottom:4px;width:22px;pointer-events:none;opacity:0;transition:opacity .18s ease}.dev-category-scroll-viewport:before{left:0;background:linear-gradient(90deg,#101723dd,transparent)}.dev-category-scroll-viewport:after{right:0;background:linear-gradient(270deg,#101723dd,transparent)}.dev-category-scroll-viewport[data-left=true]:before,.dev-category-scroll-viewport[data-right=true]:after{opacity:1}.dev-page .dev-category-scroll-button{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:0;border:1px solid #eac3d138;border-radius:50%;color:#f1dce7;background:#271e304d;transition:background-color .18s ease,border-color .18s ease,opacity .18s ease}.dev-page .dev-category-scroll-button:hover:not(:disabled){border-color:#eac3d17a;background:#67435859}.dev-page .dev-category-scroll-button:focus-visible{outline:2px solid var(--dev-accent);outline-offset:-4px}.dev-page .dev-category-scroll-button:disabled{opacity:.28}.dev-category-scroll-hint{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(max-width:700px){.dev-page .dev-category-scroll-button{display:none}}.dev-page{--dev-ink: #f5f0ed;--dev-muted: #c0bfcb;--dev-accent: #eac3d1;--dev-display-font: Georgia, "Times New Roman", serif;--dev-card-width: clamp(240px, 20vw, 300px);--dev-card-gap: 32px;--dev-gutter: clamp(20px, 4vw, 70px);position:relative;isolation:isolate;min-height:100dvh;overflow:clip;color:var(--dev-ink);background:#101723;font-family:Nunito Sans,Arial,sans-serif}.dev-page:before{content:"";position:fixed;z-index:-2;inset:-8px;pointer-events:none;opacity:.36;background:url(/images/dev-new-york-night.webp) 48% center / cover no-repeat;filter:blur(3px) saturate(.65)}.dev-page:after{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:linear-gradient(180deg,#10172375,#10172318 40%,#101723ad),linear-gradient(90deg,#10172355,transparent 30%,transparent 70%,#10172355)}.dev-page button,.dev-page a{-webkit-tap-highlight-color:transparent}.dev-page button{border:1px solid #8c9aaf55;border-radius:999px;color:var(--dev-ink);background:#152131cc}.dev-page button:disabled{cursor:default;opacity:.5}.dev-page a:focus-visible,.dev-page button:focus-visible{outline:2px solid var(--dev-accent);outline-offset:5px}.dev-page h1,.dev-page h2,.dev-page strong,.dev-page p{overflow-wrap:anywhere}.dev-page a:hover{color:var(--dev-accent)}.dev-skip-link{position:fixed;top:-90px;left:24px;z-index:10;padding:12px 20px;border-radius:8px;background:#eff7e4;color:#101821}.dev-skip-link:focus{top:12px}.dev-main{max-width:1800px;margin-inline:auto;padding-block:clamp(40px,4.5vw,76px) 40px}.dev-intro{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 24px;padding-inline:var(--dev-gutter);margin-bottom:22px}.dev-contact-phones{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;flex:0 1 280px;gap:0 14px;min-height:44px;max-width:100%;margin-left:auto;font-size:14px;line-height:1.5;color:#f4e5ec}.dev-contact-phones a{display:inline-flex;align-items:center;min-height:44px;max-width:100%;overflow-wrap:anywhere}.dev-contact-phones .skeleton-line{width:110px}.dev-intro h1{font-family:var(--dev-display-font);font-size:clamp(52px,6.7vw,98px);line-height:.98;font-weight:400;letter-spacing:-.055em}.dev-intro h1 em{font-weight:400;color:#eddbdc}.dev-title-period{color:var(--dev-accent)}.dev-category-scroller--primary{margin:0 var(--dev-gutter) 26px}.dev-category-nav{display:flex;align-items:center;gap:8px;margin:0;padding:8px 8px 12px;overflow-x:auto;overscroll-behavior-x:contain}.dev-category-item{display:flex;align-items:stretch;flex-shrink:0;max-width:100%;border:1px solid #eac3d126;border-radius:999px;color:var(--dev-muted);background:#201b2b33}.dev-category-item:has(.dev-category-root[aria-current]){border-color:#eac3d170;color:#f9eaf2;background:#6743583d}.dev-category-root{display:inline-flex;align-items:center;min-width:0;min-height:44px;padding:10px 4px 10px 18px;border-radius:999px;font-family:var(--dev-display-font);font-style:normal;font-weight:400;font-size:clamp(15px,1.3vw,18px);line-height:1.4;letter-spacing:-.025em;overflow-wrap:anywhere}.dev-page button.dev-category-root{border:0;color:inherit;background:transparent}.dev-page .dev-category-toggle{display:grid;place-items:center;flex-shrink:0;width:44px;min-height:44px;padding:0;border:0;color:inherit;background:transparent}.dev-category-toggle svg{transition:transform .2s ease}.dev-category-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.dev-category-menu{position:fixed;inset:auto;width:min(300px,calc(100vw - 32px));margin:0;padding:8px;overflow-y:auto;border:1px solid #eac3d124;border-radius:12px;color:#f1e8ed;background:#201727f2;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 16px 55px #05040e55;scrollbar-width:thin;scrollbar-color:#eac3d150 transparent;opacity:0;transform:translateY(-6px);transition:opacity .18s ease,transform .22s ease,display .22s allow-discrete,overlay .22s allow-discrete}.dev-category-menu:popover-open{opacity:1;transform:translateY(0)}.dev-category-menu:not(:popover-open){pointer-events:none}.dev-category-menu::backdrop{background:transparent}.dev-category-menu a{display:flex;align-items:center;width:100%;min-height:44px;padding:10px 12px;border-radius:7px;font-family:var(--dev-display-font);font-style:normal;font-weight:400;font-size:16px;line-height:1.5;overflow-wrap:anywhere}.dev-category-menu .dev-category-all{position:sticky;top:0;z-index:1;color:#f9eaf2;background:#2b1d30;font-size:11px;letter-spacing:.1em}.dev-category-menu .category-branch-children{border-color:#eac3d126}.dev-category-menu a:focus-visible{outline:2px solid #eac3d1;outline-offset:-2px}@starting-style{.dev-category-menu:popover-open{opacity:0;transform:translateY(-6px)}}@media(hover:hover)and (pointer:fine){.dev-category-menu a:hover{color:#f9eaf2;background:#eac3d114}}@media(prefers-reduced-motion:no-preference){.dev-category-menu:popover-open .category-branch-list a{animation:category-ripple .24s ease-out both;animation-delay:var(--nav-delay, 0ms)}.dev-category-menu:focus-within .category-branch-list a{animation:none}}.dev-row h2{scroll-margin-top:24px}.dev-row h2:target{color:var(--dev-accent)}.dev-row h2:focus{outline:none}.dev-rows{display:grid;gap:38px}.dev-row{min-width:0}.dev-row-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-inline:clamp(20px,4vw,70px);margin-bottom:14px}.dev-row-name{display:flex;align-items:center;gap:13px;min-width:0;min-height:44px}.dev-row h2{font-family:var(--dev-display-font);font-style:normal;font-size:clamp(23px,2.3vw,32px);font-weight:400;line-height:1.35;letter-spacing:-.04em}.dev-row-viewport{overflow-x:auto;overflow-y:hidden;padding:12px clamp(20px,4vw,70px) 22px;scrollbar-width:thin;scrollbar-color:#b5c4d455 transparent;scroll-padding-inline:24px;scroll-snap-type:x proximity;overscroll-behavior-x:contain}.dev-row-viewport.has-overflow{-webkit-mask-image:linear-gradient(90deg,transparent,#000 clamp(20px,12vw,180px),#000 calc(100% - clamp(20px,12vw,180px)),transparent);mask-image:linear-gradient(90deg,transparent,#000 clamp(20px,12vw,180px),#000 calc(100% - clamp(20px,12vw,180px)),transparent)}.dev-row-track{display:flex;gap:var(--dev-card-gap);width:max-content}.dev-card-group{display:flex;flex-shrink:0;align-items:stretch;gap:var(--dev-card-gap);width:max-content;margin:0;padding:0;list-style:none}.dev-card-group>li{display:flex;scroll-snap-align:start}.dev-page .dev-card{position:relative;display:block;flex-shrink:0;width:var(--dev-card-width);height:100%;padding:0;text-align:left;cursor:pointer;overflow:hidden;border:1px solid #ecc4d43d;border-radius:8px;color:var(--dev-ink);background:#142031d9;box-shadow:0 5px 20px #00000018;transition:box-shadow .2s,border-color .2s}.dev-card-picture{position:relative;display:block;overflow:hidden;width:100%;aspect-ratio:4 / 5;background:#182434}.dev-card-picture:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 0,#f8d7e31c,transparent 68%);opacity:0;transition:opacity .5s ease}.dev-card-picture img{width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2,.65,.3,1)}.dev-card-label{display:block;height:40px;padding:10px;overflow:hidden}.dev-card-label strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:400;line-height:20px}.dev-empty-row,.dev-catalog-status{margin-inline:clamp(20px,4vw,70px);padding:35px 24px;border:1px solid #a5b0c129;border-radius:10px;background:#111c2ab8;color:var(--dev-muted);font-size:14px}.dev-catalog-status button{min-height:44px;padding:8px 20px;margin-top:15px}.dev-about{margin:68px var(--dev-gutter) 12px;max-width:780px;padding-block:12px}.dev-about h2{color:var(--dev-ink);font-family:Georgia,Times New Roman,serif;font-size:clamp(25px,2.7vw,37px);line-height:1.3;font-weight:400;letter-spacing:-.025em}.dev-about p{margin-top:18px;max-width:80ch;color:#d0d7e1;font-size:14px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere}.dev-footer{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:14px 24px;max-width:1800px;margin:auto;padding:25px var(--dev-gutter) 32px;color:var(--dev-muted);font-size:11px}.dev-footer>:first-child{max-width:35%;overflow-wrap:anywhere}.dev-footer>:nth-child(2){letter-spacing:.15em;font-size:9px}.dev-photo-credit{font-size:10px}@media(prefers-reduced-motion:no-preference){.dev-row-viewport.is-flowing{overflow-x:auto;scrollbar-width:none;scroll-snap-type:none;overflow-anchor:none}.dev-row-viewport.is-flowing::-webkit-scrollbar{display:none}.dev-row-viewport.is-flowing .dev-row-track{margin-left:calc(-1 * var(--dev-gutter));animation:dev-flow-left var(--dev-loop-duration, 45s) linear infinite;will-change:transform}.dev-row-viewport.is-flowing .dev-direction-right{animation-direction:reverse}.dev-row.is-card-hovered:has(.dev-card:hover) .dev-row-track{animation-play-state:paused}.dev-row.is-interacting .dev-row-track{animation:none;transform:none}}@media(hover:hover)and (pointer:fine)and (prefers-reduced-motion:no-preference){.dev-page .dev-card{transition:transform .4s cubic-bezier(.2,.65,.3,1),box-shadow .2s,border-color .2s}.dev-page .dev-card:hover{z-index:1;transform:scale(1.035)}.dev-page .dev-card:hover{border-color:#ecc4d478;box-shadow:0 0 28px #ef82b621}.dev-card:hover .dev-card-picture img{transform:scale(1.035)}.dev-card:hover .dev-card-picture:after{opacity:1}}.dev-row-viewport:has(.dev-card:focus-visible){overflow-x:auto;-webkit-mask-image:none;mask-image:none}.dev-row-viewport:has(.dev-card:focus-visible) .dev-row-track{margin-left:0;animation:none;transform:none}.dev-row-viewport:has(.dev-card:focus-visible) .dev-visual-clone{display:none}@keyframes dev-flow-left{0%{transform:translate(0)}to{transform:translate(calc(-1 * var(--dev-loop-distance)))}}.dev-detail-panel{position:fixed;z-index:20;isolation:isolate;inset:0 0 0 auto;width:min(620px,94vw);max-width:none;max-height:none;height:100dvh;margin:0 0 0 auto;padding:0;overflow:visible;border:0;color:var(--dev-ink);background:transparent;overscroll-behavior:contain;color-scheme:dark;transform:translate(100%);transition:transform .72s cubic-bezier(.18,.72,.24,1)}.dev-detail-panel:before{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:#1b1322e0;-webkit-backdrop-filter:blur(18px) saturate(.85);backdrop-filter:blur(18px) saturate(.85);-webkit-mask-image:linear-gradient(90deg,transparent,#0006 22%,#000c 60%,#000);mask-image:linear-gradient(90deg,transparent,#0006 22%,#000c 60%,#000);opacity:1;transition:opacity .72s ease}.dev-detail-panel:after{content:"";position:absolute;z-index:2;inset:0 auto 0 0;width:1px;pointer-events:none;background:linear-gradient(180deg,transparent,#eac3d126 22%,#eac3d152 50%,#eac3d126 78%,transparent);transition:opacity .72s ease}.dev-detail-panel[open]{transform:translate(0)}.dev-detail-panel.is-closing{transform:translate(100%);transition-timing-function:cubic-bezier(.4,0,.6,1)}.dev-detail-panel.is-closing:before,.dev-detail-panel.is-closing:after,.dev-detail-panel.is-closing .dev-detail-scroll,.dev-detail-panel.is-closing .dev-detail-collapse{opacity:0}@starting-style{.dev-detail-panel[open]{transform:translate(100%)}}.dev-detail-scroll{height:100%;padding-left:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#c1aeba55 transparent;opacity:1;transition:opacity .72s ease}.dev-detail-scroll:focus-visible{outline:2px solid #eac3d1;outline-offset:-6px}.dev-detail-content{opacity:1;transition:opacity .16s ease-out}.dev-detail-content.is-switching{opacity:0;transition-duration:.1s;transition-timing-function:ease-in}.dev-sheet-handle{position:absolute;z-index:3;inset:0;pointer-events:none}.dev-page .dev-detail-collapse{position:absolute;z-index:3;top:50%;left:8px;display:grid;place-items:center;width:44px;min-height:56px;padding:0;border:0;border-radius:999px;color:#f9eaf2;background:transparent;transform:translateY(-50%);opacity:1;transition:opacity .72s ease,background-color .25s ease}.dev-detail-collapse{pointer-events:auto}.dev-page .dev-detail-collapse:focus-visible{outline:none;background:#eac3d12b}.dev-detail-collapse:focus-visible svg{color:#fff;filter:drop-shadow(0 0 5px #fff) drop-shadow(0 0 10px #eac3d1)}.dev-detail-collapse svg{display:block;filter:drop-shadow(0 1px 4px #090611)}.dev-detail-collapse:hover{background:#eac3d117}.dev-detail-panel .dev-detail-body{container-type:inline-size;padding:24px 28px 45px}.dev-detail-media-placeholder{height:min(125cqw,65dvh);min-height:0;background:#1c1726;border-radius:8px;overflow:hidden}.dev-detail-panel .post-image-carousel{border:0;border-radius:8px;overflow:hidden}.dev-page .post-image-carousel{height:auto;background:transparent}.dev-page .post-image-carousel .post-image-stage:not(.skeleton-surface),.dev-page .post-image-carousel .post-magnifier{width:fit-content;max-width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:auto;margin-inline:auto;padding:0;border:0;background:transparent}.dev-page .post-image-carousel .post-image-stage img,.dev-page .post-image-carousel.post-image-empty>img{display:block;width:auto;max-width:100%;height:auto;max-height:var(--post-stage-max-height, 78dvh);aspect-ratio:auto;object-fit:contain;margin-inline:auto;background:transparent}.dev-page .post-image-carousel .post-image-thumbnail img{object-fit:cover}.dev-detail-panel .post-image-error{background:#152131e8;color:#e5eaf0}.dev-detail-copy{margin-top:24px;padding:24px;border-radius:10px;background:#1b1322f5;text-shadow:0 1px 4px #090611,0 0 18px #090611}.dev-detail-copy h2{margin-top:0;color:#f4e5ec;font-family:Georgia,Times New Roman,serif;font-size:clamp(24px,3vw,32px);line-height:1.4;font-weight:400;letter-spacing:-.025em}.dev-detail-copy>[role=status]{margin-top:30px;color:var(--dev-muted)}.dev-detail-copy [role=status] button{min-height:44px;padding:8px 18px;margin-top:15px}@media(prefers-reduced-motion:no-preference){.dev-detail-copy .dev-post-content{animation:dev-detail-copy-in .16s ease-out both}@keyframes dev-detail-copy-in{0%{opacity:0}to{opacity:1}}}.dev-post-content{margin-top:24px;padding-top:23px;border-top:1px solid #d5acbf2e;color:#eee4ec;font-size:15px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:700px){.dev-page{--dev-card-width: clamp(192px, 56vw, 240px);--dev-card-gap: 24px}.dev-intro{margin-bottom:18px}.dev-category-nav{gap:6px}.dev-category-scroller--primary{margin-bottom:22px}.dev-category-scroller--primary{margin-inline:16px}.dev-rows{gap:32px}.dev-row-heading{gap:12px;flex-wrap:wrap}.dev-row-name{gap:9px}.dev-card-label{padding-left:14px}.dev-row-viewport.has-overflow{-webkit-mask-image:linear-gradient(90deg,transparent,#000 24px,#000 calc(100% - 24px),transparent);mask-image:linear-gradient(90deg,transparent,#000 24px,#000 calc(100% - 24px),transparent)}.dev-footer>:nth-child(2){display:none}.dev-detail-panel .dev-detail-body{padding-inline:20px}}@media(max-width:900px){.dev-detail-panel{inset:auto 0 0;width:100%;height:70vh;height:70dvh;margin:0;border-radius:24px 24px 0 0;transform:translateY(100%)}.dev-detail-panel:before{border-radius:inherit;background:linear-gradient(180deg,#302336ce,#201a2ce8 28%,#151724f2);-webkit-mask-image:none;mask-image:none}.dev-detail-panel:after{inset:0 18px auto;width:auto;height:1px;background:linear-gradient(90deg,transparent,#eac3d147 22%,#f5dfeb70 50%,#eac3d147 78%,transparent)}.dev-detail-panel[open]{transform:translateY(var(--dev-sheet-drag, 0px))}.dev-detail-panel.is-dragging{transition:none;user-select:none;-webkit-user-select:none}.dev-detail-panel.is-closing{transform:translateY(100%)}@starting-style{.dev-detail-panel[open]{transform:translateY(100%)}}.dev-sheet-handle{inset:-22px 0 auto;height:44px;pointer-events:auto;touch-action:pinch-zoom}.dev-page .dev-detail-collapse{top:50%;left:50%;width:56px;min-height:44px;transform:translate(-50%,-50%);background:transparent;box-shadow:none}.dev-detail-scroll{padding:32px 0 env(safe-area-inset-bottom,0px);border-radius:inherit;-webkit-overflow-scrolling:touch}.dev-detail-panel .dev-detail-body{padding-top:12px}.dev-detail-media-placeholder{height:min(125cqw,40dvh)}.dev-detail-collapse svg{transform:rotate(90deg)}}@media(prefers-reduced-motion:reduce){.dev-row-viewport.is-flowing{overflow-x:auto}.dev-row-track{animation:none!important;transform:none!important}.dev-visual-clone{display:none}}@media(prefers-reduced-motion:reduce){.dev-page *,.dev-page *:before,.dev-page *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.dev-detail-panel,.dev-detail-panel::backdrop{transition:none!important}}.dev-post-article .post-image-stage,.dev-detail-body .post-image-stage{transition-duration:.12s}.dev-post-article .post-image-stage[data-image-loading=true],.dev-detail-body .post-image-stage[data-image-loading=true]{opacity:0}@media(prefers-reduced-motion:no-preference){.dev-post-article .dev-post-prose{animation:dev-post-copy-reveal .6s ease-out both}@keyframes dev-post-copy-reveal{0%{opacity:0}to{opacity:1}}}@media(max-width:900px){.dev-page:before{background-image:url(/images/dev-new-york-night-mobile.webp)}}@media(min-width:901px){.dev-detail-panel{width:min(780px,72vw)}.dev-detail-scroll{overflow:hidden}.dev-detail-content{height:100%}.dev-detail-panel .dev-detail-body{display:grid;grid-template-rows:minmax(0,62fr) minmax(0,38fr);gap:16px;height:100%;min-height:0;padding:20px 24px}.dev-detail-panel .post-image-carousel{width:100%;height:100%;min-height:0;align-self:stretch;--post-stage-max-height: 100%}.dev-detail-panel .post-image-carousel .post-image-stage:not(.skeleton-surface),.dev-detail-panel .post-image-carousel .post-magnifier{width:100%;height:100%;max-height:100%}.dev-detail-panel .post-image-carousel .post-image-stage img,.dev-detail-panel .post-image-carousel.post-image-empty>img{width:100%;height:100%;max-height:100%;object-fit:contain}.dev-detail-panel .dev-detail-copy{min-height:0;margin-top:0;padding:20px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}.dev-detail-copy .dev-post-content{margin-top:16px;padding-top:16px}}.dev-page .dev-detail-collapse{width:48px;height:48px;min-height:48px;border:1px solid #f4e7ef99;border-radius:50%;color:#fff;background:#211b2dcc;box-shadow:0 3px 16px #08061140;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.dev-page .dev-detail-collapse:hover{background:#41354be6;border-color:#fff}.dev-page .dev-detail-collapse:focus-visible{outline:2px solid #fff;outline-offset:3px;background:#41354be6}.dev-footer>.site-copyright:first-child{max-width:100%;letter-spacing:normal;line-height:1.7}.dev-home-brand,.dev-content-brand{display:inline-block;transition:filter .2s ease,transform .2s ease}.dev-home-brand em,.dev-content-brand em{transition:color .2s ease}.dev-home-brand:hover em,.dev-content-brand:hover em,.dev-home-brand:focus-visible em,.dev-content-brand:focus-visible em{color:#fff2f6}.dev-home-brand:hover,.dev-content-brand:hover{filter:drop-shadow(0 2px 9px #efbad26b);transform:translateY(-2px)}.dev-home-brand:focus-visible,.dev-content-brand:focus-visible{outline:2px solid var(--dev-accent);outline-offset:7px;border-radius:3px}.dev-search-heading{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(prefers-reduced-motion:reduce){.dev-home-brand,.dev-content-brand,.dev-home-brand em,.dev-content-brand em{transition:none}.dev-home-brand:hover,.dev-content-brand:hover{transform:none}}.dev-content-header,.dev-content-main{width:100%;max-width:1400px;margin-inline:auto;padding-inline:var(--dev-gutter)}.dev-content-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px;padding-block:32px 24px}.dev-content-brand{font-family:var(--dev-display-font);font-size:clamp(30px,3.5vw,46px);line-height:1;letter-spacing:-.055em}.dev-content-brand em{color:#eddbdc}.dev-content-brand>span{color:var(--dev-accent)}.dev-content-page .dev-category-scroller--primary{width:calc(100% - var(--dev-gutter) * 2);max-width:calc(1400px - var(--dev-gutter) * 2);margin-inline:auto;margin-bottom:30px}.dev-content-main{min-height:55dvh;padding-bottom:48px}.dev-list-heading{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:15px 25px;margin-block:18px 28px}.dev-list-heading h1,.dev-post-heading h1{max-width:100%;color:#f4e8ed;font-family:Georgia,Times New Roman,serif;font-size:clamp(32px,4.5vw,64px);font-weight:400;letter-spacing:-.04em;line-height:1.15}.dev-list-heading h1,.dev-filter-tabs a,.dev-post-category{font-family:var(--dev-display-font);font-style:normal;font-weight:400;letter-spacing:-.035em}.dev-category-scroller--filters{margin:-8px -8px 24px}.dev-filter-tabs{display:flex;flex-wrap:nowrap;gap:8px;margin:0;padding:8px;overflow-x:auto;overscroll-behavior-x:contain;scroll-padding-inline:8px;scroll-snap-type:x proximity}.dev-filter-tabs a{flex-shrink:0;scroll-snap-align:start;display:inline-flex;align-items:center;justify-content:center;min-height:44px;max-width:100%;padding:10px 17px;border:1px solid #eac3d12b;border-radius:999px;color:var(--dev-muted);background:#211a2a55;font-size:16px;line-height:1.5;overflow-wrap:anywhere}.dev-filter-tabs a[aria-current]{color:#fff0f6;border-color:#eac3d180;background:#67435859}.dev-post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 28px}.dev-story-card{min-width:0;border:1px solid #eac3d12e;border-radius:10px;overflow:hidden;background:#171c2bb3}.dev-story-card>a{display:block;height:100%}.dev-story-card:focus-within{outline:2px solid var(--dev-accent);outline-offset:4px}.dev-story-image{position:relative;overflow:hidden;aspect-ratio:4 / 5;background:#1b1c2b}.dev-story-image img{width:100%;height:100%;object-fit:cover}.dev-content-state{margin-block:28px;padding:32px;border-radius:12px;color:#ddd2df;background:#20192b99;line-height:1.8}.dev-content-state h1{font-family:Georgia,Times New Roman,serif;font-size:clamp(24px,3vw,36px);font-weight:400}.dev-content-page .dev-content-state button{min-height:44px;margin-top:18px;padding:10px 20px}.dev-post-heading{margin-bottom:30px}.dev-post-category{display:inline-flex;align-items:center;min-height:44px;margin-bottom:10px;color:var(--dev-muted);font-size:16px}.dev-post-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:start;gap:clamp(28px,5vw,72px)}.dev-post-prose{min-width:0;padding:24px 26px;border-radius:12px;color:#f1e8ef;background:#21192a8c}.dev-post-prose p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:16px;line-height:1.95}.dev-content-page .post-image-carousel{min-width:0;border:0;border-radius:10px;overflow:hidden;background:transparent}.dev-content-page .post-image-carousel:focus-visible,.dev-content-page .post-image-carousel button:focus-visible{outline:2px solid var(--dev-accent);outline-offset:-3px}.dev-content-page .post-image-error{color:#f1e8ef;background:#21192aeb}.dev-related{margin-top:58px;padding-top:30px;border-top:1px solid #eac3d121}.dev-related>h2{margin-bottom:24px;font-family:Georgia,Times New Roman,serif;font-size:25px;font-weight:400}@media(hover:hover)and (pointer:fine)and (prefers-reduced-motion:no-preference){.dev-story-image img{transition:transform .5s ease}.dev-story-card:hover .dev-story-image img{transform:scale(1.025)}}@media(max-width:900px){.dev-post-layout{grid-template-columns:minmax(0,1fr)}}@media(max-width:700px){.dev-content-page .dev-category-scroller--primary{width:calc(100% - 32px);margin-inline:16px}.dev-content-header{padding-block:28px 18px;gap:12px}.dev-post-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 14px}.dev-post-prose{padding:20px}.dev-content-state{padding:24px 20px}}.dev-story-title{padding:15px 16px 18px;color:var(--dev-ink);font-size:clamp(14px,1.3vw,17px);font-weight:400;line-height:1.5;overflow-wrap:anywhere}.skeleton-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.site-skeleton{min-width:0}:root{--skeleton-ray: #fff9e77a;--skeleton-ray-soft: #fff8e71c;--skeleton-halo: #fffaf063;--skeleton-haze: #d2dce52e;--skeleton-edge: #fffdf77a;--skeleton-frame: #b5b2ad21;--skeleton-motion: none}.dev-page{--skeleton-ray: #eddae52b;--skeleton-ray-soft: #eddae50c;--skeleton-halo: #d2c3df14;--skeleton-haze: #8ba5bd12;--skeleton-edge: #e7daef24;--skeleton-frame: #c3b4d312}.skeleton-surface{border-radius:4px}.skeleton-line{display:inline-block;width:65%;min-width:5ch;height:.8em;vertical-align:middle}.skeleton-tabs{overflow:hidden;flex-wrap:nowrap}.skeleton-pill{display:block;flex:0 0 112px;height:44px;border-radius:4px}.dev-page .skeleton-pill{border-radius:999px}.dev-page .dev-category-nav.skeleton-tabs{min-height:68px}.dev-page .dev-filter-tabs.skeleton-tabs{min-height:66px}.dev-page .site-skeleton .dev-row-heading h2{width:12ch}.dev-page .site-skeleton .dev-row-viewport{overflow:hidden}.entry-copy.site-skeleton h2{color:#000;font-size:22px;line-height:26.4px;margin-bottom:15px}.skeleton-header-nav{display:flex;align-items:center;justify-content:center;gap:24px;min-height:48px;overflow:hidden}.skeleton-header-nav .skeleton-pill{height:18px}.site-title .skeleton-line{width:10ch}.site-title,.entry-bridge h1{min-width:min(100%,10ch)}.entry-bridge .skeleton-line{width:10ch}.card-image,.entry-banner{position:relative}.card-image:has(img[aria-busy=true]):before,.dev-story-image:has(img[aria-busy=true]):before,.dev-card-picture:has(img[aria-busy=true]):before,.entry-banner:has(img[aria-busy=true]):before,.entry-banner[data-loading=true]:before{content:"";position:absolute;inset:0;pointer-events:none;background:var(--media-placeholder, #e9e8e6)}.post-image-carousel[data-loading=true]:after{content:"";position:absolute;inset:0;pointer-events:none;background:var(--media-placeholder, #e9e8e6);border-radius:inherit}.dev-detail-media-placeholder{background:#302c3b}.skeleton-surface,.skeleton-surface:is(.card-image,.dev-story-image,.dev-card-picture,.dev-detail-media-placeholder),.post-image-carousel .post-image-stage.skeleton-surface,.site-skeleton[aria-busy=true] .post-image-carousel .post-image-stage.skeleton-surface,.card-image:has(img[aria-busy=true]):before,.dev-story-image:has(img[aria-busy=true]):before,.dev-card-picture:has(img[aria-busy=true]):before,.entry-banner:has(img[aria-busy=true]):before,.entry-banner[data-loading=true]:before,[data-list-reveal=pending] :is(.card-image,.dev-story-image,.dev-card-picture):before,:is(.card-image,.dev-story-image,.dev-card-picture):has(img[data-list-image-state=loading]):before,.post-image-carousel[data-loading=true]:after,.site-popup-media[data-loading=true]:after{background-color:var(--media-placeholder, #e9e8e6);background-image:linear-gradient(112deg,transparent 35%,var(--skeleton-ray-soft) 44%,var(--skeleton-ray) 49%,var(--skeleton-ray-soft) 54%,transparent 64%),radial-gradient(ellipse at 16% 12%,var(--skeleton-halo),transparent 64%),linear-gradient(145deg,var(--skeleton-haze),transparent 70%);background-size:240% 100%,100% 100%,100% 100%;background-position:58% 0,0 0,0 0;background-repeat:no-repeat;box-shadow:inset 0 1px 0 var(--skeleton-edge),inset 0 0 0 1px var(--skeleton-frame);animation:var(--skeleton-motion)}.post-page .post-image-carousel,.dev-content-page .post-image-carousel{container-type:inline-size}.post-page .post-image-carousel .post-image-stage,.dev-content-page .site-skeleton .post-image-carousel .post-image-stage{height:min(125cqw,var(--post-stage-max-height, 76dvh));min-height:0;max-height:none;aspect-ratio:auto}.post-page .post-image-carousel.has-thumbnails .post-image-stage{aspect-ratio:auto;max-height:none}.post-page .post-image-carousel .post-magnifier,.post-page .post-image-carousel .post-image-stage img{height:100%;max-height:none;aspect-ratio:auto;object-fit:contain}.post-page .post-image-empty>img{height:min(125cqw,var(--post-stage-max-height, 76dvh));max-height:none;aspect-ratio:auto;object-fit:contain}.post-copy{min-width:0}.post-copy,.dev-post-prose{min-height:min(15em,40dvh)}.gallery-state,.dev-list-results>.dev-content-state{min-height:180px}@media(prefers-reduced-motion:no-preference){:root{--skeleton-motion: skeleton-reflection 3.6s ease-in-out -1.4s infinite}}@keyframes skeleton-reflection{0%,10%{background-position:140% 0,0 0,0 0}72%,to{background-position:-40% 0,0 0,0 0}}@media(prefers-reduced-motion:reduce){.skeleton-surface{animation:none!important}}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/nunito-sans-latin-400-normal.woff2) format("woff2")}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/nunito-sans-latin-700-normal.woff2) format("woff2")}:root{font-family:Nunito Sans,Arial,sans-serif;color:#333;background:#fff;font-synthesis:none;line-height:1.5}*{box-sizing:border-box}body{margin:0;min-width:320px;background:#fff}body:has(dialog:modal){overflow:hidden}::-webkit-scrollbar{width:12px}::-webkit-scrollbar-track{background:#f7f7f7}::-webkit-scrollbar-thumb{background:#8fa8ae;border:4px solid #f7f7f7;border-radius:8px}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:2px solid #b724a7;outline-offset:3px}h1:focus{outline:none}h1,h2,h3,p{margin:0}img{display:block;max-width:100%}a,button{-webkit-tap-highlight-color:transparent}.site-container{width:100%;max-width:1280px;margin-inline:auto}.skip-link{position:fixed;top:-80px;left:15px;z-index:10;color:#fff;background:#a7259c;padding:10px 20px}.skip-link:focus{top:0}.top-wave{height:42px;overflow:hidden;color:#dedede;background:#fff}.top-wave svg{display:block}.top-wave--image{height:40px}.top-wave>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.utility-row{min-height:44px;display:flex;flex-wrap:wrap;align-items:center;padding:8px 15px;overflow-wrap:anywhere;font-size:13px;font-weight:700;color:#777}.contact-number{display:inline-flex;align-items:center;min-width:0;max-width:100%}.contact-number a{min-width:0;overflow-wrap:anywhere}.contact-separator{white-space:pre}.logo-row{position:relative;min-height:101px;display:grid;place-items:center;padding:6px 60px 20px}.site-title{max-width:100%;color:#222;font-size:34px;font-weight:700;line-height:1.2;text-align:center;overflow-wrap:anywhere}.desktop-nav{position:relative;z-index:5;min-height:50px;border-top:1px solid #ddd;border-bottom:1px solid #ddd;color:#555;font-size:16px}.desktop-nav-list{display:flex;flex-wrap:wrap;align-items:stretch;justify-content:center;gap:0 15px;max-width:1280px;margin:0 auto;padding:0 15px;list-style:none}.desktop-nav-item{position:relative;min-width:0;max-width:100%}.desktop-nav-heading{display:flex;align-items:stretch;min-height:48px}.desktop-category-link{display:flex;align-items:center;gap:6px;min-width:0;padding:8px 3px;overflow-wrap:anywhere}.category-disclosure{display:grid;place-items:center;flex-shrink:0;width:44px;min-height:48px;padding:0;border:0;background:none}.category-disclosure span{width:7px;height:7px;margin-top:-4px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transition:transform .18s}.category-disclosure[aria-expanded=true] span{margin-top:4px;transform:rotate(225deg)}.desktop-submenu{position:absolute;top:100%;left:0;z-index:1;width:min(320px,calc(100vw - 30px));max-height:min(65dvh,480px);padding:8px;overflow-y:auto;background:#fff;border:1px solid #e5dce4;border-radius:0 0 8px 8px;box-shadow:0 10px 24px #41243a1a}.desktop-submenu[hidden]{display:none}.category-branch-list{margin:0;padding:0;list-style:none}.category-branch-list li{min-width:0}.category-branch-children{margin:0;border-inline-start:1px solid #f0e5ee}.desktop-submenu a{display:block;min-height:44px;padding:10px 12px;border-radius:4px;overflow-wrap:anywhere;animation:category-ripple .2s cubic-bezier(.2,.7,.3,1) both;animation-delay:var(--nav-delay, 0ms)}.desktop-nav a[aria-current],.desktop-nav-item:has([aria-current]) .desktop-category-link{color:#a72a99}.desktop-nav-item:has(.desktop-nav-heading :focus-visible) .desktop-submenu a,.desktop-submenu:focus-within a{animation:none}.desktop-submenu a[aria-current]{background:#fff1fc}@keyframes category-ripple{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media(hover:hover)and (pointer:fine){.category-disclosure:hover,.desktop-submenu a:hover{color:#a72a99;background:#fff1fc}}.nav-heart{flex-shrink:0;position:relative;display:inline-block;width:11px;height:11px;margin:0 3px 0 1px;background:#f6b5e6;transform:rotate(-45deg);border-radius:1px}.nav-heart:before,.nav-heart:after{content:"";position:absolute;width:11px;height:11px;background:inherit;border-radius:50%}.nav-heart:before{top:-5px;left:0}.nav-heart:after{left:5px;top:0}.menu-trigger{display:none;position:absolute;left:10px;top:4px;width:44px;height:44px;padding:13px 10px;border:0;background:none}.menu-trigger span{display:block;width:20px;height:2px;margin:4px 0;background:#aaa}.entry-bridge{position:relative;isolation:isolate;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;overflow:hidden;padding:40px 20px;text-align:center;color:#fff;background:radial-gradient(ellipse at 50% 38%,rgba(234,160,195,.25),transparent 42%),radial-gradient(ellipse at 85% 85%,rgba(120,100,170,.2),transparent 40%),#101723}.entry-bridge:before{content:"";position:absolute;z-index:-1;width:min(65vw,600px);aspect-ratio:1;border-radius:50%;background:#eaa0c31f;filter:blur(80px);pointer-events:none;animation:entry-glow 8s ease-in-out infinite alternate}.entry-bridge h1{max-width:720px;margin:0;color:#fff;font-size:clamp(24px,4vw,36px);font-weight:700;line-height:1.3;letter-spacing:-.03em;overflow-wrap:anywhere}.entry-bridge button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:150px;min-height:52px;padding:12px 28px;border:1px solid rgba(255,255,255,.4);border-radius:999px;color:#241a27;background:linear-gradient(135deg,#f6c9e0,#e6a9c9);box-shadow:0 8px 28px #e097ba40;font:inherit;font-size:18px;font-weight:700;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.entry-bridge button:hover{transform:translateY(-3px);box-shadow:0 12px 34px #e097ba66}.entry-bridge button:focus-visible{outline:3px solid #fff;outline-offset:4px}@keyframes entry-glow{0%{transform:translate(-8%,-5%) scale(.9)}to{transform:translate(8%,5%) scale(1.1)}}@media(prefers-reduced-motion:reduce){.entry-bridge:before{animation:none}.entry-bridge button{transition:none}}.entry-banner{position:relative;min-height:450px;background:#f3f3f3}.entry-background{opacity:1;animation:none;transition:none;position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.entry-actions{position:relative;display:flex;flex-direction:column;align-items:center;gap:24px;min-height:450px;padding:80px 24px}.entry-actions a{position:relative;display:grid;place-items:center;width:min(100%,320px);min-height:48px;border-radius:10px}.entry-actions a span{position:relative;display:grid;place-items:center;width:100%;min-height:48px;padding:12px 16px;border-radius:10px;background:#ff7af3;color:#222;font-size:18px;line-height:1.4;overflow-wrap:anywhere;text-align:center;transition:opacity .12s}.entry-copy{padding:40px 15px 0;text-align:center;overflow-wrap:anywhere}.entry-copy h1{color:#000;font-size:22px;font-weight:700;line-height:26.4px;margin-bottom:15px}.entry-copy p{font-size:16px;line-height:24px;margin-bottom:15px;white-space:pre-wrap}.site-footer{display:flex;justify-content:center;gap:24px;margin-top:64px;padding:18px 15px;border-top:1px solid #eee;font-size:14px}.site-footer a{min-height:24px}.site-main{min-height:55vh;padding-top:36px}.gallery-page:focus{outline:none}.category-tabs{display:flex;justify-content:center;gap:8px;margin:0 15px 28px}.category-tabs a{display:grid;place-items:center;min-width:76px;min-height:44px;padding:8px 16px;border:1px solid #ddd;border-radius:2px;font-size:14px}.category-tabs a[aria-current]{color:#333;background:#ffb6f3;border-color:#ff7af3}.category-tabs{flex-wrap:wrap}.category-tabs a,.mobile-menu nav a{overflow-wrap:anywhere}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;padding:0 15px}.gallery-card{min-width:0;border:1px solid #ddd;border-radius:2px;overflow:hidden}.card-link{display:block}.gallery-card:focus-within{outline:2px solid #b724a7;outline-offset:3px}.card-image{aspect-ratio:4 / 5;overflow:hidden;background:#f3f3f3}.card-image img{width:100%;height:100%;object-fit:cover}.card-caption{padding:12px;text-align:center;border-top:1px solid #eee}.card-caption h3{font-size:18px;font-weight:700}.card-caption p{margin-top:6px;font-size:14px}.post-page{padding:0 15px}.post-page>.post-category{display:flex;align-items:center;min-height:44px;font-size:14px;margin-bottom:20px}.post-page>.post-category a{display:inline-flex;align-items:center;min-height:44px}.post-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px}.post-layout>img{width:100%;height:auto;border:1px solid #ddd}.post-copy h1{font-size:22px;margin-bottom:24px}.post-copy p{font-size:16px;margin-bottom:20px}.post-category{color:#777;overflow-wrap:anywhere}.post-category a{text-decoration:underline;text-underline-offset:3px}.post-content{white-space:pre-wrap;overflow-wrap:anywhere}.card-caption h3,.card-caption p,.post-copy h1{overflow-wrap:anywhere}.catalog-status{padding:24px 15px;text-align:center}.catalog-status button,.empty-state button{min-height:44px;padding:6px 16px;border:1px solid #bbb;background:#fff;border-radius:4px}.related-section{margin-top:45px;padding-top:25px;border-top:1px solid #ddd}.related-section h2{margin-bottom:25px;font-size:22px;font-weight:700}.related-section .gallery-grid{padding:0}.empty-state{padding:60px 15px;text-align:center}.empty-state h1{margin-bottom:24px;font-size:22px}.empty-state a{display:inline-block;padding:10px 24px;background:#ff7af3;color:#fff;border-radius:10px}.mobile-menu{width:min(300px,calc(100vw - 40px));max-width:none;max-height:none;height:100dvh;margin:0 auto 0 0;padding:20px;border:0;border-right:1px solid #ddd;background:#fff;color:#333}.mobile-menu::backdrop{background:#0006}.menu-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.menu-top h2{font-size:20px;overflow-wrap:anywhere;min-width:0}.menu-top button{flex-shrink:0}.menu-top button{min-height:44px;border:1px solid #ddd;background:#fff;padding:5px 10px}.mobile-menu nav{display:block}.mobile-menu nav>.category-branch-list>li>a{font-weight:700}.mobile-menu nav a{display:block;min-width:0;min-height:48px;padding:12px;border-bottom:1px solid #eee}.mobile-menu nav a[aria-current]{background:#ffb6f3}.menu-home{display:block;min-height:44px;margin-top:20px;padding:10px 12px}.admin-page{padding:0 15px}.admin-page .intro{margin-bottom:30px}.admin-page h1{font-size:30px;margin:14px 0}.panel{border:1px solid #ddd;padding:25px}.panel h2{font-size:22px;margin-bottom:15px}.panel p{margin-top:12px}.notice{background:#fff3da;padding:15px}.muted{color:#777;font-size:14px}@media(hover:hover)and (pointer:fine){.entry-actions a:hover span{opacity:.88}a:hover{color:#a72a99}.entry-actions a:hover{color:#222}}@media(max-width:767px){.utility-row{min-height:44px;font-size:13px}.logo-row{min-height:81px;padding:8px 58px 20px}.site-title{font-size:26px}.desktop-nav{display:none}.menu-trigger{display:block}.entry-banner{min-height:300px}.entry-actions{min-height:300px;gap:16px;padding:40px 24px}.entry-actions a span{font-size:16px}.site-main{padding-top:28px}.category-tabs{gap:5px;margin-bottom:22px}.category-tabs a{min-width:0;max-width:100%;padding:8px 10px;font-size:13px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}.card-caption{padding:10px 6px}.card-caption h3{font-size:16px}.card-caption p{font-size:12px}.post-layout{grid-template-columns:minmax(0,1fr);gap:25px}.related-section .gallery-grid>:last-child{display:none}.site-footer{margin-top:40px;font-size:13px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}.post-page .post-image-carousel{border:0;background:transparent;overflow:visible}.post-page .post-image-carousel.has-thumbnails{column-gap:16px}.post-page .post-image-carousel .post-image-stage{border:0;border-radius:8px;background:#f6f5f4;transition-duration:.12s}.post-page .post-image-stage[data-image-loading=true]{opacity:0}.post-page .post-image-carousel .post-image-thumbnail{border:0;padding:0;border-radius:6px;background:transparent}.post-page .post-image-carousel .post-image-thumbnail[aria-current=true]{box-shadow:none;outline:2px solid #b724a7;outline-offset:-2px}.post-page .post-image-carousel .post-image-thumbnail:focus-visible{outline:3px solid #3563a0;outline-offset:-3px}@media(max-width:700px){.post-page .post-image-carousel.has-thumbnails{column-gap:12px}}@media(prefers-reduced-motion:no-preference){.gallery-page .card-image img.public-image-reveal{opacity:0}.gallery-page .card-image img.public-image-reveal.is-loaded{opacity:1;animation:basic-image-reveal .12s ease-out backwards}@keyframes basic-image-reveal{0%{opacity:0}to{opacity:1}}}.gallery-sentinel{height:1px}.gallery-feed-status{text-align:center;min-height:24px;padding:20px 0 0;color:#666;font-size:13px}.site-footer{flex-wrap:wrap;text-align:center}.site-copyright{overflow-wrap:anywhere;line-height:1.7}.site-title{display:inline-block;transition:color .2s ease,text-shadow .2s ease,transform .2s ease}.site-title:hover,.site-title:focus-visible{color:#a63379;text-shadow:0 2px 12px #e6a4d04d}.site-title:hover{transform:translateY(-2px)}.site-title:focus-visible{outline:2px solid #a63379;outline-offset:6px;border-radius:3px}@media(prefers-reduced-motion:reduce){.site-title{transition:none}.site-title:hover{transform:none}}
