*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f5f3ee;color:#181d1b;font:15px/1.5 system-ui,-apple-system,Segoe UI,Arial,sans-serif}.shell{width:min(1450px,calc(100% - 42px));margin:auto}a{color:inherit;text-decoration:none}.mast{background:#fff;border-bottom:1px solid #dddcd5;position:sticky;top:0;z-index:20}.mast-inner{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:35px}.brand{display:flex;align-items:center;gap:10px;white-space:nowrap}.brandmark{background:#253b35;color:white;font-family:Georgia,serif;font-size:30px;font-weight:bold;width:46px;height:46px;text-align:center;line-height:46px;border-radius:12px}.brandmark span{color:#e5a380}.brandname{font-weight:900;font-size:19px;letter-spacing:-.7px}.brandname span{font-size:12px;font-weight:500;color:#6f7c75}.nav{display:flex;align-items:center;gap:25px;font-size:13px;font-weight:750}.nav a:hover,.nav a:focus{color:#bd593a}.menu-toggle{display:none}.intro{padding:34px 0 19px;border-bottom:1px solid #d2d6d0;margin-bottom:25px}.intro-label{letter-spacing:2px;text-transform:uppercase;font-weight:800;font-size:10px;color:#466557;display:flex;align-items:center;gap:11px}.intro-separator{color:#b1b3ad}.dot,.live-tag i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#3baf75}.intro h1{font-size:clamp(30px,3.5vw,53px);letter-spacing:-2px;line-height:1.1;margin:10px 0 7px;font-weight:850}.intro-bottom{display:flex;justify-content:space-between;gap:14px;align-items:baseline}.intro p{color:#5c6861;margin:0}.count{color:#5b685f;white-space:nowrap;letter-spacing:.7px;font-size:11px;font-weight:800}.count b{color:#bd593a}.grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:20px 13px}.card{min-width:0;background:#fff;border:1px solid #deded8;overflow:hidden;transition:transform .15s,border-color .15s}.card:hover{transform:translateY(-3px);border-color:#afc4b6}.photo{position:relative;aspect-ratio:4/3;background:#e0e2dc}.photo img{width:100%;height:100%;display:block;object-fit:cover}.live-tag{position:absolute;top:10px;left:10px;background:#fff;box-shadow:0 2px 12px #0002;padding:4px 9px;display:flex;align-items:center;gap:5px;font-size:9px;font-weight:900;letter-spacing:1px}.card-info{display:flex;flex-direction:column;min-height:61px;padding:11px 12px;gap:1px}.card-info strong{font-size:12px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.card-provider{font-size:11px;color:#64776b}.pagination{display:flex;justify-content:center;align-items:center;gap:20px;margin:30px 0}.pagination a{padding:9px 15px;border:1px solid #cad3cc;background:white;font-weight:700}.pagination span{font-size:12px}.editorial{margin:35px 0 55px;border-top:1px solid #d8d8d0;padding:20px 0}.editorial summary{cursor:pointer;font-weight:bold}.legacy-text{max-width:850px;line-height:1.8;margin-top:20px}.legacy-text a{color:#92543d;text-decoration:underline}.empty{padding:50px;background:#fff;text-align:center}.footer{margin-top:55px;border-top:1px solid #d2d6d0;padding:25px 0;font-size:12px;color:#53645c}.footer .shell{display:flex;justify-content:space-between}.room-main{padding:22px 0}.crumb{color:#63736a;font-size:12px}.room-title{padding:30px 0 15px}.room-title h1{font-size:clamp(28px,4vw,48px);margin:5px 0;letter-spacing:-1px}.embed-shell{background:#181d1b;min-height:450px;aspect-ratio:16/9;max-height:750px}.embed-shell iframe{width:100%;height:100%;border:0}.embed-shell #xlove-room{height:100%;min-height:450px}.room-cta{display:inline-block;margin:18px 0;padding:12px 22px;background:#17665a;color:white;font-weight:800}.offline-panel{background:#fff;border:1px solid #ddd;padding:42px 25px}.offline-dot{background:#a4aaa5}.section-line{border-top:1px solid #dadbd5;margin:35px 0 20px}.section-line h2{font-size:19px}#back-top{position:fixed;right:20px;bottom:20px;opacity:0;pointer-events:none;transition:opacity .2s;border:0;background:#233a33;color:white;padding:11px 15px;font-size:18px;cursor:pointer}#back-top.visible{opacity:1;pointer-events:auto}@media(max-width:1100px){.grid{grid-template-columns:repeat(4,minmax(0,1fr))}.nav{gap:12px}}@media(max-width:760px){.shell{width:calc(100% - 24px)}.mast-inner{min-height:60px}.brandname{font-size:16px}.brandmark{width:38px;height:38px;line-height:38px;font-size:24px}.menu-toggle{display:block;border:1px solid #d9e0d9;background:#fff;padding:7px 10px;cursor:pointer}.nav{display:none;position:absolute;left:0;right:0;top:60px;padding:15px 18px;background:white;border-bottom:1px solid #ddd;flex-direction:column;align-items:stretch;gap:12px}.nav.open{display:flex}.intro{padding:20px 0 14px;margin-bottom:15px}.intro h1{letter-spacing:-1px}.intro p{font-size:12px}.intro-bottom{display:block}.count{display:block;margin-top:7px;font-size:10px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.card-info{padding:7px 8px;min-height:50px}.card-provider{font-size:10px}.embed-shell{min-height:280px;aspect-ratio:4/3}.embed-shell #xlove-room{min-height:280px}.footer .shell{gap:10px;flex-wrap:wrap}}

