/* Provider profile media: show all media as tiles and open each in a large viewer. */
.detail-media-section{margin-top:28px}.detail-media-section>h3{font:28px var(--serif);margin:0 0 14px}.detail-gallery{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;overflow:visible!important;overscroll-behavior:auto;scroll-snap-type:none;padding:0}.detail-gallery .detail-media-tile{position:relative;display:block;width:100%;min-width:0;flex:initial;aspect-ratio:4/5;padding:0;overflow:hidden;border:1px solid rgba(201,135,255,.38);background:#100d14;color:#fff;cursor:pointer;box-shadow:0 0 15px rgba(201,135,255,.1);transition:transform .2s,box-shadow .2s,border-color .2s}.detail-gallery .detail-media-tile:hover{transform:translateY(-2px);border-color:#d9aaff;box-shadow:0 0 24px rgba(201,135,255,.26)}.detail-gallery .detail-media-tile img,.detail-gallery .detail-media-tile video{display:block;width:100%;height:100%;min-width:0;flex:initial;aspect-ratio:auto;object-fit:cover;border:0}.detail-photo-tile>span{position:absolute;inset:auto 0 0;padding:28px 12px 10px;background:linear-gradient(transparent,rgba(5,4,7,.88));color:#f1ddff;text-align:left;font-size:12px;opacity:0;transition:opacity .2s}.detail-photo-tile:hover>span,.detail-photo-tile:focus-visible>span{opacity:1}.detail-video-tile{cursor:default!important}.detail-media-expand{position:absolute;right:9px;bottom:9px;border:1px solid rgba(223,195,255,.7);background:rgba(8,6,12,.86);color:#fff;padding:8px 10px;cursor:pointer}.provider-media-lightbox{width:min(1120px,calc(100% - 24px));max-width:none;max-height:calc(100% - 24px);padding:8px 16px 14px;background:#07050a;border:1px solid rgba(201,135,255,.58);box-shadow:0 0 38px rgba(201,135,255,.2)}.provider-media-lightbox .dialog-close-row{position:sticky;top:0;z-index:3;background:#07050a}.provider-lightbox-toolbar{display:flex;justify-content:center;align-items:center;gap:10px;padding:8px 0 14px;color:#f8efff}.provider-lightbox-toolbar button{width:44px;height:42px;border:1px solid rgba(201,135,255,.55);background:#15101b;color:#fff;font-size:22px;font-weight:800;cursor:pointer}.provider-lightbox-toolbar button:hover{background:#c987ff;color:#130d18}.provider-lightbox-stage{display:grid;place-items:center;width:100%;max-height:74vh;min-height:240px;overflow:auto;background:#030204}.provider-lightbox-stage img,.provider-lightbox-stage video{display:block;max-width:100%;max-height:72vh;width:auto;height:auto;object-fit:contain;transform-origin:center center;transition:transform .15s}.provider-lightbox-help{margin:10px 0 0;text-align:center;color:#c5b7d0;font-size:12px}
.detail-gallery:after{position:absolute;left:8px;bottom:8px;right:auto;align-self:auto;flex:initial;margin:0;z-index:2}
.provider-card{display:grid;grid-template-columns:minmax(112px,36%) minmax(0,1fr);align-items:stretch;min-height:250px}.provider-card-visual{grid-column:1;grid-row:1;min-height:0!important;height:auto!important;aspect-ratio:auto!important}.provider-card-visual .provider-tile-gallery,.provider-card-visual>.provider-monogram{position:absolute;inset:0;width:100%;height:100%;min-height:0!important}.provider-card-visual .provider-tile-gallery .provider-media-preview{width:100%;height:100%;min-width:100%;object-fit:cover}.provider-card-copy{grid-column:2;grid-row:1;align-self:center;padding:15px 16px!important;min-width:0}.provider-card h3{font-size:23px!important;line-height:1.15}.provider-card .provider-details{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;overflow:hidden}.provider-card .bio{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;min-height:0!important;margin:7px 0}.provider-card .provider-availability{display:none}.provider-card .card-bottom{padding-top:7px;font-size:11px}.provider-card .provider-card-actions{gap:7px}.provider-card .provider-card-actions .button{padding:9px 10px;min-height:40px}.provider-tile-gallery:after{position:absolute;left:6px;bottom:6px;right:auto;align-self:auto;flex:initial;margin:0;z-index:3}.detail-gallery:after{position:absolute;left:8px;bottom:8px;right:auto;align-self:auto;flex:initial;margin:0;z-index:2}
.directory-view-toggle{display:flex;gap:6px}.directory-view-button{border:1px solid rgba(201,135,255,.38);background:#100d14;color:#e8ddf2;padding:8px 12px;font:500 11px var(--sans);cursor:pointer}.directory-view-button[aria-pressed=true]{background:#c987ff;color:#160d1b;border-color:#c987ff;box-shadow:0 0 14px rgba(201,135,255,.24)}#directory-grid[data-view-mode=tiles] .provider-card-visual{height:auto;min-height:0;aspect-ratio:4/3}#directory-grid[data-view-mode=tiles] .provider-monogram{height:100%;min-height:0}#directory-grid[data-view-mode=tiles] .provider-card .bio{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;min-height:0}#directory-grid[data-view-mode=tiles] .provider-availability p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}#directory-grid[data-view-mode=scroll]{grid-template-columns:1fr;gap:20px}#directory-grid[data-view-mode=scroll] .provider-card{display:grid;grid-template-columns:minmax(230px,.72fr) minmax(0,1.28fr);align-items:stretch}#directory-grid[data-view-mode=scroll] .provider-card-visual{height:100%;min-height:360px}#directory-grid[data-view-mode=scroll] .provider-card-copy{align-self:center;padding:24px 28px}#directory-grid[data-view-mode=scroll] .provider-card h3{font-size:30px}#directory-grid[data-view-mode=scroll] .provider-card .bio{min-height:0;-webkit-line-clamp:unset}.available-spotlight .spotlight-card{height:205px;min-height:0;aspect-ratio:auto}.available-spotlight .spotlight-card>img,.available-spotlight .spotlight-monogram{inset:0 auto 0 0;width:39%;height:100%}.available-spotlight .spotlight-card:after{inset:0 auto 0 0;width:42%;background:linear-gradient(90deg,rgba(7,5,10,.05),rgba(7,5,10,.72))}.available-spotlight .spotlight-card-copy{position:absolute;inset:0 0 0 39%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;max-width:none;padding:16px 18px}.available-spotlight .spotlight-card-copy h3{font-size:22px}.available-spotlight .spotlight-card-copy p{margin:2px 0 9px}.available-spotlight .spotlight-card-copy .button{margin-top:4px}.available-spotlight .media-watermark{right:auto;left:8px;bottom:7px;font-size:8px}
@media(max-width:760px){.detail-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.detail-photo-tile>span{opacity:1;font-size:11px}.provider-media-lightbox{width:100vw;height:100dvh;max-height:100dvh;margin:0;padding:4px 8px 10px;border:0}.provider-lightbox-stage{max-height:calc(100dvh - 150px);height:calc(100dvh - 150px)}.provider-lightbox-stage img,.provider-lightbox-stage video{max-height:calc(100dvh - 160px)}.provider-lightbox-toolbar{gap:6px}.provider-lightbox-toolbar button{width:40px;height:40px}.directory-view-toggle{gap:4px}.directory-view-button{padding:7px 9px;font-size:10px}#directory-grid[data-view-mode=tiles]{grid-template-columns:1fr}#directory-grid[data-view-mode=tiles] .provider-card{grid-template-columns:minmax(112px,36%) minmax(0,1fr);min-height:225px}#directory-grid[data-view-mode=scroll]{grid-template-columns:1fr}#directory-grid[data-view-mode=scroll] .provider-card{grid-template-columns:minmax(110px,34%) minmax(0,1fr)}#directory-grid[data-view-mode=scroll] .provider-card-visual{height:100%;min-height:225px}#directory-grid[data-view-mode=scroll] .provider-card-copy{padding:14px!important}.available-spotlight .spotlight-grid{grid-template-columns:1fr}.available-spotlight .spotlight-card{height:190px}}

/* Keep the provider media viewer's frame fixed while media is contained inside it. */
.provider-media-lightbox[open]{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;gap:0;width:min(1120px,calc(100vw - 24px));height:min(90dvh,860px);min-height:360px;max-height:calc(100dvh - 24px);box-sizing:border-box;overflow:hidden}
.provider-media-lightbox .dialog-close-row{position:relative;top:auto}
.provider-lightbox-stage{width:100%;height:100%;min-height:0;max-height:none;overflow:hidden}
.provider-lightbox-stage img,.provider-lightbox-stage video{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;transform:none;transition:none}
.provider-lightbox-help{min-height:18px}
@media(max-width:760px){.provider-media-lightbox[open]{width:100vw;height:100dvh;min-height:0;max-height:100dvh;padding:4px 8px 10px}.provider-lightbox-stage{height:100%;min-height:0;max-height:none;overflow:hidden}.provider-lightbox-stage img,.provider-lightbox-stage video{max-height:100%;max-width:100%}}

/* Wide landscape directory tiles: photo at left, profile summary at right. */
#directory-grid[data-view-mode=tiles]{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));align-items:stretch;gap:18px}
#directory-grid[data-view-mode=tiles] .provider-card{grid-template-columns:minmax(150px,38%) minmax(0,1fr);min-height:270px;aspect-ratio:1.72/1}
#directory-grid[data-view-mode=tiles] .provider-card-visual{grid-column:1;grid-row:1;min-height:0!important;height:100%!important;aspect-ratio:auto!important}
#directory-grid[data-view-mode=tiles] .provider-card-copy{grid-column:2;grid-row:1;align-self:center;padding:18px!important}
#directory-grid[data-view-mode=tiles] .provider-card .bio{-webkit-line-clamp:3}
#directory-grid[data-view-mode=tiles] .provider-card .provider-details{-webkit-line-clamp:2}
@media(max-width:760px){#directory-grid[data-view-mode=tiles]{grid-template-columns:1fr;gap:14px}#directory-grid[data-view-mode=tiles] .provider-card{grid-template-columns:minmax(118px,38%) minmax(0,1fr);min-height:230px;aspect-ratio:auto}#directory-grid[data-view-mode=tiles] .provider-card-copy{padding:14px!important}#directory-grid[data-view-mode=tiles] .provider-card h3{font-size:21px!important}}

/* v27: keep card status, name, age and location together in the profile summary. */
.provider-card-copy .provider-card-statuses{display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-width:0;margin:0 0 9px}
.provider-card-copy .available-now-badge{position:relative;inset:auto;display:inline-flex;align-items:center;flex:0 0 auto;max-width:100%;animation:available-neon-flash-v26 .65s steps(1,end) infinite!important}
.provider-card-copy .prive-verified-badge{position:relative;inset:auto;z-index:auto;display:inline-flex;align-items:center;max-width:100%;padding:6px 9px;font-size:11px;white-space:nowrap}
.provider-card-copy .provider-neon-name{margin:0 0 5px;overflow-wrap:anywhere}
.provider-card-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;min-width:0;margin:0 0 8px}
.provider-card .provider-card-meta .provider-card-age{margin:0;color:#d8d3c8;font-size:13px;line-height:1.35}
.provider-card-location{display:inline-flex;min-width:0;max-width:100%;color:#e3c3ff;font-size:11px;line-height:1.35;overflow-wrap:anywhere}
.provider-card .provider-card-service{margin:0 0 10px}


.provider-card-visual.profile-open{display:block;width:100%;height:100%;min-width:0;padding:0;border:0;border-radius:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.provider-card-visual.profile-open:focus-visible,.spotlight-card[role=button]:focus-visible{outline:2px solid #c987ff;outline-offset:3px}.spotlight-card[role=button]{cursor:pointer}.detail-video-tile[data-detail-media-open]{cursor:pointer!important}.detail-video-play{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:54px;height:54px;border:1px solid rgba(255,255,255,.8);border-radius:50%;background:rgba(8,6,12,.68);color:#fff;font-size:22px;box-shadow:0 0 22px rgba(201,135,255,.35);pointer-events:none}.provider-lightbox-volume{display:flex;align-items:center;justify-content:center;gap:12px;margin:12px auto 0;color:#e8ddf2;font:500 13px var(--sans)}.provider-lightbox-volume input{width:min(260px,55vw);accent-color:#c987ff}.provider-lightbox-stage img{transform:none!important;cursor:default}

/* Fixed-size provider media frame: aspect ratios change the letterboxing, never the viewer bounds. */
.provider-media-lightbox[open]{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;gap:0;width:min(1120px,calc(100vw - 24px));height:min(90dvh,860px);min-height:360px;max-height:calc(100dvh - 24px);box-sizing:border-box;overflow:hidden}
.provider-media-lightbox .dialog-close-row{position:relative;top:auto}
.provider-lightbox-stage{width:100%;height:100%;min-height:0;max-height:none;overflow:hidden}
.provider-lightbox-stage img,.provider-lightbox-stage video{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;transform:none!important;transition:none}
@media(max-width:760px){.provider-media-lightbox[open]{width:100vw;height:100dvh;min-height:0;max-height:100dvh;margin:0;padding:4px 8px 10px}.provider-lightbox-stage{height:100%;min-height:0;max-height:none;overflow:hidden}.provider-lightbox-stage img,.provider-lightbox-stage video{max-width:100%;max-height:100%}}

/* Force the original aspect ratio in the viewer, even against global profile-image rules. */
#provider-media-lightbox .provider-lightbox-stage>img,
#provider-media-lightbox .provider-lightbox-stage>video{width:auto!important;height:auto!important;min-width:0;min-height:0;max-width:100%!important;max-height:100%!important;object-fit:contain!important;object-position:center center!important}
