/* ============================================================
   PROFILE PAGE 2.0 — "Cyber Hitech" (2026-09-09)
   Loaded on /profiles/*.html only, AFTER theme-cyber.css.
   Black grid hero, cool grey body, white square cards,
   neon green #39ff88 actions, violet #8a5cff accents.
   Fonts already loaded by fonts.css (Teko + Barlow).
   ============================================================ */

/* ---------- kill the old profile chrome ---------- */
.pf-page .divider{display:none !important}
.pf-page #breadcrumb{margin:14px 0 0}

/* The old style.css still forces  body b, body strong { color: var(--gold-2)
   !important }  — a dark violet. On the black hero and the black booking box
   that is almost invisible, which is exactly what the owner reported.
   On a profile page every bold word takes the colour of its own block. */
.pf-page b,.pf-page strong{color:inherit !important}
.pf-facts li b,.pf-mini li b{color:#fff !important}
.pf-price b,.pf-cnt b{color:var(--cy-green) !important}
.pf-legend b,.pf-hours li b,.pf-card p b,.pf-card p strong{color:var(--cy-charcoal) !important}
.pf-hours li.pf-off b{color:var(--muted) !important}

/* =================== 1. HERO =================== */
.pf-hero{
  background:var(--cy-black);
  background-image:linear-gradient(var(--cy-grid) 1px,transparent 1px),linear-gradient(90deg,var(--cy-grid) 1px,transparent 1px);
  background-size:32px 32px;
  color:#e8ecf1;position:relative;margin-top:14px;overflow:hidden
}
.pf-hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,var(--cy-green),var(--cy-violet))}
.pf-hero-in{display:grid;grid-template-columns:400px 1fr;gap:38px;align-items:start;padding-top:34px;padding-bottom:40px}

/* --- photo side --- */
.pf-shot{position:relative}
.slider-container{position:relative;border:2px solid transparent;
  background:linear-gradient(var(--cy-black),var(--cy-black)) padding-box,linear-gradient(135deg,var(--cy-green),var(--cy-violet)) border-box;
  aspect-ratio:3/4;overflow:hidden;margin:0}
.slider,.slides{height:100%}
.slider-container .slide{display:none;height:100%;background:var(--cy-black) !important;border:0 !important;margin:0 !important;padding:0 !important}
.slider-container .slide.active{display:block}
.slider-container .slide img{width:100% !important;height:100% !important;object-fit:cover;display:block;border-radius:0 !important}
.slider-container .prev,.slider-container .next{
  position:absolute;top:50%;transform:translateY(-50%);z-index:3;cursor:pointer;
  width:40px;height:52px;display:flex;align-items:center;justify-content:center;
  background:rgba(11,13,16,.7);border:1px solid rgba(57,255,136,.35);color:var(--cy-green);
  font-size:20px;line-height:1;user-select:none;transition:background .18s}
