/*
Theme Name: East Midlands Swingers Modern
Version: 1.6.0
Requires PHP: 7.4
Description: Modern responsive replacement preserving legacy profile custom fields.
Text Domain: ems-modern
*/
:root{--bg:#101019;--panel:#20202d;--accent:#ff426f;--text:#f7f5fa;--muted:#bbb9c8}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.6 system-ui,-apple-system,sans-serif}a{color:inherit;text-decoration:none}a:hover{color:#ff8ba5}.wrap{width:min(1180px,92%);margin:auto}.site-header{background:#181824;border-bottom:2px solid var(--accent)}.head-inner{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;padding:18px 0}.brand{font-weight:900;font-size:clamp(24px,3vw,34px);letter-spacing:-1px}.brand span{color:var(--accent)}.nav ul{display:flex;gap:18px;list-style:none;padding:0;margin:0;flex-wrap:wrap}.hero{padding:55px 0 38px;background:radial-gradient(ellipse at 85% 10%,#562039 0,transparent 55%),linear-gradient(130deg,#222033,#11111a)}.hero h1{font-size:clamp(30px,4.5vw,55px);line-height:1.12;max-width:850px;margin:0 0 18px}.hero p{max-width:700px;color:var(--muted);font-size:18px}.btn{display:inline-block;background:var(--accent);color:white;border-radius:10px;padding:12px 22px;font-weight:800;margin-top:10px}.btn:hover{background:#f91e55;color:white}.section{padding:34px 0}.section h2{font-size:27px}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.profile-card{background:var(--panel);border:1px solid #343445;border-radius:14px;overflow:hidden}.profile-card img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;background:#343445}.card-content{padding:15px}.card-content h3{font-size:19px;margin:0 0 4px}.meta{color:var(--muted);font-size:14px}.chips{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0}.chip{background:#343445;border-radius:20px;padding:3px 10px;font-size:12px}.profile-layout{display:grid;grid-template-columns:minmax(240px,370px) 1fr;gap:30px}.profile-photo{width:100%;height:auto;border-radius:15px}.profile-details{background:var(--panel);border-radius:14px;padding:24px}.stats{display:grid;grid-template-columns:160px 1fr;gap:10px;border-bottom:1px solid #343445;padding:9px 0}.stats strong{color:#ccc}.content-area{max-width:900px}.entry-content img{max-width:100%;height:auto}.site-footer{margin-top:35px;padding:30px 0;background:#181824;color:var(--muted)}.site-footer ul{list-style:none;display:flex;gap:15px;flex-wrap:wrap;padding:0}.pagination{margin:25px 0}.pagination .page-numbers{padding:8px 12px;background:var(--panel);border-radius:5px;margin-right:5px}.notice{background:#30202d;border-left:4px solid var(--accent);padding:15px;border-radius:6px}@media(max-width:900px){.grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:650px){.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.profile-layout{grid-template-columns:1fr}.stats{grid-template-columns:120px 1fr}.hero{padding:35px 0}.card-content{padding:10px}}@media(max-width:390px){.grid{grid-template-columns:1fr}}

/* v1.1: distinctive directory-inspired redesign */
:root{--bg:#f3f1eb;--panel:#fffefa;--accent:#df682d;--text:#1b2b35;--muted:#637078}
body{background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif}
a:hover{color:var(--accent)}
.site-header{background:#17333c;border-bottom:5px solid #e9b45d;color:#fff}
.head-inner{padding:12px 0;gap:15px}
.brand{display:flex;align-items:center;gap:12px;letter-spacing:0;font-size:19px;line-height:1.05}
.brand-mark{display:grid;place-items:center;background:#e9b45d;color:#17333c;border-radius:3px;width:46px;height:46px;font-size:18px;letter-spacing:-1px;font-weight:900}
.brand-words{font-size:18px;font-weight:900;letter-spacing:1px}
.brand-words small{display:block;font-size:10px;font-weight:700;letter-spacing:2.4px;color:#e9b45d;margin-top:5px}
.nav ul{gap:15px;font-size:14px}
.btn{background:var(--accent);border-radius:3px;padding:10px 17px;margin-top:0}
.btn:hover{background:#b64c19}
.hero{background:#20424b;color:white;padding:34px 0 30px;border-bottom:5px solid #e9b45d}
.hero h1{font-family:Georgia,serif;font-size:clamp(29px,3.3vw,43px);font-weight:700;max-width:700px;margin-bottom:9px}
.hero p{color:#d9e3e3;font-size:16px;margin:0 0 16px}
.areas{padding:27px 0 8px}
.areas-heading{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;margin-bottom:13px}
.areas-heading h2{font-family:Georgia,serif;font-size:25px;margin:0}
.areas-heading p{color:var(--muted);margin:0;font-size:14px}
.area-links{display:flex;flex-wrap:wrap;gap:8px}
.area-links a{background:#fffefa;border:1px solid #d6d7d1;border-radius:3px;padding:7px 11px;font-weight:700;font-size:13px}
.area-links a span{color:#8a918e;margin-left:7px;font-size:11px}
.section{padding:18px 0 35px}
.section h2{font-family:Georgia,serif;font-size:26px}
.grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.profile-card{border:1px solid #d8d9d4;border-radius:3px;box-shadow:0 2px 5px #142c3010}
.profile-card img{aspect-ratio:4/5;background:#dfe3df}
.card-content{padding:9px}
.card-content h3{font-size:14px;line-height:1.3;margin-bottom:5px;overflow-wrap:anywhere}
.meta{font-size:12px}
.chips{margin:7px 0 0}
.chip{background:#e9eeeb;border-radius:2px;color:#36515a;padding:2px 6px;font-size:11px}
.profile-details{border:1px solid #d8d9d4;border-radius:3px}
.profile-photo{border-radius:3px}
.stats{border-bottom-color:#d8d9d4}
.stats strong{color:#36515a}
.site-footer{background:#17333c;color:#d5e0df}
.pagination .page-numbers{border:1px solid #d8d9d4;border-radius:2px}
.notice{background:#f8e8da}
@media(max-width:1050px){.grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:800px){.grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:600px){.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.brand-words{font-size:15px}.brand-mark{width:40px;height:40px}.card-content{padding:7px}.card-content h3{font-size:12px}.meta{font-size:11px}.area-links a{font-size:12px}}
@media(max-width:380px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v1.2: prevent raw-looking span/count styling and integrate one cam card as a grid item */
.area-links a span{display:inline-flex;align-items:center;justify-content:center;min-width:22px;padding:0 5px;border-radius:2px;background:#e7ece9;color:#36515a;font-size:11px;line-height:19px;vertical-align:middle}
.brand span{color:inherit}.brand .brand-mark{color:#17333c}
.ems-cam-slot{min-width:0;max-width:100%;overflow:hidden;background:#fffefa;border:1px solid #d8d9d4;border-radius:3px;box-shadow:0 2px 5px #142c3010}
.ems-cam-slot img{max-width:100%;height:auto;object-fit:cover}
.ems-cam-slot iframe{max-width:100%;width:100%}
.ems-cam-slot > *{max-width:100%;margin:0}
.ems-single-cam{max-width:260px;margin-top:22px}
.ems-message-cta{display:block;text-align:center;font-size:17px;padding:14px 20px;margin-top:20px}
@media(max-width:600px){.ems-single-cam{max-width:230px}}

/* v1.3: match Live Cam Sidebar Cards 1.3.2 output to compact profile tiles */
.grid > .ems-cam-slot{min-width:0;align-self:stretch;overflow:hidden}
.grid .ems-cam-slot .lcsc-widget{display:block!important;padding:0!important;margin:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
.grid .ems-cam-slot .lcsc-title{font-size:12px!important;line-height:1.25!important;margin:5px 6px!important;color:#17333c!important}
.grid .ems-cam-slot .lcsc-cards{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:0!important}
.grid .ems-cam-slot .lcsc-card{display:block!important;width:100%!important;min-width:0!important;padding:0!important;margin:0!important;border:0!important;box-shadow:none!important}
.grid .ems-cam-slot .lcsc-image{display:block!important;position:relative!important;width:100%!important}
.grid .ems-cam-slot .lcsc-image img{width:100%!important;aspect-ratio:3/4!important;object-fit:cover!important;display:block!important}
.grid .ems-cam-slot .lcsc-name{display:block!important;font-size:12px!important;font-weight:700!important;padding:5px 7px 0!important;overflow-wrap:anywhere}
.grid .ems-cam-slot .lcsc-button{display:block!important;text-align:center!important;font-size:11px!important;padding:5px!important;margin:5px!important;background:#c36c42!important;color:white!important;border-radius:3px!important}
.grid .ems-cam-slot .lcsc-note{display:block!important;font-size:9px!important;padding:0 5px 5px!important}
.ems-single-cam{max-width:280px;margin-top:20px}
.ems-single-cam .lcsc-cards{grid-template-columns:minmax(0,1fr)!important}

/* v1.4: distinct rotating cam performers, matched to regular profile cards */
.grid .ems-cam-slot{display:flex;flex-direction:column}
.grid .ems-cam-slot .ems-cam-label{font-size:12px;font-weight:700;padding:7px 7px 5px;color:#17333c}
.grid .ems-cam-slot .lcsc-card{display:flex!important;flex-direction:column!important;flex:1;text-decoration:none;color:#17333c}
.grid .ems-cam-slot .lcsc-image{display:block;position:relative;overflow:hidden}
.grid .ems-cam-slot .lcsc-image img{width:100%!important;aspect-ratio:3/4!important;object-fit:cover!important;display:block!important}
.grid .ems-cam-slot .lcsc-image b{position:absolute;top:6px;left:6px;background:#d61a75;color:white;font-size:10px;padding:3px 5px;border-radius:3px}
.grid .ems-cam-slot .lcsc-name{font-size:12px;font-weight:700;padding:7px 7px 2px;overflow-wrap:anywhere}
.grid .ems-cam-slot .lcsc-button{display:block;background:#c36c42;color:#fff;text-align:center;font-size:11px;font-weight:700;padding:7px;margin:5px 7px;border-radius:3px}
.grid .ems-cam-slot .ems-cam-note{font-size:9px;color:#697479;padding:3px 7px 8px;margin-top:auto}
.ems-single-cam .ems-cam-slot{width:100%}
.ems-single-cam .ems-cam-label{font-weight:700;padding:8px}
.ems-single-cam .lcsc-card{display:block;color:#17333c;text-decoration:none}
.ems-single-cam .lcsc-image{display:block;position:relative}
.ems-single-cam .lcsc-image img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}
.ems-single-cam .lcsc-image b{position:absolute;top:6px;left:6px;background:#d61a75;color:white;padding:3px 6px;font-size:11px}
.ems-single-cam .lcsc-name{display:block;padding:6px 8px;font-weight:700}
.ems-single-cam .lcsc-button{display:block;text-align:center;background:#c36c42;color:#fff;margin:5px 8px;padding:8px}
.ems-single-cam .ems-cam-note{display:block;padding:6px 8px;color:#697479;font-size:10px}

/* v1.5: profile copy follows metadata before CTA */
.ems-profile-description{margin:16px 0 12px;line-height:1.6;overflow-wrap:anywhere}
.ems-profile-description p:first-child{margin-top:0}
.ems-profile-description p:last-child{margin-bottom:0}
