.video-lightbox{width:min(1100px,calc(100vw - 40px),calc((100dvh - 190px)*16/9));max-width:none;max-height:calc(100dvh - 40px);padding:0;border:1px solid #ffffff20;border-radius:20px;background:#141918;color:#fff;box-shadow:0 30px 100px #0008;overflow:auto;overscroll-behavior:contain}
.video-lightbox::backdrop{background:#091410d9;backdrop-filter:blur(9px)}
.video-lightbox-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 26px}
.video-lightbox-heading p{margin:0 0 7px;color:#bed0c4;font-size:10px;letter-spacing:.14em;font-weight:700}
.video-lightbox-heading h2{font-size:clamp(18px,2.5vw,26px);line-height:1.2;letter-spacing:-.025em;margin:0;color:inherit}
.video-lightbox-close{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:0;border:1px solid #ffffff40;border-radius:50%;background:#ffffff0d;color:inherit;cursor:pointer;font:30px/1 system-ui}
.video-lightbox-close:hover{background:#ffffff24}
.video-lightbox :focus-visible{outline:3px solid #bfe3cc;outline-offset:4px}
.video-lightbox-stage{aspect-ratio:16/9;background:#000}
.video-lightbox-stage iframe{display:block;width:100%;height:100%;border:0}
.video-lightbox-footer{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:17px 26px;color:#c4ceca;font-size:12px;line-height:1.5}
.video-lightbox-footer a{color:#fff;text-underline-offset:4px}
@media(max-width:600px){.video-lightbox{width:calc(100vw - 20px);border-radius:14px}.video-lightbox-heading{padding:18px;gap:12px}.video-lightbox-footer{padding:15px 18px;flex-wrap:wrap;gap:8px}.video-lightbox-heading h2{font-size:18px}}

/* Shared resource treatment across all current and future pages. */
.forts-resource[data-kind=story]{width:min(920px,calc(100vw - 40px))}
.forts-resource[data-kind=tour],.forts-resource[data-kind=document]{width:min(1200px,calc(100vw - 40px))}
.forts-resource[data-kind=tour] .resource-stage,.forts-resource[data-kind=document] .resource-stage{aspect-ratio:auto;height:min(70dvh,780px);min-height:270px}
.forts-resource[data-kind=story] .resource-stage{aspect-ratio:auto;background:#f7f7f2;color:var(--ink)}
.forts-resource .video-lightbox-heading{position:sticky;top:0;background:#141918;z-index:3}
.resource-loading{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);pointer-events:none;font-size:13px;color:white;background:#141918d9;padding:10px 18px;border-radius:30px}
.resource-loading[hidden]{display:none}
.resource-retry{background:transparent;border:1px solid #ffffff35;border-radius:30px;padding:7px 12px;color:inherit;white-space:nowrap;font:inherit;cursor:pointer}
.resource-retry[hidden]{display:none}
.resource-story-photo{display:block;width:100%;height:auto;max-height:430px;object-fit:cover}
.resource-story-body{padding:40px 60px 50px;max-width:780px;margin:auto}
.resource-story-body h3{font-size:clamp(30px,4vw,44px);line-height:1.07;letter-spacing:-.045em;margin:18px 0 25px}
.resource-story-body>p:not(.eyebrow){font-size:16px;line-height:1.75;color:#43524b;margin:0 0 18px}
.resource-story-body>.button{margin-top:8px}
.story-sources{border-top:1px solid #d4dcd4;margin-top:32px;padding-top:20px}
.story-sources summary{display:flex;justify-content:space-between;gap:20px;font-size:13px;cursor:pointer;list-style:none}
.story-sources p{font-size:12px;line-height:1.75;color:#54635b;margin-top:18px}
.story-sources .text-link{margin-top:18px;font-size:12px}
.resource-noscript{padding:24px;background:#eaf0ed;font-size:14px;text-align:center}

button[data-resource]{font-family:inherit;cursor:pointer;text-align:left}
button.text-link[data-resource],button.application-film-link[data-resource]{background:none;border:0;padding:0;color:inherit}
button.button[data-resource]{border:0}
button.button.outline[data-resource]{border:1px solid currentColor;background:transparent}
footer button[data-resource]{border:0;background:none;padding:0;color:inherit;font-size:inherit}
button.command-unfold-film[data-resource]{width:100%;color:#fff;border:0;padding:0}
[data-resource]:focus-visible{outline:3px solid var(--red);outline-offset:5px}
.resource-back{background:none;border:0;padding:0;color:#fff;font:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.resource-back[hidden]{display:none}
.resource-footer-actions{display:flex;gap:18px;align-items:center;flex-shrink:0}
.resource-story-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:28px 0}
.resource-option{display:flex;flex-direction:column;align-items:start;gap:12px;min-height:160px;padding:22px;background:#e9eeeb;border:1px solid #cfd9d2;border-radius:12px;color:var(--ink)}
.resource-option:hover{background:#dfe8e1}
.resource-option>span{font-size:10px;letter-spacing:.07em;color:#57655e}
.resource-option>strong{font-size:18px;line-height:1.3;letter-spacing:-.02em;font-weight:500}
.resource-option>small{font-size:12px;color:#57655e;line-height:1.5;margin-top:auto}
.resource-story-body>.resource-story-note{font-size:12px;color:#637268}
.resource-story .button{font-family:inherit;cursor:pointer}
.forts-resource .resource-story [data-resource]:focus-visible{outline-color:#963d38}
@media(max-width:760px){.forts-resource[data-kind=tour],.forts-resource[data-kind=document],.forts-resource[data-kind=story]{width:calc(100vw - 20px)}.forts-resource[data-kind=tour] .resource-stage,.forts-resource[data-kind=document] .resource-stage{height:65dvh}.resource-story-body{padding:28px 24px}.resource-story-body>p:not(.eyebrow){font-size:14px}.resource-retry{font-size:11px}.resource-story-options{grid-template-columns:1fr}.resource-option{min-height:0;padding:20px}.resource-footer-actions{flex-wrap:wrap;gap:16px}}

.resource-story-visual{display:block;width:100%;padding:0;border:0;background:transparent}

.forts-resource[data-kind=image]{width:min(1400px,calc(100vw - 32px))}
.forts-resource[data-kind=image] .resource-stage{aspect-ratio:auto;min-height:220px;max-height:70dvh;overflow:auto;background:#eef0ec;display:flex;align-items:center;padding:24px}
.resource-detail-image{display:block;width:100%;height:auto;max-height:65dvh;object-fit:contain}
@media(max-width:760px){.forts-resource[data-kind=image] .resource-stage{display:block;padding:20px 12px}.resource-detail-image{width:900px;max-width:none;max-height:none}}

/* Photographs fit the viewport; floor-plan images retain their inspection canvas. */
.forts-resource[data-image-layout=photo] .resource-detail-image{width:100%;max-width:100%;height:auto;max-height:65dvh;object-fit:contain}

.resource-native-video{display:block;width:100%;height:100%;object-fit:contain;background:#000}