.slider-container .prev{left:0}
.slider-container .next{right:0}
.slider-container .prev:hover,.slider-container .next:hover{background:var(--cy-green);color:var(--cy-green-ink);border-color:var(--cy-green)}
.pf-cnt{position:absolute;right:10px;top:10px;z-index:3;background:rgba(11,13,16,.8);border:1px solid rgba(232,236,241,.25);
  color:#e8ecf1;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;padding:5px 9px;font-weight:600}
.thumbnails{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:8px}
.thumbnails .thumbnail{width:100% !important;height:auto !important;aspect-ratio:3/4;object-fit:cover;cursor:pointer;
  border:1px solid rgba(232,236,241,.22);opacity:.55;transition:opacity .18s,border-color .18s;display:block;margin:0 !important}
.thumbnails .thumbnail:hover{opacity:.85}
.thumbnails .thumbnail.active{opacity:1;border-color:var(--cy-green)}

/* like + views bar injected by stats.js */
.pf-shot .lk-bar{position:absolute;left:10px;bottom:10px;z-index:3;display:flex;gap:8px;align-items:center}
.pf-shot .lk-bar .lk-btn,.pf-shot .lk-bar .lk-views-wrap{
  background:rgba(11,13,16,.8) !important;border:1px solid rgba(232,236,241,.25) !important;
  border-radius:0 !important;color:#e8ecf1 !important;font-size:12.5px;font-weight:600;
  padding:6px 10px !important;display:inline-flex;align-items:center;gap:6px;line-height:1}
.pf-shot .lk-bar svg{width:15px;height:15px;fill:currentColor}
.pf-shot .lk-bar .lk-btn{cursor:pointer}
.pf-shot .lk-bar .lk-btn.lk-on{color:var(--cy-green) !important;border-color:rgba(57,255,136,.55) !important}

/* --- text side --- */
.pf-eyebrow{font-size:11.5px;letter-spacing:.26em;text-transform:uppercase;font-weight:700;color:var(--cy-violet);margin:0 0 10px;display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center}
.pf-eyebrow .pf-live{color:var(--cy-green);display:inline-flex;align-items:center;gap:7px}
.pf-eyebrow .pf-live i{width:8px;height:8px;background:var(--cy-green);border-radius:50%;box-shadow:0 0 8px var(--cy-green);animation:pfPulse 1.9s infinite}
@keyframes pfPulse{0%,100%{opacity:1}50%{opacity:.25}}
.pf-hero h1{font-size:60px !important;line-height:.94;margin:0 0 6px !important;color:#e8ecf1 !important;text-transform:uppercase;font-weight:700}
.pf-hero h1 em{font-style:normal;color:var(--cy-green);text-shadow:0 0 18px rgba(57,255,136,.4)}
.pf-tag{font-size:16.5px;color:#c9d1dc !important;margin:0 0 18px;font-weight:500}
.pf-facts{list-style:none;margin:0 0 18px;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.pf-facts li{border:1px solid rgba(232,236,241,.22);background:rgba(255,255,255,.04);padding:7px 12px;font-size:13px;color:#c9d1dc !important;line-height:1.2}
.pf-facts li b{color:#fff;font-weight:600}
.pf-lead{font-size:16.5px;line-height:1.62;color:#c9d1dc !important;max-width:60ch;margin:0 0 20px}
.pf-price{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin:0 0 18px;padding:12px 14px;border:1px solid rgba(57,255,136,.3);background:rgba(57,255,136,.07)}
.pf-price b{font-family:var(--cy-display) !important;font-size:32px;line-height:1;color:var(--cy-green);letter-spacing:.02em}
.pf-price span{font-size:13px;color:#c9d1dc;letter-spacing:.06em;text-transform:uppercase}
.pf-price a{color:#e8ecf1 !important;font-size:13px;text-decoration:underline !important;text-decoration-color:rgba(232,236,241,.4) !important;margin-left:auto}
.pf-price a:hover{color:var(--cy-green) !important}
.pf-cta{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 18px}
.pf-b1,.pf-b2{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:14px 22px;font-weight:700;font-size:14px;
  letter-spacing:.06em;text-transform:uppercase;text-decoration:none !important;border:2px solid var(--cy-green);transition:background .18s,color .18s}
.pf-b1{background:var(--cy-green);color:var(--cy-green-ink) !important;box-shadow:0 0 22px rgba(57,255,136,.3)}
.pf-b1:hover{background:transparent;color:var(--cy-green) !important}
.pf-b2{background:transparent;color:#e8ecf1 !important;border-color:rgba(232,236,241,.5)}
.pf-b2:hover{border-color:var(--cy-green);color:var(--cy-green) !important}
.pf-b1 svg,.pf-b2 svg{width:18px;height:18px;fill:currentColor}
.pf-trust{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px 24px;font-size:13.5px}
.pf-trust li{color:#c9d1dc !important;display:flex;align-items:center;gap:8px}
.pf-trust li svg{width:15px;height:15px;fill:var(--cy-green);flex:0 0 auto}

/* =================== 2. BODY GRID =================== */
.pf-body{display:grid;grid-template-columns:1fr 320px;gap:30px;align-items:start;padding-top:34px;padding-bottom:20px}
.pf-main{min-width:0}
.pf-card{background:#fff;border:1px solid var(--cy-line);border-top:3px solid var(--cy-green);padding:24px 26px;margin-bottom:20px}
.pf-card>h2{font-size:28px !important;margin:0 0 4px !important;color:var(--cy-charcoal) !important}
.pf-card>h2+.pf-note{margin-top:0}
.pf-note{font-size:13.5px;color:var(--muted);margin:0 0 16px}
.pf-card p{font-size:16px;line-height:1.72;margin:0 0 14px;color:var(--text)}
.pf-card p:last-child{margin-bottom:0}
.pf-card a{color:var(--cy-violet-ink) !important;text-decoration:underline !important;text-decoration-color:rgba(138,92,255,.4);text-underline-offset:2px}
.pf-card a:hover{color:var(--cy-black) !important}

/* --- rate table --- */
.pf-rates{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;margin:0 0 12px}
.pf-rates th{background:var(--cy-black);color:var(--cy-green) !important;font-family:var(--cy-body) !important;
  font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;padding:11px 14px;text-align:left;border:0}
.pf-rates th:nth-child(n+2){text-align:right}
.pf-rates td{padding:13px 14px;border-bottom:1px solid var(--cy-line);font-size:15.5px;color:var(--text)}
.pf-rates td:nth-child(n+2){text-align:right;font-weight:700;color:var(--cy-charcoal);white-space:nowrap}
.pf-rates tr:last-child td{border-bottom:0}
.pf-rates tbody tr:nth-child(odd) td{background:#f7f9fb}
.pf-rates .pf-r-name{font-weight:600}
.pf-rates .pf-r-what{display:block;font-size:12.5px;font-weight:400;color:var(--muted);margin-top:2px}
.pf-legend{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:13px;color:var(--muted);margin:0 0 4px}
.pf-legend b{color:var(--cy-charcoal)}

/* --- detail grid --- */
.pf-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--cy-line);border:1px solid var(--cy-line);margin:0 0 6px}
.pf-grid.pf-g3{grid-template-columns:repeat(3,1fr)}
.pf-grid div{background:#fff;padding:13px 14px}
.pf-grid dt,.pf-grid .k{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:700;margin:0 0 5px}
.pf-grid dd,.pf-grid .v{margin:0;font-size:15.5px;font-weight:600;color:var(--cy-charcoal);line-height:1.3}

/* --- service chips --- */
.pf-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:9px}
.pf-chips li{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--cy-line);background:#fff;
  padding:9px 14px;font-size:14.5px;color:var(--text);line-height:1.2}
.pf-chips li svg{width:15px;height:15px;fill:var(--cy-green);flex:0 0 auto}
.pf-chips li.pf-no{color:var(--muted);background:#f5f7fa}
.pf-chips li.pf-no svg{fill:#b6bfcb}

/* --- opening hours --- */
.pf-hours{list-style:none;margin:0;padding:0;border:1px solid var(--cy-line)}
.pf-hours li{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:11px 15px;
  border-bottom:1px solid var(--cy-line);font-size:15px;background:#fff}
.pf-hours li:last-child{border-bottom:0}
.pf-hours li b{font-weight:600;color:var(--cy-charcoal)}
.pf-hours li span{font-variant-numeric:tabular-nums;font-weight:600;color:var(--cy-charcoal);white-space:nowrap}
.pf-hours li.pf-off{background:#f5f7fa}
.pf-hours li.pf-off b{color:var(--muted);font-weight:500}
.pf-hours li.pf-off span{color:#9aa5b3;font-weight:500}
.pf-hours li.pf-late span::after{content:" (next day)";font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:500}

/* --- photo grid + lightbox --- */
.pf-photos{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.pf-photos button{padding:0;border:1px solid var(--cy-line);background:#fff;cursor:pointer;display:block;position:relative;overflow:hidden}
.pf-photos img{width:100%;height:100%;aspect-ratio:3/4;object-fit:cover;display:block;transition:transform .3s}
.pf-photos button:hover img{transform:scale(1.05)}
.pf-photos button:hover{border-color:var(--cy-black)}
.pf-photos button::after{content:"";position:absolute;inset:0;background:rgba(57,255,136,0);transition:background .25s}
.pf-photos button:hover::after{background:rgba(57,255,136,.13)}
.pf-lb{position:fixed;inset:0;z-index:9999;background:rgba(6,8,11,.95);display:none;align-items:center;justify-content:center;padding:24px}
.pf-lb.on{display:flex}
.pf-lb img{max-width:min(92vw,720px);max-height:88vh;object-fit:contain;border:2px solid transparent;
  background:linear-gradient(var(--cy-black),var(--cy-black)) padding-box,linear-gradient(135deg,var(--cy-green),var(--cy-violet)) border-box}
.pf-lb button{position:absolute;background:rgba(11,13,16,.85);border:1px solid rgba(57,255,136,.4);color:var(--cy-green);
  width:46px;height:46px;font-size:22px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}
.pf-lb button:hover{background:var(--cy-green);color:var(--cy-green-ink)}
.pf-lb .pf-lb-x{top:18px;right:18px}
.pf-lb .pf-lb-p{left:18px;top:50%;transform:translateY(-50%)}
.pf-lb .pf-lb-n{right:18px;top:50%;transform:translateY(-50%)}
.pf-lb .pf-lb-c{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);color:#c9d1dc;font-size:13px;letter-spacing:.1em}

/* --- where I meet --- */
.pf-where{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--cy-line);border:1px solid var(--cy-line);margin-bottom:16px}
.pf-where>div{background:#fff;padding:16px 18px}
.pf-where h3{font-size:20px !important;margin:0 0 6px !important}
.pf-where p{font-size:14.5px !important;margin:0 !important;color:var(--muted) !important}
.pf-areas{list-style:none;padding:0;margin:12px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.pf-areas li a{display:inline-block;border:1px solid var(--cy-line);background:#fff;padding:8px 13px;font-size:13.5px;
  color:var(--text) !important;text-decoration:none !important;line-height:1.2}
.pf-areas li a:hover{background:var(--cy-black);color:var(--cy-green) !important;border-color:var(--cy-black)}

/* --- faq --- */
.pf-faq{margin:0}
.pf-faq h3{font-family:var(--cy-body) !important;font-size:17.5px !important;font-weight:700;text-transform:none !important;
  color:var(--cy-charcoal) !important;margin:20px 0 6px;padding-left:18px;position:relative;line-height:1.4}
.pf-faq h3:first-child{margin-top:6px}
.pf-faq h3::before{content:"";position:absolute;left:0;top:8px;width:9px;height:9px;background:var(--cy-green)}
.pf-faq p{margin:0 !important;font-size:15.5px !important}

/* =================== 3. SIDEBAR =================== */
.pf-side{position:sticky;top:16px}
.pf-book{background:var(--cy-black);
  background-image:linear-gradient(var(--cy-grid) 1px,transparent 1px),linear-gradient(90deg,var(--cy-grid) 1px,transparent 1px);
  background-size:28px 28px;border:1px solid rgba(57,255,136,.28);padding:20px;color:#c9d1dc}
.pf-book h2{font-size:24px !important;color:#e8ecf1 !important;margin:0 0 3px !important}
.pf-book .pf-bk-sub{font-size:13px;color:#8fa0b5;margin:0 0 16px;letter-spacing:.04em}
.pf-book .pf-b1,.pf-book .pf-b2{width:100%;margin-bottom:9px;padding:13px 14px}
.pf-mini{list-style:none;margin:14px 0 0;padding:14px 0 0;border-top:1px solid rgba(255,255,255,.12)}
.pf-mini li{display:flex;justify-content:space-between;gap:12px;font-size:13.5px;padding:6px 0;color:#c9d1dc}
.pf-mini li b{color:#fff;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}
.pf-book .pf-bk-note{font-size:12.5px;color:#8fa0b5;margin:14px 0 0;line-height:1.55}
.pf-book .pf-bk-note a{color:var(--cy-green) !important;text-decoration:underline !important}
.pf-safe{background:#fff;border:1px solid var(--cy-line);border-left:3px solid var(--cy-violet);padding:15px 17px;margin-top:16px}
.pf-safe h3{font-size:18px !important;margin:0 0 6px !important}
.pf-safe p{font-size:13.5px !important;color:var(--muted) !important;margin:0 0 8px !important;line-height:1.6}
.pf-safe p:last-child{margin:0 !important}

/* =================== 4. MORE GIRLS =================== */
.pf-more{padding:16px 0 34px}
.pf-more h2{display:block;text-align:center;font-size:38px !important}
.pf-more .pf-more-sub{text-align:center;color:var(--muted);margin:0 0 6px}

/* =================== 5. RESPONSIVE =================== */
@media (max-width:1199.98px){
  .pf-hero-in{grid-template-columns:340px 1fr;gap:28px}
  .pf-hero h1{font-size:50px !important}
}
@media (max-width:991.98px){
  .pf-hero-in{grid-template-columns:1fr;gap:24px;padding-top:24px;padding-bottom:30px}
  .slider-container{max-width:400px;margin:0 auto}
  .thumbnails{max-width:400px;margin:8px auto 0}
  .pf-hero h1{font-size:46px !important}
  .pf-body{grid-template-columns:1fr;gap:20px;padding-top:24px}
  .pf-side{position:static}
  .pf-grid{grid-template-columns:repeat(2,1fr)}
  .pf-grid.pf-g3{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:575.98px){
  .pf-hero h1{font-size:38px !important}
  .pf-tag{font-size:15px}
  .pf-lead{font-size:15.5px}
  .pf-card{padding:18px 16px}
  .pf-card>h2{font-size:24px !important}
  .pf-cta{display:grid;grid-template-columns:1fr 1fr;gap:9px}
  .pf-b1,.pf-b2{padding:13px 8px;font-size:13px}
  .pf-photos{grid-template-columns:repeat(3,1fr);gap:8px}
  .pf-where{grid-template-columns:1fr}
  .pf-rates th,.pf-rates td{padding:10px 9px;font-size:14px}
  .pf-rates .pf-r-what{font-size:11.5px}
  .pf-price b{font-size:27px}
  .pf-more h2{font-size:30px !important}
  .thumbnails{grid-template-columns:repeat(4,1fr);gap:6px}
}
