/*
Theme Name: Veloura Society
Theme URI: https://velourasociety.com/
Author: Veloura Society
Description: Premium custom WordPress theme foundation for Veloura Society.
Version: 0.5.5
Requires at least: 6.5
Tested up to: 7.1
Requires PHP: 8.0
Text Domain: veloura-society
*/

:root {
  --vs-bg: #0b0a0d;
  --vs-bg-soft: #131118;
  --vs-card: #17141c;
  --vs-card-2: #1e1a24;
  --vs-text: #f7f3f0;
  --vs-muted: #b8adb5;
  --vs-line: rgba(255,255,255,.10);
  --vs-gold: #d6b16d;
  --vs-gold-2: #f0d18d;
  --vs-rose: #a66b79;
  --vs-max: 1240px;
  --vs-radius: 24px;
  --vs-shadow: 0 24px 70px rgba(0,0,0,.28);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--vs-bg);color:var(--vs-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto}
button,input,select,textarea{font:inherit}
.vs-wrap{width:min(calc(100% - 32px),var(--vs-max));margin-inline:auto}
.vs-eyebrow{display:inline-flex;gap:.55rem;align-items:center;color:var(--vs-gold-2);font-size:.78rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
.vs-eyebrow:before{content:"";width:26px;height:1px;background:currentColor}
.vs-section{padding:88px 0}
.vs-section--soft{background:linear-gradient(180deg,var(--vs-bg-soft),#100e13)}
.vs-title{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.15rem,5vw,4.6rem);line-height:1.02;letter-spacing:-.035em;margin:.35rem 0 1rem}
.vs-title--sm{font-size:clamp(1.8rem,3.4vw,3.1rem)}
.vs-copy{max-width:720px;color:var(--vs-muted);font-size:1.05rem}
.vs-grid{display:grid;gap:24px}
.vs-btn{display:inline-flex;justify-content:center;align-items:center;gap:.5rem;border-radius:999px;padding:14px 22px;font-weight:800;border:1px solid transparent;transition:.2s ease;cursor:pointer}
.vs-btn--gold{background:linear-gradient(135deg,var(--vs-gold-2),var(--vs-gold));color:#21180d;box-shadow:0 10px 30px rgba(214,177,109,.18)}
.vs-btn--ghost{border-color:var(--vs-line);background:rgba(255,255,255,.03)}
.vs-btn:hover{transform:translateY(-1px)}

/* Header */
.vs-site-header{position:sticky;top:0;z-index:50;background:rgba(11,10,13,.82);backdrop-filter:blur(16px);border-bottom:1px solid var(--vs-line)}
.vs-header-inner{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.vs-brand{display:flex;align-items:center;gap:12px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}
.vs-brand-mark{width:34px;height:34px;border:1px solid rgba(214,177,109,.6);border-radius:50%;display:grid;place-items:center;color:var(--vs-gold-2);font-family:Georgia,serif}
.vs-nav{display:flex;align-items:center;gap:24px;color:#ded7db;font-size:.92rem}
.vs-nav a:hover{color:#fff}
.vs-header-actions{display:flex;gap:10px}
.vs-menu-toggle{display:none;background:transparent;color:#fff;border:1px solid var(--vs-line);border-radius:10px;padding:9px 11px}

/* Hero */
.vs-hero{position:relative;overflow:hidden;padding:92px 0 74px;background:
radial-gradient(circle at 78% 18%,rgba(166,107,121,.26),transparent 30%),
radial-gradient(circle at 28% 15%,rgba(214,177,109,.14),transparent 28%),
linear-gradient(180deg,#0d0b10 0%,#0b0a0d 100%)}
.vs-hero:after{content:"";position:absolute;inset:auto -10% -38% 35%;height:560px;background:radial-gradient(ellipse,rgba(214,177,109,.08),transparent 68%);pointer-events:none}
.vs-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:54px;align-items:center}
.vs-hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(3.2rem,7vw,6.8rem);line-height:.92;letter-spacing:-.055em;margin:14px 0 22px;max-width:850px}
.vs-hero h1 em{font-weight:400;color:var(--vs-gold-2)}
.vs-hero p{max-width:650px;color:#c6bbc3;font-size:1.08rem}
.vs-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.vs-search-card{position:relative;background:linear-gradient(180deg,rgba(31,26,35,.95),rgba(19,17,24,.95));border:1px solid var(--vs-line);border-radius:28px;padding:24px;box-shadow:var(--vs-shadow)}
.vs-search-card:before{content:"";position:absolute;inset:10px;border:1px solid rgba(214,177,109,.12);border-radius:20px;pointer-events:none}
.vs-search-card h3{font-family:Georgia,serif;font-size:1.65rem;margin:0 0 8px}
.vs-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}
.vs-field{display:flex;flex-direction:column;gap:7px}
.vs-field label{font-size:.76rem;text-transform:uppercase;letter-spacing:.12em;color:#a99fa7}
.vs-field select,.vs-field input{width:100%;background:#0f0d12;border:1px solid var(--vs-line);color:#fff;border-radius:14px;padding:13px 14px}
.vs-stats{margin-top:28px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.vs-stat{padding:14px;border:1px solid var(--vs-line);border-radius:16px;background:rgba(255,255,255,.025)}
.vs-stat strong{display:block;color:var(--vs-gold-2);font-size:1.4rem}
.vs-stat span{color:#978c95;font-size:.8rem}

/* Cards */
.vs-card-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:34px}
.vs-profile-card{overflow:hidden;background:linear-gradient(180deg,var(--vs-card-2),var(--vs-card));border:1px solid var(--vs-line);border-radius:22px;box-shadow:0 16px 34px rgba(0,0,0,.18)}
.vs-photo{position:relative;aspect-ratio:4/5;background:
radial-gradient(circle at 68% 24%,rgba(214,177,109,.28),transparent 18%),
linear-gradient(145deg,#352c37,#17131a 55%,#0f0d11);overflow:hidden}
.vs-photo:before{content:"";position:absolute;width:46%;height:64%;left:27%;top:14%;border-radius:48% 48% 36% 36%;background:linear-gradient(180deg,rgba(255,255,255,.18),rgba(255,255,255,.04));filter:blur(.2px)}
.vs-photo:after{content:"";position:absolute;inset:auto 0 0;height:44%;background:linear-gradient(transparent,rgba(11,10,13,.92))}
.vs-badge{position:absolute;top:14px;left:14px;z-index:2;padding:7px 10px;border-radius:999px;font-size:.7rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;background:rgba(15,13,18,.72);border:1px solid rgba(214,177,109,.35);color:var(--vs-gold-2)}
.vs-profile-info{padding:18px}
.vs-profile-info h3{margin:0;font-family:Georgia,serif;font-size:1.55rem}
.vs-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:9px;color:#a89da5;font-size:.84rem}
.vs-profile-footer{display:flex;justify-content:space-between;align-items:center;margin-top:16px;padding-top:14px;border-top:1px solid var(--vs-line)}
.vs-online{color:#b9d8b4;font-size:.8rem}

/* Feature blocks */
.vs-feature-grid{grid-template-columns:repeat(3,1fr);margin-top:34px}
.vs-feature{padding:28px;border:1px solid var(--vs-line);border-radius:22px;background:rgba(255,255,255,.025)}
.vs-feature-number{font-family:Georgia,serif;font-size:2.3rem;color:var(--vs-gold-2)}
.vs-feature h3{margin:.45rem 0 .4rem}
.vs-feature p{color:var(--vs-muted);margin:0}
.vs-cta{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;padding:42px;border-radius:28px;border:1px solid rgba(214,177,109,.22);background:linear-gradient(135deg,rgba(214,177,109,.08),rgba(166,107,121,.08));box-shadow:var(--vs-shadow)}

/* Content */
.vs-content{padding:72px 0}
.vs-content article{max-width:820px}
.vs-content h1,.vs-content h2,.vs-content h3{font-family:Georgia,serif}
.vs-content a{color:var(--vs-gold-2)}

/* Footer */
.vs-footer{padding:56px 0 28px;border-top:1px solid var(--vs-line);background:#09080b}
.vs-footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:30px}
.vs-footer h4{font-size:.8rem;text-transform:uppercase;letter-spacing:.12em;color:#fff}
.vs-footer p,.vs-footer a{color:#9e949b;font-size:.9rem}
.vs-footer a{display:block;margin:8px 0}
.vs-footer-bottom{display:flex;justify-content:space-between;gap:16px;align-items:center;padding-top:30px;margin-top:30px;border-top:1px solid var(--vs-line);color:#7e747c;font-size:.82rem}

@media (max-width: 980px){
  .vs-nav{display:none}.vs-menu-toggle{display:block}.vs-header-actions .vs-btn--ghost{display:none}
  .vs-hero-grid{grid-template-columns:1fr}.vs-card-grid{grid-template-columns:repeat(2,1fr)}
  .vs-feature-grid{grid-template-columns:1fr 1fr}.vs-footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width: 640px){
  .vs-wrap{width:min(calc(100% - 22px),var(--vs-max))}
  .vs-section{padding:64px 0}.vs-hero{padding:68px 0 52px}
  .vs-hero h1{font-size:clamp(3rem,16vw,4.6rem)}
  .vs-form-row,.vs-stats,.vs-card-grid,.vs-feature-grid,.vs-footer-grid,.vs-cta{grid-template-columns:1fr}
  .vs-header-actions .vs-btn--gold{display:none}.vs-cta{padding:28px}.vs-footer-bottom{flex-direction:column;align-items:flex-start}
}

/* Homepage V2 */
.vs-home-hero{min-height:690px;position:relative;overflow:hidden;display:flex;align-items:center;border-bottom:1px solid var(--vs-line)}
.vs-hero-backdrop{position:absolute;inset:0}.vs-hero-backdrop:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,7,10,.97) 0%,rgba(8,7,10,.82) 43%,rgba(8,7,10,.28) 72%,rgba(8,7,10,.72) 100%),linear-gradient(0deg,#0b0a0d 0%,transparent 35%)}
.vs-hero-backdrop img{width:100%;height:100%;object-fit:cover;object-position:center 28%;filter:saturate(.72) contrast(1.05)}
.vs-home-hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:1.15fr .85fr;gap:60px;align-items:center;padding:100px 0}
.vs-home-copy{max-width:720px}.vs-home-copy h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(3.5rem,7vw,6.9rem);line-height:.91;letter-spacing:-.055em;margin:.45rem 0 1.4rem}.vs-home-copy h1 em{color:var(--vs-gold-2);font-weight:400}.vs-home-copy p{font-size:1.12rem;max-width:650px;color:#d5cbd2}
.vs-hero-mini{display:flex;gap:18px;justify-content:flex-end;align-items:flex-start}.vs-mini-card{width:210px;height:310px;border:1px solid rgba(255,255,255,.18);border-radius:24px;overflow:hidden;position:relative;box-shadow:var(--vs-shadow)}.vs-mini-card--low{margin-top:95px}.vs-mini-card img{width:100%;height:100%;object-fit:cover}.vs-mini-card:after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.8))}.vs-mini-card span{position:absolute;z-index:2;left:16px;bottom:15px;text-transform:uppercase;letter-spacing:.14em;font-size:.68rem;font-weight:800;color:var(--vs-gold-2)}
.vs-quick{position:relative;z-index:4;margin-top:-38px}.vs-quick-grid{background:#151219;border:1px solid var(--vs-line);border-radius:22px;display:grid;grid-template-columns:repeat(4,1fr);box-shadow:var(--vs-shadow)}.vs-quick-grid a{padding:25px 26px;border-right:1px solid var(--vs-line)}.vs-quick-grid a:last-child{border:0}.vs-quick-grid strong,.vs-quick-grid span{display:block}.vs-quick-grid strong{font-family:Georgia,serif;font-size:1.25rem}.vs-quick-grid span{font-size:.78rem;color:var(--vs-muted);margin-top:3px}
.vs-location-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:32px}.vs-location{height:250px;border-radius:22px;overflow:hidden;position:relative;border:1px solid var(--vs-line)}.vs-location:after{content:"";position:absolute;inset:30% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.9))}.vs-location img{width:100%;height:100%;object-fit:cover;filter:saturate(.6)}.vs-location div{position:absolute;z-index:2;left:22px;bottom:20px}.vs-location strong,.vs-location span{display:block}.vs-location strong{font-family:Georgia,serif;font-size:1.55rem}.vs-location span{color:#ddd0d7;font-size:.8rem}
.vs-section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:26px}.vs-section-head .vs-title{margin-bottom:0}.vs-section-head>a{color:var(--vs-gold-2);font-size:.85rem}
.vs-profile-card--photo .vs-photo{height:390px;padding:0}.vs-profile-card--photo .vs-photo:before{display:none}.vs-profile-card--photo .vs-photo img{width:100%;height:100%;object-fit:cover;display:block}.vs-profile-card--photo .vs-badge{position:absolute;left:14px;top:14px;z-index:2}
.vs-gold-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:55px;align-items:center}.vs-gold-copy{max-width:480px}.vs-private-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.vs-private{height:390px;border-radius:22px;overflow:hidden;position:relative;border:1px solid rgba(214,177,109,.3)}.vs-private img{width:100%;height:100%;object-fit:cover;filter:blur(9px) brightness(.55);transform:scale(1.08)}.vs-private-lock{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:rgba(10,8,11,.24)}.vs-private-lock strong{color:var(--vs-gold-2);letter-spacing:.18em}.vs-private-lock span{font-family:Georgia,serif;font-size:1.25rem;margin:.25rem 0}.vs-private-lock small{color:#d8cdd3}
@media(max-width:900px){.vs-home-hero-inner,.vs-gold-layout{grid-template-columns:1fr}.vs-hero-mini{display:none}.vs-quick-grid,.vs-location-grid{grid-template-columns:repeat(2,1fr)}.vs-quick-grid a:nth-child(2){border-right:0}.vs-quick-grid a:nth-child(-n+2){border-bottom:1px solid var(--vs-line)}.vs-private-grid{grid-template-columns:repeat(3,1fr)}.vs-profile-card--photo .vs-photo{height:340px}}
@media(max-width:620px){.vs-home-hero{min-height:620px}.vs-home-hero-inner{padding:80px 0}.vs-home-copy h1{font-size:3.55rem}.vs-quick-grid,.vs-location-grid{grid-template-columns:1fr}.vs-quick-grid a{border-right:0;border-bottom:1px solid var(--vs-line)!important}.vs-private-grid{grid-template-columns:1fr 1fr}.vs-private:last-child{display:none}.vs-private{height:300px}.vs-section-head{align-items:flex-start;flex-direction:column}.vs-profile-card--photo .vs-photo{height:420px}}

/* Profile demo */
.vs-card-link{display:block;color:inherit}
.vs-profile-hero{padding:58px 0 34px;background:radial-gradient(circle at 85% 15%,rgba(214,177,109,.08),transparent 30%),#0b0a0d;border-bottom:1px solid var(--vs-line)}
.vs-back-link{display:inline-flex;color:#9f959d;font-size:.86rem;margin-bottom:24px}.vs-back-link:hover{color:var(--vs-gold-2)}
.vs-profile-top{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);gap:46px;align-items:start}
.vs-profile-gallery{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:12px}.vs-profile-main,.vs-profile-thumbs button,.vs-public-gallery button{border:0;background:none;padding:0;cursor:pointer;overflow:hidden}.vs-profile-main{position:relative;height:650px;border-radius:28px}.vs-profile-main img,.vs-profile-thumbs img,.vs-public-gallery img{width:100%;height:100%;object-fit:cover;display:block}.vs-profile-thumbs{display:grid;grid-template-rows:repeat(4,1fr);gap:12px}.vs-profile-thumbs button{border-radius:18px;min-height:0}.vs-profile-thumbs button:hover img,.vs-public-gallery button:hover img{transform:scale(1.03)}.vs-profile-thumbs img,.vs-public-gallery img{transition:transform .25s ease}.vs-gallery-count{position:absolute;right:18px;bottom:18px;background:rgba(12,10,13,.78);border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:9px 13px;color:#fff;font-weight:700;font-size:.8rem;backdrop-filter:blur(10px)}
.vs-profile-summary{position:sticky;top:112px;padding-top:26px}.vs-profile-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.vs-profile-heading h1{font-family:Georgia,serif;font-size:clamp(3.4rem,5vw,5rem);line-height:.95;margin:14px 0 8px;letter-spacing:-.045em}.vs-profile-heading h1 span{color:#9b9098;font-weight:400;font-size:.48em;vertical-align:middle}.vs-profile-heading p{margin:0;color:#b6abb3}.vs-profile-badges{display:flex;gap:8px}.vs-pill{display:inline-flex;padding:7px 10px;border-radius:999px;border:1px solid var(--vs-line);font-size:.68rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:#d9ced5}.vs-pill--gold{color:var(--vs-gold-2);border-color:rgba(214,177,109,.35);background:rgba(214,177,109,.06)}.vs-favourite{width:48px;height:48px;border-radius:50%;border:1px solid var(--vs-line);background:#151219;color:#fff;font-size:1.6rem;cursor:pointer}.vs-favourite:hover{border-color:rgba(214,177,109,.45);color:var(--vs-gold-2)}
.vs-availability{display:flex;gap:12px;align-items:center;margin:26px 0;padding:16px 17px;border-radius:16px;background:#151219;border:1px solid var(--vs-line)}.vs-dot{width:10px;height:10px;border-radius:50%;background:#9ad895;box-shadow:0 0 0 5px rgba(154,216,149,.08)}.vs-availability strong,.vs-availability small{display:block}.vs-availability small{color:#9f959d;margin-top:2px}.vs-profile-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.vs-profile-facts{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:26px;border:1px solid var(--vs-line);border-radius:18px;overflow:hidden}.vs-profile-facts div{padding:16px;border-right:1px solid var(--vs-line);border-bottom:1px solid var(--vs-line)}.vs-profile-facts div:nth-child(2n){border-right:0}.vs-profile-facts div:nth-last-child(-n+2){border-bottom:0}.vs-profile-facts span,.vs-profile-facts strong{display:block}.vs-profile-facts span{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:#8f858d}.vs-profile-facts strong{margin-top:4px}
.vs-profile-body{padding-top:46px}.vs-profile-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:34px;align-items:start}.vs-profile-content{display:grid;gap:18px}.vs-profile-panel{background:#121016;border:1px solid var(--vs-line);border-radius:24px;padding:32px}.vs-profile-panel h2{font-family:Georgia,serif;font-size:2.2rem;line-height:1.05;margin:.45rem 0 1rem}.vs-profile-panel p{color:#b9aeb6;line-height:1.75}.vs-demo-note,.vs-fineprint{font-size:.8rem;color:#827780!important}.vs-panel-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.vs-panel-note{color:#80757e;font-size:.78rem}.vs-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--vs-line);border-radius:18px;overflow:hidden}.vs-detail-grid div{padding:18px;border-right:1px solid var(--vs-line);border-bottom:1px solid var(--vs-line)}.vs-detail-grid div:nth-child(3n){border-right:0}.vs-detail-grid div:nth-last-child(-n+3){border-bottom:0}.vs-detail-grid span,.vs-detail-grid strong{display:block}.vs-detail-grid span{font-size:.73rem;color:#8f858d;text-transform:uppercase;letter-spacing:.1em}.vs-detail-grid strong{margin-top:5px}.vs-public-gallery{display:grid;grid-template-columns:1.15fr .85fr;grid-template-rows:290px 290px;gap:12px}.vs-public-gallery button{border-radius:18px}.vs-public-gallery button:first-child{grid-row:1/3}.vs-public-gallery img{object-position:center 26%}
.vs-gold-panel{display:grid;grid-template-columns:.85fr 1.15fr;gap:26px;align-items:center;border-color:rgba(214,177,109,.24);background:linear-gradient(135deg,rgba(214,177,109,.06),#121016 35%,rgba(125,73,93,.06))}.vs-gold-panel-copy p{margin-bottom:22px}.vs-gold-previews{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.vs-gold-preview{height:260px;position:relative;border-radius:17px;overflow:hidden;border:1px solid rgba(214,177,109,.24)}.vs-gold-preview img{width:100%;height:100%;object-fit:cover;filter:blur(12px) brightness(.45);transform:scale(1.12)}.vs-gold-preview>div{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:rgba(11,9,12,.15)}.vs-gold-preview strong{font-size:.68rem;letter-spacing:.18em;color:var(--vs-gold-2)}.vs-gold-preview span{font-family:Georgia,serif;margin:5px 0}.vs-gold-preview small{color:#cfc3ca}
.vs-rate-list{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--vs-line);border-radius:18px;overflow:hidden}.vs-rate-list div{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px;border-right:1px solid var(--vs-line);border-bottom:1px solid var(--vs-line)}.vs-rate-list div:nth-child(2n){border-right:0}.vs-rate-list div:nth-last-child(-n+2){border-bottom:0}.vs-rate-list span{color:#a99ea6}.vs-rate-list strong{color:var(--vs-gold-2)}.vs-week{display:grid;gap:8px}.vs-week div{display:flex;justify-content:space-between;padding:13px 16px;border-radius:13px;background:#0d0b10;border:1px solid rgba(255,255,255,.05)}.vs-week .is-muted{opacity:.5}.vs-review{padding:18px 0;border-top:1px solid var(--vs-line)}.vs-review:first-of-type{margin-top:14px}.vs-review div{display:flex;justify-content:space-between;gap:16px}.vs-review div span{font-size:.78rem;color:#81767e}.vs-review p{margin:.55rem 0 0}.vs-rating{font-family:Georgia,serif;font-size:1.8rem;color:var(--vs-gold-2)}
.vs-profile-sidebar{position:sticky;top:108px;display:grid;gap:14px}.vs-contact-card,.vs-safety-card{border:1px solid var(--vs-line);border-radius:22px;background:#151219;padding:24px}.vs-contact-card h3{font-family:Georgia,serif;font-size:2rem;margin:.5rem 0}.vs-contact-card p,.vs-safety-card p{color:#a99ea6;font-size:.9rem;line-height:1.6}.vs-btn--full{display:flex;width:100%;justify-content:center;margin-top:10px}.vs-contact-meta{display:flex;justify-content:space-between;gap:16px;padding-top:14px;margin-top:14px;border-top:1px solid var(--vs-line);font-size:.8rem}.vs-contact-meta span{color:#827780}.vs-safety-card strong{color:var(--vs-gold-2)}.vs-safety-card a{display:inline-block;margin-top:4px;color:#998e96;font-size:.8rem;text-decoration:underline}
.vs-lightbox{position:fixed;z-index:99999;inset:0;background:rgba(5,4,6,.94);display:flex;align-items:center;justify-content:center;padding:30px}.vs-lightbox[hidden]{display:none}.vs-lightbox img{max-width:min(1050px,92vw);max-height:90vh;object-fit:contain;border-radius:16px;box-shadow:0 30px 90px rgba(0,0,0,.55)}.vs-lightbox-close{position:absolute;right:24px;top:20px;width:48px;height:48px;border-radius:50%;background:#171319;border:1px solid var(--vs-line);color:#fff;font-size:2rem;cursor:pointer;z-index:3}
.vs-lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:58px;height:58px;border-radius:50%;border:1px solid rgba(255,255,255,.18);background:rgba(23,19,25,.78);color:#fff;font-size:3rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(10px);transition:background .2s ease,border-color .2s ease,transform .2s ease}.vs-lightbox-nav:hover{background:rgba(214,177,109,.18);border-color:rgba(214,177,109,.55)}.vs-lightbox-prev{left:28px}.vs-lightbox-next{right:28px}.vs-lightbox-counter{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);z-index:3;padding:8px 13px;border-radius:999px;background:rgba(23,19,25,.78);border:1px solid rgba(255,255,255,.14);color:#fff;font-size:.8rem;font-weight:700;backdrop-filter:blur(10px)}
@media(max-width:700px){.vs-lightbox{padding:18px}.vs-lightbox-nav{width:48px;height:48px;font-size:2.5rem}.vs-lightbox-prev{left:10px}.vs-lightbox-next{right:10px}.vs-lightbox-close{right:12px;top:12px;width:44px;height:44px}.vs-lightbox-counter{bottom:12px}}
@media(max-width:1050px){.vs-profile-top{grid-template-columns:1fr}.vs-profile-summary{position:static;padding-top:0}.vs-profile-layout{grid-template-columns:1fr}.vs-profile-sidebar{position:static;grid-template-columns:1fr 1fr}.vs-gold-panel{grid-template-columns:1fr}}
@media(max-width:720px){.vs-profile-gallery{grid-template-columns:1fr}.vs-profile-main{height:520px}.vs-profile-thumbs{grid-template-columns:repeat(4,1fr);grid-template-rows:120px}.vs-profile-summary h1{font-size:3.5rem}.vs-detail-grid{grid-template-columns:1fr 1fr}.vs-detail-grid div:nth-child(3n){border-right:1px solid var(--vs-line)}.vs-detail-grid div:nth-child(2n){border-right:0}.vs-detail-grid div:nth-last-child(-n+3){border-bottom:1px solid var(--vs-line)}.vs-detail-grid div:nth-last-child(-n+2){border-bottom:0}.vs-public-gallery{grid-template-columns:1fr 1fr;grid-template-rows:240px 240px}.vs-public-gallery button:first-child{grid-column:1/3;grid-row:auto}.vs-gold-previews{grid-template-columns:repeat(3,1fr)}.vs-gold-preview{height:210px}.vs-rate-list{grid-template-columns:1fr}.vs-rate-list div{border-right:0!important;border-bottom:1px solid var(--vs-line)!important}.vs-rate-list div:last-child{border-bottom:0!important}.vs-profile-sidebar{grid-template-columns:1fr}}
@media(max-width:500px){.vs-profile-hero{padding-top:35px}.vs-profile-main{height:460px}.vs-profile-thumbs{grid-template-rows:90px;gap:7px}.vs-profile-panel{padding:24px}.vs-profile-actions,.vs-profile-facts,.vs-detail-grid{grid-template-columns:1fr}.vs-profile-facts div,.vs-detail-grid div{border-right:0!important;border-bottom:1px solid var(--vs-line)!important}.vs-profile-facts div:last-child,.vs-detail-grid div:last-child{border-bottom:0!important}.vs-public-gallery{grid-template-columns:1fr;grid-template-rows:360px 240px 240px 240px}.vs-public-gallery button:first-child{grid-column:auto}.vs-gold-previews{grid-template-columns:1fr 1fr}.vs-gold-preview:last-child{display:none}.vs-review div{flex-direction:column;gap:4px}}

/* Profile V4 refinements */
.vs-profile-v4-top{display:grid;grid-template-columns:minmax(0,1.22fr) minmax(350px,.78fr);gap:34px;align-items:start;margin-top:22px}
.vs-profile-gallery--v4{grid-template-columns:minmax(0,1fr) 150px;gap:10px;min-width:0}
.vs-profile-gallery--v4 .vs-profile-main{height:560px;border-radius:24px}
.vs-profile-gallery--v4 .vs-profile-thumbs{grid-template-rows:repeat(4,1fr);gap:10px;height:560px}
.vs-profile-gallery--v4 .vs-profile-thumbs button{border-radius:15px}
.vs-profile-summary--v4{position:static;padding:8px 0 0}
.vs-profile-summary--v4 .vs-profile-heading{margin-top:10px}
.vs-profile-heading--v4 h1{font-size:clamp(3.1rem,4.2vw,4.5rem)}
.vs-profile-summary--v4 .vs-availability{margin:20px 0}
.vs-profile-summary--v4 .vs-profile-actions{grid-template-columns:1fr}
.vs-media-strip{display:grid;grid-template-columns:repeat(3,1fr);margin:18px 0 0;border:1px solid var(--vs-line);border-radius:16px;overflow:hidden;background:#121016}
.vs-media-strip a{padding:14px 10px;text-align:center;border-right:1px solid var(--vs-line)}
.vs-media-strip a:last-child{border-right:0}.vs-media-strip strong,.vs-media-strip span{display:block}.vs-media-strip strong{font-family:Georgia,serif;font-size:1.4rem;color:var(--vs-gold-2);line-height:1}.vs-media-strip span{font-size:.7rem;color:#9e939b;margin-top:5px}
.vs-profile-facts--v4{margin-top:14px}.vs-profile-facts--v4 div{padding:13px 14px}
.vs-verified-line{margin-top:14px;color:#c6bbc2;font-size:.78rem;padding:11px 13px;border-radius:12px;background:rgba(214,177,109,.06);border:1px solid rgba(214,177,109,.18)}
.vs-gold-counts{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0 22px}.vs-gold-counts span{padding:9px 11px;border:1px solid rgba(214,177,109,.2);border-radius:999px;color:#c7bbc2;font-size:.8rem}.vs-gold-counts strong{color:var(--vs-gold-2)}
.vs-gold-preview{height:285px}.vs-gold-preview img{filter:blur(8px) brightness(.52);transform:scale(1.08)}.vs-gold-preview>div{background:linear-gradient(180deg,rgba(11,9,12,.08),rgba(11,9,12,.38))}.vs-gold-preview span{font-size:1.05rem}.vs-gold-preview small{font-size:.74rem}
.vs-profile-sidebar{top:96px}
@media(max-width:1050px){.vs-profile-v4-top{grid-template-columns:1fr}.vs-profile-gallery--v4{grid-template-columns:minmax(0,1fr) 150px}.vs-profile-summary--v4{max-width:none}.vs-profile-summary--v4 .vs-profile-actions{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.vs-profile-v4-top{gap:22px}.vs-profile-gallery--v4{grid-template-columns:1fr}.vs-profile-gallery--v4 .vs-profile-main{height:520px}.vs-profile-gallery--v4 .vs-profile-thumbs{height:auto;grid-template-columns:repeat(4,1fr);grid-template-rows:110px}.vs-profile-summary--v4 .vs-profile-actions{grid-template-columns:1fr}.vs-media-strip{grid-template-columns:repeat(3,1fr)}}
@media(max-width:500px){.vs-profile-gallery--v4 .vs-profile-main{height:460px}.vs-profile-gallery--v4 .vs-profile-thumbs{grid-template-rows:82px}.vs-media-strip{grid-template-columns:1fr 1fr}.vs-media-strip a:nth-child(2){border-right:0}.vs-media-strip a:last-child{grid-column:1/3;border-top:1px solid var(--vs-line)}}


/* V4.1 — service categories + quick profile strip */
.vs-profile-media-column{min-width:0;display:grid;gap:14px}
.vs-quick-profile{background:linear-gradient(145deg,rgba(30,26,36,.96),rgba(18,16,22,.96));border:1px solid rgba(214,177,109,.22);border-radius:20px;padding:18px;box-shadow:0 16px 42px rgba(0,0,0,.18)}
.vs-quick-profile-primary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-bottom:14px;border-bottom:1px solid var(--vs-line)}
.vs-quick-profile-primary strong,.vs-quick-profile-primary small,.vs-quick-label{display:block}
.vs-quick-label{font-size:.66rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase;color:var(--vs-gold-2);margin-bottom:3px}
.vs-quick-profile-primary strong{font-family:Georgia,serif;font-size:1.35rem;line-height:1.1}
.vs-quick-profile-primary small{color:#938892;margin-top:4px;font-size:.76rem}
.vs-category-badge{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;padding:9px 12px;border-radius:999px;font-size:.67rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase;border:1px solid rgba(214,177,109,.38);color:var(--vs-gold-2);background:rgba(214,177,109,.08)}
.vs-category-badge--massage{border-color:rgba(164,214,190,.35);color:#bfe7d3;background:rgba(130,198,166,.08)}
.vs-category-badge--companion{border-color:rgba(193,166,214,.35);color:#dac4e7;background:rgba(171,128,199,.08)}
.vs-quick-stats{display:grid;grid-template-columns:.65fr .8fr .9fr 1.45fr 1.25fr;gap:0;margin:14px 0 12px;border:1px solid var(--vs-line);border-radius:14px;overflow:hidden}
.vs-quick-stats span{min-width:0;padding:10px 11px;border-right:1px solid var(--vs-line);font-size:.65rem;color:#8f858d;text-transform:uppercase;letter-spacing:.07em}
.vs-quick-stats span:last-child{border-right:0}.vs-quick-stats b{display:block;color:#eee7eb;font-size:.79rem;letter-spacing:0;text-transform:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:2px}.vs-quick-stats .is-online b{color:#aee6a9}
.vs-service-chips{display:flex;flex-wrap:wrap;gap:7px}
.vs-service-chips span{padding:7px 10px;border:1px solid var(--vs-line);border-radius:999px;background:#100e13;color:#c9bec6;font-size:.72rem}
.vs-services-intro{margin-top:-.2rem}.vs-services-intro strong{color:#e7d19f}
.vs-service-option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:20px}
.vs-service-option-grid div{display:flex;align-items:center;gap:10px;padding:14px 15px;border:1px solid var(--vs-line);border-radius:14px;background:#0e0c11}
.vs-service-option-grid div span{width:25px;height:25px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:rgba(214,177,109,.1);color:var(--vs-gold-2);font-weight:900;flex:0 0 auto}
.vs-service-option-grid strong{font-size:.88rem}
@media(max-width:1050px){.vs-quick-stats{grid-template-columns:repeat(3,1fr)}.vs-quick-stats span:nth-child(3){border-right:0}.vs-quick-stats span:nth-child(n+4){border-top:1px solid var(--vs-line)}}
@media(max-width:720px){.vs-quick-profile-primary{align-items:flex-start;flex-direction:column}.vs-quick-stats{grid-template-columns:repeat(2,1fr)}.vs-quick-stats span:nth-child(odd){border-right:1px solid var(--vs-line)}.vs-quick-stats span:nth-child(even){border-right:0}.vs-quick-stats span:nth-child(n+3){border-top:1px solid var(--vs-line)}.vs-quick-stats span:last-child{grid-column:1/3}.vs-service-option-grid{grid-template-columns:1fr}}
@media(max-width:500px){.vs-quick-profile{padding:14px}.vs-service-chips span{font-size:.68rem}.vs-quick-stats b{font-size:.74rem}}


/* V4.2 — profile view counter */
.vs-profile-heading-tools{display:flex;align-items:flex-start;gap:10px;margin-left:auto}
.vs-profile-views{min-width:118px;height:48px;display:flex;align-items:center;justify-content:center;gap:8px;padding:0 12px;border-radius:16px;border:1px solid var(--vs-line);background:#151219;color:#d9ced5}
.vs-profile-views-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;border:1px solid rgba(240,209,141,.35);color:var(--vs-gold-2);font-size:.72rem;line-height:1}
.vs-profile-views strong,.vs-profile-views small{display:block;white-space:nowrap}
.vs-profile-views strong{font-size:.82rem;line-height:1;color:#fff}
.vs-profile-views small{margin-top:2px;color:#8f858d;font-size:.58rem;line-height:1;text-transform:uppercase;letter-spacing:.07em}
@media(max-width:620px){.vs-profile-heading--v4{align-items:flex-start}.vs-profile-heading-tools{gap:7px}.vs-profile-views{min-width:auto;padding:0 9px}.vs-profile-views small{display:none}.vs-profile-views-icon{display:none}}


/* V4.3 — conditional profile categories and services */
.vs-category-badge--adult{border-color:rgba(214,177,109,.42);color:var(--vs-gold-2);background:linear-gradient(135deg,rgba(214,177,109,.12),rgba(166,107,121,.08))}
.vs-service-summary{display:grid;grid-template-columns:58px 1fr;gap:16px;align-items:start;margin-top:18px;padding:18px;border:1px solid rgba(214,177,109,.2);border-radius:18px;background:linear-gradient(135deg,rgba(214,177,109,.07),rgba(166,107,121,.045))}
.vs-service-summary-icon{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;border:1px solid rgba(214,177,109,.34);color:var(--vs-gold-2);font-family:Georgia,serif;font-size:.85rem;font-weight:700;letter-spacing:.06em;background:#100e13}
.vs-service-summary span,.vs-service-summary strong{display:block}.vs-service-summary>div:last-child>span{font-size:.67rem;letter-spacing:.11em;text-transform:uppercase;color:#988d95}.vs-service-summary>div:last-child>strong{font-family:Georgia,serif;font-size:1.45rem;margin:2px 0 4px}.vs-service-summary p{margin:0;color:#b9aeb6;font-size:.88rem;max-width:720px}
.vs-service-groups{display:grid;gap:16px;margin-top:18px}.vs-service-group{padding:16px;border:1px solid var(--vs-line);border-radius:18px;background:#100e13}.vs-service-group-title{display:block;margin-bottom:11px;color:#a99da6;font-size:.69rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.vs-service-group .vs-service-option-grid{margin-top:0}.vs-service-group .vs-service-option-grid div{background:#151219}.vs-service-disclaimer{display:flex;gap:10px;align-items:flex-start;margin-top:16px;padding:13px 14px;border-radius:14px;background:rgba(255,255,255,.025);border:1px solid var(--vs-line);font-size:.76rem}.vs-service-disclaimer strong{white-space:nowrap;color:#e6d19f}.vs-service-disclaimer span{color:#9e939b}
@media(max-width:720px){.vs-service-summary{grid-template-columns:46px 1fr}.vs-service-summary-icon{width:46px;height:46px;border-radius:14px}.vs-service-disclaimer{flex-direction:column;gap:4px}.vs-service-disclaimer strong{white-space:normal}}

/* V4.4 detailed services */
.vs-service-category-row{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px;margin-bottom:18px}.vs-service-category-row span{padding:9px 12px;border:1px solid var(--vs-line);border-radius:999px;background:#0e0c11;color:#817781;font-size:.74rem;font-weight:800}.vs-service-category-row span.is-active{border-color:rgba(214,177,109,.42);background:rgba(214,177,109,.08);color:var(--vs-gold-2)}
.vs-service-group-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:11px}.vs-service-group-head .vs-service-group-title{margin:0}.vs-service-group-head small{color:#817781;font-size:.68rem;text-transform:uppercase;letter-spacing:.08em}.vs-service-groups--detailed .vs-service-group{background:linear-gradient(180deg,#110f14,#0d0b10)}
.vs-service-note-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px}.vs-service-note-grid div{padding:14px;border:1px solid var(--vs-line);border-radius:14px;background:#0d0b10}.vs-service-note-grid span,.vs-service-note-grid strong{display:block}.vs-service-note-grid span{font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:#8f858d;margin-bottom:4px}.vs-service-note-grid strong{font-size:.84rem;color:#f1e7de}
@media(max-width:720px){.vs-service-note-grid{grid-template-columns:1fr}.vs-service-group-head{align-items:flex-start}}

.vs-favourite.is-active{color:#f0d18d;border-color:rgba(214,177,109,.65);background:rgba(214,177,109,.10)}.vs-favourite.is-loading{opacity:.55;pointer-events:none}


/* V5.4 Gold gallery state + layout refinements */
.vs-gold-panel--unlocked{display:block}.vs-gold-unlocked-head{max-width:760px;margin-bottom:24px}.vs-gold-unlocked-head h2{margin:.15em 0 .3em}.vs-gold-unlocked-grid{margin-top:6px;width:100%}.vs-gold-panel--unlocked .vs-gold-video-list{margin-top:20px}
.vs-gold-panel--locked{grid-template-columns:.9fr 1.1fr}.vs-gold-previews--locked{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}.vs-gold-previews--locked .vs-gold-preview{height:270px}.vs-gold-lock-card{background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(214,177,109,.025))}.vs-gold-lock-card>div{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.vs-gold-safe-preview img{filter:none!important;transform:none!important;width:100%;height:100%;object-fit:cover}.vs-gold-safe-preview>div{background:linear-gradient(180deg,rgba(11,9,12,.15),rgba(11,9,12,.62))}.vs-gold-cta-row{display:flex;gap:10px;flex-wrap:wrap}
@media(max-width:1050px){.vs-gold-panel--locked{grid-template-columns:1fr}.vs-gold-previews--locked{max-width:760px}}
@media(max-width:720px){.vs-gold-previews--locked{grid-template-columns:repeat(2,1fr)}.vs-gold-lock-card{grid-column:1/-1;height:170px!important}}
@media(max-width:500px){.vs-gold-previews--locked{grid-template-columns:1fr 1fr}.vs-gold-lock-card{grid-column:1/-1}.vs-gold-previews--locked .vs-gold-preview{height:210px}}
