/* Real observation photographs frame the introduction; the portfolio keeps its own foreground. */
.entry-chapter.has-sky{isolation:isolate;--sky-accent:#c69a68}
.has-sky .entry-scene{z-index:1}
.entry-sky{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0;background:#101824;mask-image:linear-gradient(#000 90%,transparent)}
.sky-image-stack{position:absolute;inset:-18px;transform:translate3d(var(--sky-x,0px),var(--sky-y,0px),0);transition:transform 1s cubic-bezier(.16,1,.3,1)}
.sky-photo{position:absolute;width:100%;height:100%;max-width:none;object-fit:cover;opacity:0;transition:opacity 1.2s ease}
.sky-photo.is-active{opacity:.94}
.sky-reading-shade{position:absolute;inset:0;background:linear-gradient(90deg,#101824ed 0%,#101824c9 30%,#10182438 66%,#10182422),linear-gradient(180deg,#10182466,transparent 30%,#10182422 68%,#101824d9)}
.has-sky .entry-desk:before{background:radial-gradient(ellipse,color-mix(in srgb,var(--sky-accent) 24%,transparent),transparent 70%)}
.has-sky .entry-bottom{display:grid;grid-template-columns:1fr auto 1fr;column-gap:18px;row-gap:5px;align-items:center}
.has-sky .entry-bottom>a{justify-self:end}
.sky-controls{position:relative;z-index:8;display:flex;align-items:center;gap:12px;min-width:0;transform:translateY(-14px);pointer-events:auto}
.sky-controls-label{font-size:10px;letter-spacing:.12em;color:#bfc3bd}
.sky-choices,.sky-view-choices{display:flex;align-items:center;gap:4px}
.sky-choice{display:inline-flex;align-items:center;gap:7px;border:1px solid transparent;border-radius:30px;background:transparent;padding:7px 9px;min-height:36px;color:#c8c9c6;font-size:10px;white-space:nowrap;transition:background .2s,border-color .2s}
.sky-choice:hover{background:#e7d9c512}
.sky-choice[aria-pressed="true"]{border-color:#dccfb450;background:#e7d9c513;color:#f1e5cf}
.sky-swatch{width:10px;height:10px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#eae0c6,var(--swatch) 45%,#263141);box-shadow:0 0 9px color-mix(in srgb,var(--swatch) 25%,transparent);flex-shrink:0}
.sky-expand{background:none;border:0;border-bottom:1px solid #cab99866;padding:5px 0;color:#e2d5bd;font-size:11px;white-space:nowrap}
.sky-expand span{margin-left:5px}
.sky-expand:disabled{opacity:.5}
.has-sky .entry-bottom>.sky-credit{grid-column:1/-1;text-align:center;font:9px/1.6 Georgia,serif;color:#aeb4b7;overflow-wrap:anywhere}
.sky-credit a{text-decoration:underline;text-decoration-color:#b3b8b64d;text-underline-offset:3px}
.has-sky .entry-bottom>.sky-load-error{grid-column:1/-1;text-align:center;font-size:11px;color:#e3c9a8}
.sky-is-open{overflow:hidden!important}
.sky-dialog{width:100vw;height:100dvh;max-width:100vw;max-height:100dvh;border:0;margin:0;padding:24px 4.5% 26px;background:#0b111b;color:#eae2ce;overflow:auto;overscroll-behavior:contain}
.sky-dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:18px}
.sky-dialog::backdrop{background:#0b111b}
.sky-view-header{display:flex;justify-content:space-between;align-items:center;gap:20px}
.sky-view-header p{font:10px/1.6 var(--roman);letter-spacing:.13em;color:#b2b6bb}
.sky-view-header h2{font-size:clamp(18px,2vw,28px);font-weight:400;letter-spacing:.05em;margin-top:3px}
.sky-close{font-size:12px;border:1px solid #d1c4ac55;border-radius:30px;background:#e2d4ba08;padding:8px 15px;min-height:44px;white-space:nowrap}
.sky-close:hover{background:#e2d4ba17}
.sky-close span{font-size:19px;margin-left:15px}
.sky-view-figure{display:grid;grid-template-rows:minmax(0,1fr) auto;gap:12px;min-height:0;margin:0}
.sky-view-print{position:relative;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);min-height:0;overflow:hidden;background:radial-gradient(ellipse,color-mix(in srgb,var(--sky-accent) 9%,transparent),transparent 70%)}
.sky-view-image{width:100%;height:100%;min-height:0;min-width:0;object-fit:contain;padding:12px;transform:translate3d(var(--sky-x,0px),var(--sky-y,0px),0);transition:transform 1s cubic-bezier(.16,1,.3,1)}
.sky-view-figure figcaption{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 18px;text-align:center;font-size:10px;line-height:1.6;color:#b5b8bd}
.sky-view-credit{font-family:Georgia,serif;text-decoration:underline;text-decoration-color:#b6b6b655;text-underline-offset:3px}
.sky-view-footer{display:flex;justify-content:space-between;align-items:end;gap:16px;padding-top:13px;border-top:1px solid #c5b39430}
.sky-view-invitation{font-size:14px;letter-spacing:.06em;margin-bottom:9px;color:#e0d4be}
.sky-view-choices .sky-choice{font-size:12px;min-height:44px;padding:8px 14px}
.sky-view-gesture{font-size:10px;color:#a7afb5;margin-bottom:10px}
.sky-related{text-align:right;max-width:48%}
.sky-related>p{font-size:10px;color:#b6b9b8;margin-bottom:8px;letter-spacing:.06em}
.sky-related-list{display:flex;flex-wrap:wrap;justify-content:end;gap:6px 18px}
.sky-related-list button,.sky-related-archive{font-size:12px;background:none;border:0;border-bottom:1px solid #c6b59c55;padding:6px 0;line-height:1.7;text-align:left}
.sky-related-list button span{margin-left:5px;color:var(--sky-accent)}
.sky-related-archive{display:none}
.reduce-motion .sky-image-stack,.reduce-motion .sky-view-image{transform:none!important;transition:none}
.reduce-motion .sky-view-gesture{visibility:hidden}
@media(min-width:801px) and (max-width:1100px){.sky-controls{gap:7px}.sky-controls-label{display:none}.sky-choice{gap:5px;padding:6px;font-size:9px}.sky-expand{font-size:10px}.has-sky .entry-bottom{column-gap:9px}}
@media(max-width:800px){.has-sky .entry-bottom{grid-template-columns:1fr 1fr;row-gap:13px}.sky-controls{grid-row:1;grid-column:1/-1;justify-content:space-between;gap:6px;transform:translateY(-10px)}.sky-controls-label{display:none}.sky-choices{gap:0}.sky-choice{font-size:10px;padding:8px 7px;min-height:44px;gap:5px}.sky-expand{font-size:10px;min-height:44px;border-bottom:0}.has-sky .entry-bottom>p:first-child{grid-row:2}.has-sky .entry-bottom>a{grid-row:2}.has-sky .entry-bottom>.sky-credit{font-size:9px;text-align:left;line-height:1.7}.sky-photo.is-active{opacity:.62}.sky-reading-shade{background:linear-gradient(90deg,#101824cb,#10182480 70%,#10182455),linear-gradient(180deg,#10182444,#10182422 30%,#10182422 70%,#101824f2)}.sky-dialog{padding:20px 6% 24px}.sky-dialog[open]{gap:12px;grid-template-rows:auto minmax(150px,1fr) auto}.sky-view-header{align-items:start;gap:10px}.sky-view-header p{font-size:8px;letter-spacing:.09em}.sky-view-header h2{font-size:18px;max-width:220px}.sky-close{font-size:10px;padding:7px 11px;min-height:40px}.sky-close span{font-size:15px;margin-left:7px}.sky-view-footer{display:block}.sky-view-gesture{display:none}.sky-view-invitation{font-size:13px}.sky-view-choices{justify-content:space-between;gap:0}.sky-view-choices .sky-choice{padding:8px 11px;font-size:11px}.sky-view-figure figcaption{font-size:9px;gap:6px}.sky-view-image{padding:10px 0}}
@media(max-width:360px){.sky-controls{flex-wrap:wrap;justify-content:center}.sky-view-choices .sky-choice{padding:8px;font-size:10px}.sky-close{padding:6px 8px}.sky-view-header h2{font-size:16px}}
@media(max-width:800px){.sky-related{max-width:none;text-align:left;margin-top:14px;border-top:1px solid #c5b39422;padding-top:10px}.sky-related>p,.sky-related-list{display:none}.sky-related-archive{display:inline-block;font-size:11px;min-height:40px;padding:7px 0}}
@media(prefers-reduced-motion:reduce),(hover:none){.sky-image-stack,.sky-view-image{transform:none!important;transition:none}.sky-view-gesture{display:none}}

/* Same-origin previews remain visible while the responsive photographs load. */
.entry-sky{background-image:url('images/sky/cosmic-cliffs-preview.webp');background-size:cover;background-position:65% 48%}
.sky-view-print{background-size:contain;background-position:center;background-repeat:no-repeat}

/* Keep the sky selector directly below the complete computer object. */
.has-sky .entry-bottom{display:flex;grid-template-columns:none}
.entry-desk>.sky-controls{width:100%;justify-content:center;flex-wrap:wrap;margin:23px auto 0;transform:none}
.has-sky .entry-desk>.sky-credit{width:min(100%,620px);margin:7px auto 0;text-align:center;font:9px/1.6 Georgia,serif;color:#aeb4b7;overflow-wrap:anywhere}
.has-sky .entry-desk>.sky-load-error{width:100%;margin:7px auto 0;text-align:center;font-size:11px;color:#e3c9a8}
@media(max-width:800px){.has-sky .entry-bottom{display:flex}.entry-desk>.sky-controls{grid-row:auto;grid-column:auto;justify-content:center;gap:6px;margin-top:19px;transform:none}.has-sky .entry-desk>.sky-credit{text-align:center;font-size:9px;line-height:1.7}}
