/* Kept separate from preserved per-page CSS to make parity adjustments reviewable. */
#portable-lightbox {position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:12px;border:0;background:transparent;color:white;z-index:2147483647;box-sizing:border-box}
#portable-lightbox::backdrop {background:transparent;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}
#portable-lightbox[open] {display:flex;align-items:center;justify-content:center}
#portable-lightbox .stage {position:relative;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow:hidden;border-radius:22px;box-shadow:0 24px 80px rgba(0,0,0,.18)}
#portable-lightbox img {display:block;width:100%;height:100%;object-fit:cover}
#portable-lightbox button,#portable-lightbox .counter {position:absolute;border:1px solid rgba(255,255,255,.42);background:linear-gradient(145deg,rgba(255,255,255,.3),rgba(255,255,255,.1));-webkit-backdrop-filter:blur(18px) saturate(180%);backdrop-filter:blur(18px) saturate(180%);box-shadow:inset 0 1px 0 rgba(255,255,255,.46),0 8px 28px rgba(0,0,0,.16);color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.45)}
#portable-lightbox button {width:64px;height:64px;border-radius:999px;padding:0;cursor:pointer;font:46px/.8 system-ui;z-index:2}
#portable-lightbox button:hover {background:linear-gradient(145deg,rgba(255,255,255,.42),rgba(255,255,255,.16))}
#portable-lightbox button:focus-visible {outline:3px solid #fff;outline-offset:3px}
#portable-lightbox .close {right:14px;top:14px;width:48px;height:48px;font-size:30px}
#portable-lightbox .previous {left:14px;top:50%;transform:translateY(-50%)}
#portable-lightbox .next {right:14px;top:50%;transform:translateY(-50%)}
#portable-lightbox .counter {bottom:14px;left:50%;transform:translateX(-50%);border-radius:999px;padding:8px 13px;font:600 13px/1 system-ui;z-index:2}
[data-portable-gallery] {cursor:zoom-in}
[data-portable-gallery]:focus-visible {outline:3px solid #3266ef;outline-offset:3px}
.portable-masonry{display:block!important;column-count:3;column-gap:16px}
.portable-masonry>[data-framer-name="Image"]{display:inline-block!important;position:relative!important;width:100%!important;margin:0 0 16px!important;break-inside:avoid;vertical-align:top}
@media(max-width:1199.98px){.portable-masonry{column-count:2}}
@media(max-width:809.98px){.portable-masonry{column-count:1}}
.portable-contact-status {font:14px/1.4 system-ui;grid-column:1/-1;flex-basis:100%;margin-top:8px}
@media(max-width:600px){#portable-lightbox button{width:54px;height:54px;font-size:40px}#portable-lightbox .close{width:44px;height:44px;font-size:28px}}
.portable-menu{border:0;margin:0;position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;padding:80px 28px;background:#3266ef;color:#f0f0f0;box-sizing:border-box;z-index:2147483646}
.portable-menu[open]{display:flex;flex-direction:column;gap:20px;align-items:flex-start}
.portable-menu a{font:600 36px/1.2 system-ui;color:inherit;text-decoration:none}
.portable-menu button{position:absolute;left:12px;top:8px;color:inherit;background:none;border:0;padding:10px;font:32px system-ui;cursor:pointer}
/* Framer's expanded placeholder menu is replaced by the native menu above. */
nav[data-framer-name^="Phone"] > [data-framer-name="Links"] {display:none!important}
