@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600;700&display=swap');:root{--bg:#100d14;--panel:#1d1722;--line:#3a2c3c;--text:#f8f1f6;--muted:#c7b9c8;--pink:#ff4d91;--gold:#e8bb84}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.65 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}a:hover{color:var(--pink)}.shell{width:min(1180px,calc(100% - 42px));margin:auto}.top{background:#16111a;border-bottom:1px solid var(--line);position:relative;z-index:3}.top .shell{display:flex;align-items:center;gap:35px;min-height:80px}.logo{font-size:24px;font-weight:800;letter-spacing:-1px;white-space:nowrap}.logo b{color:var(--pink)}.nav{display:flex;gap:24px;align-items:center;margin-left:auto;font-size:14px}.nav a{color:#e3d5e2}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:8px;background:var(--pink);color:#170c16!important;font-weight:800;padding:13px 21px;transition:transform .15s}.btn:hover{transform:translateY(-2px);background:#ff70a7}.btn.ghost{border:1px solid #655069;background:transparent;color:#fff!important}.hero{padding:78px 0 70px;background:radial-gradient(circle at 78% 42%,#53253e 0,transparent 37%),linear-gradient(140deg,#231524,#100d14 80%)}.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:64px}.eyebrow{text-transform:uppercase;letter-spacing:3px;font-size:12px;font-weight:800;color:var(--pink)}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;line-height:1.17}h1{font-size:clamp(43px,5vw,74px);letter-spacing:-1.7px;margin:18px 0}h2{font-size:clamp(28px,3vw,42px)}.lead{font-size:19px;color:#d9cbd8;max-width:600px}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:29px}.fine{font-size:12px;color:#b9a7b6;margin-top:18px}.portrait{aspect-ratio:4/4.7;min-height:350px;border-radius:18px;overflow:hidden;position:relative;background:linear-gradient(155deg,#653750,#342031 52%,#17101d);border:1px solid #7a4263;box-shadow:0 25px 70px #05030777}.portrait img{width:100%;height:100%;object-fit:cover;display:block}.portrait .fallback{position:absolute;inset:0;display:flex;align-items:flex-end;padding:32px;background:radial-gradient(circle at 65% 30%,#a05b78aa,transparent 50%)}.portrait .fallback span{font-family:Georgia,serif;font-size:38px;line-height:1.1;max-width:300px}.portrait:has(img) .fallback{display:none}.image-note{position:absolute;right:15px;top:15px;border-radius:100px;background:#160e17b8;padding:5px 12px;font-size:11px;color:#fff}.section{padding:64px 0}.section.alt{background:#17121a}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:24px}.section-heading h2{margin:8px 0}.section-heading p{color:var(--muted);max-width:600px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.card{border:1px solid var(--line);background:var(--panel);border-radius:13px;overflow:hidden;transition:transform .15s}.card:hover{transform:translateY(-3px)}.card-art{height:132px;background:linear-gradient(135deg,#653650,#281a2d);display:flex;align-items:flex-end;padding:17px;color:#e8bb84;font-size:12px;letter-spacing:2px;text-transform:uppercase}.card-body{padding:23px}.card h3{font-size:22px;margin:0 0 10px}.card p{color:var(--muted);font-size:14px;margin:0 0 17px}.more{font-weight:700;color:var(--pink);font-size:14px}.content-wrap{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:64px}.prose{font-size:17px;color:#e3d6e1;max-width:760px}.prose p{margin:0 0 23px}.prose h2{color:white;margin:0 0 26px}.aside{align-self:start;position:sticky;top:30px;background:#211823;border:1px solid var(--line);border-radius:14px;padding:26px}.aside h3{font-size:25px;margin:5px 0 12px}.aside p{color:var(--muted);font-size:14px}.aside .btn{width:100%}.breadcrumbs{color:#c7b5c6;font-size:13px;padding:32px 0 0}.breadcrumbs a{color:var(--pink)}.article-head{padding:22px 0 44px;max-width:850px}.article-head h1{font-size:clamp(37px,4.5vw,60px)}.article-head p{font-size:19px;color:var(--muted)}.cta-strip{padding:42px;border-radius:15px;background:linear-gradient(120deg,#56263f,#2d1c30);border:1px solid #80506d;display:flex;justify-content:space-between;align-items:center;gap:30px;margin:35px 0}.cta-strip h2{font-size:29px;margin:0 0 7px}.cta-strip p{color:#e8d7e2;margin:0}.foot{border-top:1px solid var(--line);padding:54px 0 30px;background:#0b090d}.footgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:45px}.foot h3{font:700 14px 'DM Sans',sans-serif;margin:0 0 16px}.foot a{display:block;color:#c5b6c4;font-size:14px;margin:0 0 9px}.foot .logo{display:block;color:#fff}.foot p{color:#a898a8;font-size:13px;max-width:350px}.copyright{border-top:1px solid #322535;margin-top:35px;padding-top:20px;font-size:12px;color:#ad9eae}.legal{color:#a997a8;font-size:12px}.pill{color:var(--gold);font-size:12px;font-weight:700;letter-spacing:2px;text-transform:uppercase}.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;background:white;color:black;padding:10px;z-index:20}@media(max-width:900px){.hero-grid{gap:25px}.content-wrap{grid-template-columns:1fr}.aside{position:static}.cards{grid-template-columns:repeat(2,1fr)}.nav{gap:12px}.top .shell{flex-wrap:wrap;padding:15px 0}.nav{margin-left:0}}@media(max-width:620px){.hero-grid{grid-template-columns:1fr}.portrait{min-height:300px;max-height:430px}.cards{grid-template-columns:1fr}.footgrid{grid-template-columns:1fr;gap:18px}.cta-strip{flex-direction:column;align-items:start;padding:27px}.nav{flex-wrap:wrap}.hero{padding:45px 0}h1{font-size:43px}}
/* Portrait imagery and live mature cams */
.card-art{padding:0;height:210px;display:block;overflow:hidden}.card-art img{width:100%;height:100%;object-fit:cover;object-position:center 27%;display:block;transition:transform .3s}.card:hover .card-art img{transform:scale(1.035)}.gallery-section{background:#120f17}.gallery-section h2{margin:8px 0}.gallery-note{color:var(--muted);max-width:760px}.portrait-gallery{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin:24px 0}.portrait-gallery figure{margin:0;aspect-ratio:3/4;overflow:hidden;border-radius:12px;border:1px solid var(--line);background:#251a29}.portrait-gallery img{width:100%;height:100%;object-fit:cover;object-position:center 25%}.article-photo{margin:0 0 28px;max-width:530px}.article-photo img{display:block;width:100%;max-height:480px;object-fit:cover;object-position:center 27%;border-radius:12px}.article-photo figcaption{font-size:12px;color:var(--muted);padding-top:7px}.cam-widget{padding:20px 0 35px;max-width:100%}.cam-widget h2{margin:0 0 10px}.cam-widget p{color:var(--muted)}.cam-iframe-wrap{width:min(750px,100%);overflow:hidden;background:#1d1722;border:1px solid var(--line);border-radius:12px;min-height:550px}.cam-iframe-wrap iframe{display:block;max-width:100%;border:0}@media(max-width:800px){.portrait-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:500px){.portrait-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.card-art{height:235px}.cam-iframe-wrap{overflow-x:auto}}

/* v3: consistent article and image layouts */
.content-wrap{grid-template-columns:minmax(0,1fr) 285px;align-items:start}
.content-wrap > .cam-widget{grid-column:1 / -1;width:100%;min-width:0;padding:0 0 38px}
.content-wrap > .prose{grid-column:1;min-width:0;width:100%;max-width:760px}
.content-wrap > .aside{grid-column:2;min-width:0}
.article-photo{max-width:480px;width:100%;margin:0 0 30px}
.article-photo img{width:100%;height:auto;max-height:540px;aspect-ratio:4/5;object-fit:cover;object-position:center 30%}
.portrait-gallery{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;align-items:stretch}
.portrait-gallery figure{display:block;position:relative;width:100%;min-width:0;aspect-ratio:3/4;max-height:320px;margin:0;overflow:hidden}
.portrait-gallery img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 26%}
.cam-iframe-wrap{max-width:100%;width:min(750px,100%)}
@media(max-width:900px){.content-wrap{grid-template-columns:minmax(0,1fr)}.content-wrap > .prose,.content-wrap > .aside,.content-wrap > .cam-widget{grid-column:1}.portrait-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:620px){.portrait-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.portrait-gallery figure{max-height:290px}.article-photo{max-width:100%}}