/* PRIVATECAMS: bounded chat widget + performer information */
.embed-shell{position:relative;min-width:0;width:100%;overflow:hidden;contain:layout paint}
.embed-shell.embed-xlove{height:clamp(320px,60vw,700px);max-height:none;aspect-ratio:auto;overflow:hidden}
.xlove-viewport{position:relative;width:100%;max-width:100%;height:100%;overflow:hidden;isolation:isolate}
#xlove-room{position:relative!important;width:100%!important;max-width:100%!important;min-width:0!important;height:100%!important;overflow:hidden!important}
#xlove-room iframe,#xlove-room video,#xlove-room img,#xlove-room canvas{max-width:100%!important;box-sizing:border-box!important}
#xlove-room>div{max-width:100%!important;box-sizing:border-box!important}
.performer-details{margin:6px 0 30px;background:#fff;border:1px solid #deded8;padding:20px 24px;max-width:850px}
.performer-details h2{font-size:20px;margin:0 0 16px}
.performer-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px;margin:0}
.performer-facts div{border-bottom:1px solid #e8e9e5;padding-bottom:9px;min-width:0}
.performer-facts dt{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#69776f}
.performer-facts dd{margin:3px 0 0;font-weight:700;overflow-wrap:anywhere}
.category-editorial{margin:32px 0 55px;border-top:1px solid #d8d8d0;padding:22px 0;max-width:900px;line-height:1.75}
.category-editorial h2{font-size:23px;margin:0 0 10px}
.category-editorial a{color:#92543d;text-decoration:underline}
@media(max-width:760px){.embed-shell.embed-xlove{height:clamp(280px,105vw,510px);min-height:0}.xlove-viewport,#xlove-room{width:100%!important;max-width:100%!important}.performer-details{padding:15px}.performer-facts{grid-template-columns:1fr}.category-editorial{margin-top:24px}}

/* Room pages only: balanced, centered, responsive player and profile */
.room-main.shell{width:min(1080px,calc(100% - 40px));max-width:1080px;margin-inline:auto;min-width:0}
.room-main .crumb,.room-main .room-title{max-width:960px;margin-inline:auto}
.room-main .room-title{padding:20px 0 16px}
.room-main .room-title h1{font-size:clamp(26px,3.3vw,40px);line-height:1.16;overflow-wrap:anywhere}
.room-main .embed-shell{width:100%;max-width:960px;margin:0 auto;min-width:0;min-height:0;height:auto;aspect-ratio:16/9;max-height:none;position:relative;overflow:hidden;border-radius:12px;background:#16221e;isolation:isolate}
.room-main .embed-shell>iframe{display:block;width:100%;height:100%;position:absolute;inset:0;border:0}
.room-main .embed-shell.embed-xlove{width:100%;max-width:960px;height:auto;min-height:0;aspect-ratio:16/9;max-height:none;overflow:hidden}
.room-main .xlove-viewport{width:100%;height:100%;position:absolute;inset:0;overflow:hidden;contain:layout paint}
.room-main #xlove-room{min-height:0!important;position:relative!important;width:100%!important;max-width:100%!important;height:100%!important;overflow:hidden!important}
.room-main #xlove-room iframe,.room-main #xlove-room video,.room-main #xlove-room img,.room-main #xlove-room canvas{max-width:100%!important;box-sizing:border-box!important}
.room-main .room-cta{display:table;margin:18px auto 24px;padding:12px 21px;border-radius:9px;text-align:center}
.room-main .performer-details{width:100%;max-width:960px;margin:0 auto 34px;border-radius:12px;padding:23px 26px}
.room-main .offline-panel{max-width:960px;margin:0 auto;border-radius:12px}
.room-main>.section-line{max-width:960px;margin:40px auto 22px}
@media(max-width:760px){
 .room-main.shell{width:calc(100% - 24px)}
 .room-main .room-title{padding:17px 0 14px}
 .room-main .room-title h1{font-size:clamp(23px,6vw,32px);letter-spacing:-.5px}
 .room-main .embed-shell,.room-main .embed-shell.embed-xlove{width:100%;max-width:100%;min-height:0;height:auto;aspect-ratio:4/3;border-radius:9px}
 .room-main .room-cta{margin:15px auto 20px}
 .room-main .performer-details{padding:18px 15px}
}
