/* Additions only: original page styling and gallery composition stay in index.html. */
.content-offers{max-width:1200px;margin:auto;padding:5rem 3rem;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif}
.content-offer-intro{max-width:690px}.content-offer-intro h2{font-size:clamp(2rem,4vw,3.7rem);line-height:1.06;margin:1rem 0 1.4rem}.content-offer-intro p,.content-offer-grid p{color:#a7a7a7;line-height:1.75;font-size:1rem}
.content-offer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2.2rem;margin:3rem 0 2rem}.content-offer-grid article{border-top:1px solid #383838;padding-top:1.4rem}.content-offer-grid h3{font-size:1.25rem;margin-bottom:.8rem}
.content-offer-scope,.content-offer-web{color:#999;font-size:.85rem;line-height:1.7;margin:1.5rem 0}.content-offer-web a,.content-text-link{color:#fff;text-underline-offset:5px}.content-offers button{background:none;cursor:pointer}
.lb-title{color:#fff}body:has(#lightbox.open,#fs-overlay.open,#vid-fs.open) #eye-widget{visibility:hidden;pointer-events:none}
.archive-note{font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;color:#888;text-align:center;font-size:.75rem;padding:2rem;line-height:1.7}
.demo-jump{display:flex;justify-content:center;flex-wrap:wrap;gap:1.5rem;padding:0 1.5rem 2rem}.demo-jump a{color:#fff;text-decoration:none;font-size:.82rem;letter-spacing:.05em;border-bottom:1px solid #ed397d;padding-bottom:.4rem}
.demo-section{max-width:1500px;margin:0 auto;padding:2rem clamp(20px,5vw,72px) 4rem;scroll-margin-top:90px}.demo-heading{display:flex;align-items:end;justify-content:space-between;gap:1.5rem;margin-bottom:1.3rem}.demo-credit{color:#ed397d;font-size:.65rem;letter-spacing:.16em;text-transform:uppercase;margin-bottom:.7rem}.demo-heading h2{font-family:var(--serif,Georgia);font-weight:400;font-size:clamp(1.8rem,3vw,3rem)}.demo-heading p:not(.demo-credit){color:#aaa;font-size:.9rem;line-height:1.7;margin-top:.65rem}
.demo-start{background:#ed397d;color:white;border:0;padding:1rem 1.3rem;font:700 .75rem 'Helvetica Neue',Helvetica,Arial,sans-serif;letter-spacing:.08em;cursor:pointer;white-space:nowrap}.demo-start:focus-visible,.demo-jump a:focus-visible{outline:2px solid white;outline-offset:4px}
.demo-window{position:relative;height:min(650px,74vh);min-height:450px;overflow:hidden;background:#121212;border:1px solid #333}.demo-poster{width:100%;height:100%;object-fit:cover;object-position:top}.demo-window iframe{display:none;position:absolute;inset:0;width:125%;height:125%;border:0;transform:scale(.8);transform-origin:top left;background:#121212}.demo-active iframe{display:block}.demo-status{color:#8f8f8f;font-size:.75rem;line-height:1.6;margin-top:.8rem}
/* Show the complete demo-page screenshot before opening the interactive window. */
.demo-section:not(.demo-active) .demo-window{height:auto;min-height:0;aspect-ratio:2/1}
.demo-poster{display:block;object-fit:contain;background:#121212}
/* The additional navigation item needs the same compact mobile menu at laptop widths. */
@media(min-width:801px) and (max-width:1600px){body>nav:not(.site){padding:0 1.2rem}body>nav:not(.site) .nav-center{gap:1.1rem}body>nav:not(.site) .nav-link{font-size:.7rem;letter-spacing:.05em}body>nav:not(.site) .nav-social{gap:.6rem}}
@media(max-width:1300px){body>nav:not(.site) .nav-center,body>nav:not(.site) .nav-social,body>nav:not(.site) .nav-login,body>nav:not(.site) .cta-book,body>nav:not(.site) #dc-nav{display:none!important}body>nav:not(.site) .hamburger{display:flex!important}}
@media(max-width:800px){.content-offers{padding:3rem 1.5rem}.content-offer-grid{grid-template-columns:1fr;gap:1rem}.demo-heading{align-items:start;flex-direction:column}.demo-window{height:65vh;min-height:420px}.demo-window iframe{width:100%;height:100%;transform:none}.mobile-menu{gap:1.05rem;overflow-y:auto;padding:4rem 1rem 2rem}.mobile-menu .m-link{font-size:1.1rem!important;flex-shrink:0}}

@media(max-width:800px){body:has(.demo-section) .labtitle{font-size:clamp(2rem,8.5vw,4rem);line-height:1.05}}

@media(max-width:800px){.wl-label span{font-size:clamp(1.6rem,18cqi,4rem)}}

@media(min-width:801px) and (max-width:1500px){.content-offers{padding-right:250px}.content-offer-grid{gap:1.5rem}}
