:root{
  --hdm-bg:#060608;
  --hdm-bg-2:#0b0b10;
  --hdm-card:#0d0d13;
  --hdm-line:rgba(255,255,255,.09);
  --hdm-text:#f7f7f8;
  --hdm-muted:#9898a6;
  --hdm-pink:#ff1769;
  --hdm-pink-2:#c8004c;
  --hdm-soft:#ff6fa0;
  --hdm-gold:#d7b45a;
  --hdm-shadow:0 24px 70px rgba(0,0,0,.42);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body.hdm-premium-body{margin:0;background:var(--hdm-bg);color:var(--hdm-text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
body.hdm-premium-body a{text-decoration:none}
.hdm-shell{width:min(1280px,calc(100% - 40px));margin-inline:auto}
.hdm-header{position:fixed;left:0;right:0;top:0;z-index:60;background:linear-gradient(to bottom,rgba(6,6,8,.92),rgba(6,6,8,.28),transparent);transition:.3s ease}
.hdm-header.is-scrolled{background:rgba(6,6,8,.92);backdrop-filter:blur(18px);border-bottom:1px solid var(--hdm-line)}
.hdm-header-inner{height:82px;width:min(1360px,calc(100% - 36px));margin:auto;display:flex;align-items:center;gap:28px}
.hdm-brand{display:inline-flex;align-items:center;gap:12px;color:#fff}
.hdm-brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,var(--hdm-pink),#7c0032);font-weight:900;font-size:20px;box-shadow:0 0 32px rgba(255,23,105,.26)}
.hdm-brand-copy{display:grid;line-height:1.05}
.hdm-brand-copy strong{font-size:18px;letter-spacing:-.02em}
.hdm-brand-copy small{margin-top:5px;color:var(--hdm-muted);font-size:9px;letter-spacing:.16em;text-transform:uppercase}
.hdm-nav{margin-left:auto}
.hdm-nav-list{display:flex;align-items:center;gap:27px;margin:0;padding:0;list-style:none}
.hdm-nav-list a{color:#eee;font-size:13px;font-weight:700}
.hdm-nav-list a:hover{color:var(--hdm-pink)}
.hdm-header-cta{color:#fff;border:1px solid rgba(255,23,105,.6);background:rgba(255,23,105,.08);padding:12px 18px;border-radius:999px;font-size:12px;font-weight:800}
.hdm-menu-toggle{display:none;margin-left:auto;border:0;background:transparent;padding:8px}
.hdm-menu-toggle span{display:block;width:24px;height:2px;background:#fff;margin:5px 0}
.hdm-hero{min-height:860px;position:relative;display:flex;align-items:center;overflow:hidden;padding:140px 0 100px}
.hdm-hero-bg{position:absolute;inset:0;background:
radial-gradient(circle at 70% 35%,rgba(255,23,105,.23),transparent 27%),
radial-gradient(circle at 15% 20%,rgba(130,0,50,.16),transparent 30%),
linear-gradient(135deg,#060608 0%,#09090d 55%,#12050a 100%)}
.hdm-hero-bg:after{content:"";position:absolute;right:-10%;top:8%;width:54vw;height:54vw;border-radius:50%;border:1px solid rgba(255,23,105,.11);box-shadow:0 0 0 70px rgba(255,23,105,.02),0 0 0 150px rgba(255,23,105,.014)}
.hdm-hero-noise{position:absolute;inset:0;opacity:.22;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(to bottom,black,transparent)}
.hdm-hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(370px,.72fr);gap:8vw;align-items:center}
.hdm-kicker{display:flex;align-items:center;gap:10px;color:#c8c8cf;font-size:10px;font-weight:900;letter-spacing:.2em;text-transform:uppercase}
.hdm-kicker span{width:34px;height:1px;background:var(--hdm-pink);box-shadow:0 0 16px var(--hdm-pink)}
.hdm-hero h1{font-size:clamp(64px,8vw,122px);line-height:.86;letter-spacing:-.065em;margin:24px 0 28px;max-width:800px}
.hdm-hero h1 em{font-family:Georgia,serif;font-weight:400;color:var(--hdm-pink);text-shadow:0 0 35px rgba(255,23,105,.17)}
.hdm-hero-copy>p{max-width:640px;color:#b4b4c0;font-size:17px;line-height:1.8}
.hdm-hero-actions{display:flex;gap:12px;margin-top:32px;flex-wrap:wrap}
.hdm-btn{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:0 18px;border-radius:12px;font-size:12px;font-weight:900;letter-spacing:.02em;transition:.22s ease}
.hdm-btn-primary{background:linear-gradient(135deg,var(--hdm-pink),var(--hdm-pink-2));color:#fff;box-shadow:0 16px 38px rgba(255,23,105,.22)}
.hdm-btn-ghost{color:#fff;border:1px solid var(--hdm-line);background:rgba(255,255,255,.025)}
.hdm-btn:hover{transform:translateY(-2px)}
.hdm-trust-row{display:flex;gap:24px;flex-wrap:wrap;margin-top:34px;color:#777786;font-size:11px}
.hdm-hero-panel{background:linear-gradient(180deg,rgba(17,17,24,.86),rgba(10,10,14,.86));border:1px solid rgba(255,255,255,.09);padding:32px;border-radius:28px;box-shadow:var(--hdm-shadow);backdrop-filter:blur(18px);position:relative}
.hdm-hero-panel:before{content:"";position:absolute;inset:-1px;border-radius:28px;padding:1px;background:linear-gradient(135deg,rgba(255,23,105,.5),transparent 34%,rgba(255,255,255,.08));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.hdm-panel-label{font-size:9px;font-weight:900;letter-spacing:.22em;color:var(--hdm-pink)}
.hdm-hero-panel h2{font-size:36px;letter-spacing:-.04em;margin:10px 0 24px}
.hdm-search{display:grid;gap:12px}
.hdm-search label{display:grid;gap:7px}
.hdm-search label span{font-size:9px;letter-spacing:.15em;color:#777786;text-transform:uppercase;font-weight:800}
.hdm-search input,.hdm-search select{width:100%;height:52px;border-radius:12px;border:1px solid var(--hdm-line);background:#09090d;color:#fff;padding:0 14px;outline:none}
.hdm-search input:focus,.hdm-search select:focus{border-color:rgba(255,23,105,.55);box-shadow:0 0 0 3px rgba(255,23,105,.08)}
.hdm-search button{height:52px;border:0;border-radius:12px;background:linear-gradient(135deg,var(--hdm-pink),var(--hdm-pink-2));color:#fff;font-weight:900;cursor:pointer;margin-top:5px}
.hdm-mini-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:20px}
.hdm-mini-stats div{border-top:1px solid var(--hdm-line);padding-top:14px}
.hdm-mini-stats strong,.hdm-mini-stats span{display:block}
.hdm-mini-stats strong{font-size:13px;color:#fff}
.hdm-mini-stats span{font-size:9px;color:#666674;margin-top:4px}
.hdm-scroll-cue{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:10px;color:#575763;font-size:9px;letter-spacing:.18em}
.hdm-scroll-cue span{height:32px;width:1px;background:linear-gradient(var(--hdm-pink),transparent)}
.hdm-section{padding:100px 0}
.hdm-section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:34px}
.hdm-section-head h2{font-size:clamp(38px,5vw,66px);letter-spacing:-.055em;margin:10px 0 0}
.hdm-text-link{color:#aaaab4;font-size:12px;font-weight:800}
.hdm-text-link:hover{color:var(--hdm-pink)}
.hdm-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.hdm-card{background:var(--hdm-card);border:1px solid var(--hdm-line);border-radius:20px;overflow:hidden;box-shadow:0 16px 50px rgba(0,0,0,.22);transition:.25s ease}
.hdm-card:hover{transform:translateY(-5px);border-color:rgba(255,23,105,.25);box-shadow:0 25px 70px rgba(0,0,0,.34),0 0 40px rgba(255,23,105,.05)}
.hdm-card-media{display:block;position:relative;aspect-ratio:3/4;overflow:hidden;background:#101016}
.hdm-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}
.hdm-card:hover .hdm-card-media img{transform:scale(1.035)}
.hdm-card-shade{position:absolute;inset:0;background:linear-gradient(to bottom,transparent 50%,rgba(0,0,0,.6))}
.hdm-fav{position:absolute;right:13px;top:13px;width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:rgba(7,7,10,.5);backdrop-filter:blur(10px);color:#fff;font-size:19px}
.hdm-badges{position:absolute;left:12px;top:12px;display:flex;gap:6px;flex-wrap:wrap}
.hdm-badge{padding:7px 9px;border-radius:999px;font-size:8px;font-weight:950;letter-spacing:.09em;color:#fff;background:#191920;border:1px solid rgba(255,255,255,.1)}
.hdm-badge-vip{color:#080808;background:linear-gradient(135deg,#f3d686,var(--hdm-gold));border:0}
.hdm-badge-verified{background:linear-gradient(135deg,var(--hdm-pink),var(--hdm-pink-2));border:0}
.hdm-badge-new{background:#fff;color:#07070a}
.hdm-card-body{padding:17px}
.hdm-card-title-row{display:flex;justify-content:space-between;align-items:center;gap:12px}
.hdm-card-title-row h3{margin:0;font-size:19px;letter-spacing:-.035em}
.hdm-card-title-row h3 a{color:#fff}
.hdm-dot{width:8px;height:8px;border-radius:50%;background:#47d783;box-shadow:0 0 12px rgba(71,215,131,.4)}
.hdm-verified-line{font-size:10px;color:var(--hdm-soft);font-weight:800;margin-top:5px}
.hdm-card-meta{font-size:11px;color:#747481;margin-top:9px}
.hdm-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:15px}
.hdm-btn-whatsapp{background:linear-gradient(135deg,var(--hdm-pink),#7e002f);color:#fff}
.hdm-btn-profile{color:#fff;border:1px solid rgba(255,255,255,.13);background:#08080b}
.hdm-cities{background:#09090d;border-block:1px solid var(--hdm-line)}
.hdm-city-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.hdm-city{min-height:160px;border:1px solid var(--hdm-line);border-radius:18px;padding:22px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(145deg,#0e0e14,#09090c);color:#fff;transition:.22s}
.hdm-city span{font-size:24px;font-weight:900;letter-spacing:-.04em}
.hdm-city strong{font-size:10px;color:#777784}
.hdm-city:hover{transform:translateY(-4px);border-color:rgba(255,23,105,.3);background:linear-gradient(145deg,#130b10,#09090c)}
.hdm-manifesto{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:start}
.hdm-manifesto h2{font-size:clamp(48px,7vw,92px);line-height:.95;letter-spacing:-.065em;margin:18px 0 0}
.hdm-manifesto-copy>p{font-size:18px;line-height:1.8;color:#9a9aa6;max-width:560px}
.hdm-manifesto-points{display:grid;gap:0;margin-top:30px;border-top:1px solid var(--hdm-line)}
.hdm-manifesto-points span{padding:16px 0;border-bottom:1px solid var(--hdm-line);font-size:12px;color:#c5c5cc}
.hdm-footer{position:relative;border-top:1px solid var(--hdm-line);padding:70px 0 22px;background:#050507;overflow:hidden}
.hdm-footer-glow{position:absolute;width:420px;height:420px;border-radius:50%;background:rgba(255,23,105,.08);filter:blur(110px);right:-100px;top:-200px}
.hdm-footer-grid{position:relative;display:grid;grid-template-columns:2fr 1fr 1fr;gap:60px}
.hdm-brand-footer{margin-bottom:20px}
.hdm-footer-copy{max-width:430px;color:#777784;line-height:1.7;font-size:13px}
.hdm-footer h4{font-size:11px;letter-spacing:.15em;color:#fff;text-transform:uppercase;margin:0 0 18px}
.hdm-footer-grid>div:not(:first-child){display:flex;flex-direction:column}
.hdm-footer-grid>div:not(:first-child) a{color:#777784;font-size:12px;padding:7px 0}
.hdm-footer-grid a:hover{color:var(--hdm-pink)}
.hdm-footer-bottom{position:relative;border-top:1px solid var(--hdm-line);margin-top:55px;padding-top:20px;display:flex;justify-content:space-between;color:#555560;font-size:10px}
.hdm-inner-hero{padding:170px 0 60px;background:radial-gradient(circle at 80% 20%,rgba(255,23,105,.14),transparent 26%),#07070a;border-bottom:1px solid var(--hdm-line)}
.hdm-inner-hero h1{font-size:clamp(54px,7vw,90px);letter-spacing:-.06em;margin:16px 0 8px}
.hdm-inner-hero p{color:#8e8e99}
.hdm-pagination{margin-top:40px;color:#fff}
.hdm-empty{grid-column:1/-1;border:1px dashed var(--hdm-line);padding:40px;border-radius:18px;color:#767681;text-align:center}
.hdm-profile-hero{padding:135px 0 70px;background:radial-gradient(circle at 80% 25%,rgba(255,23,105,.11),transparent 28%),#07070a}
.hdm-profile-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(360px,.65fr);gap:50px;align-items:stretch}
.hdm-profile-photo{position:relative;min-height:700px;border-radius:28px;overflow:hidden;background:#111116;border:1px solid var(--hdm-line)}
.hdm-profile-photo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.hdm-profile-badges{z-index:2;left:18px;top:18px}
.hdm-profile-info{display:flex;flex-direction:column;justify-content:center;padding:25px 0}
.hdm-profile-info h1{font-size:clamp(48px,6vw,78px);line-height:.95;letter-spacing:-.06em;margin:20px 0 16px}
.hdm-profile-location{color:#a2a2ad;font-size:14px}
.hdm-status{color:#64de96;font-size:11px;font-weight:800;margin-top:14px}
.hdm-profile-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:28px 0}
.hdm-profile-facts{border-top:1px solid var(--hdm-line)}
.hdm-profile-facts div{display:flex;justify-content:space-between;padding:16px 0;border-bottom:1px solid var(--hdm-line)}
.hdm-profile-facts span{color:#676772;font-size:11px}
.hdm-profile-facts strong{font-size:12px}
.hdm-content-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:20px}
.hdm-content-card,.hdm-side-card{border:1px solid var(--hdm-line);background:#0b0b10;border-radius:22px;padding:32px}
.hdm-content-card h2{font-size:38px;letter-spacing:-.04em;margin:12px 0 24px}
.hdm-prose{color:#aaaab5;line-height:1.85}
.hdm-side-card h3{font-size:28px;letter-spacing:-.04em}
.hdm-side-card p{color:#777783;line-height:1.7}
@media(max-width:1024px){
  .hdm-grid{grid-template-columns:repeat(3,1fr)}
  .hdm-city-grid{grid-template-columns:repeat(3,1fr)}
  .hdm-hero-grid,.hdm-profile-grid{grid-template-columns:1fr}
  .hdm-hero-panel{max-width:620px}
  .hdm-profile-photo{min-height:640px}
}
@media(max-width:820px){
  .hdm-header-inner{height:72px}
  .hdm-nav{position:absolute;left:18px;right:18px;top:76px;background:#0b0b10;border:1px solid var(--hdm-line);border-radius:18px;padding:18px;display:none}
  .hdm-nav.is-open{display:block}
  .hdm-nav-list{display:grid;gap:8px}
  .hdm-nav-list a{display:block;padding:9px}
  .hdm-menu-toggle{display:block}
  .hdm-header-cta{display:none}
  .hdm-hero{min-height:auto;padding:125px 0 80px}
  .hdm-hero-grid{gap:42px}
  .hdm-grid{grid-template-columns:repeat(2,1fr)}
  .hdm-city-grid{grid-template-columns:repeat(2,1fr)}
  .hdm-manifesto,.hdm-content-grid,.hdm-footer-grid{grid-template-columns:1fr}
  .hdm-footer-grid{gap:35px}
  .hdm-scroll-cue{display:none}
}
@media(max-width:560px){
  .hdm-shell{width:min(100% - 24px,1280px)}
  .hdm-brand-copy small{display:none}
  .hdm-hero h1{font-size:57px}
  .hdm-hero-copy>p{font-size:14px}
  .hdm-hero-panel{padding:22px;border-radius:22px}
  .hdm-section{padding:72px 0}
  .hdm-section-head{align-items:start;flex-direction:column}
  .hdm-grid{gap:10px}
  .hdm-card{border-radius:15px}
  .hdm-card-body{padding:12px}
  .hdm-card-title-row h3{font-size:16px}
  .hdm-card-actions{grid-template-columns:1fr}
  .hdm-btn{min-height:43px}
  .hdm-city-grid{grid-template-columns:1fr 1fr;gap:9px}
  .hdm-city{min-height:120px;padding:16px}
  .hdm-city span{font-size:20px}
  .hdm-profile-photo{min-height:520px;border-radius:20px}
  .hdm-profile-actions{grid-template-columns:1fr}
  .hdm-footer-bottom{gap:12px;flex-direction:column}
}


/* =========================================================
   V2 PROFILE CARDS — FULL PHOTO / INFO OVERLAY
   Inspired by the requested reference layout
========================================================= */
.hdm-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:28px;
}
.hdm-card.hdm-card-photo{
  position:relative;
  background:#0a0a0d;
  border:0;
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 18px 55px rgba(0,0,0,.24);
}
.hdm-card.hdm-card-photo:hover{
  transform:translateY(-5px);
  box-shadow:0 26px 72px rgba(0,0,0,.36),0 0 34px rgba(255,23,105,.08);
}
.hdm-card-photo .hdm-card-media{
  position:relative;
  display:block;
  aspect-ratio:0.72;
  min-height:540px;
  overflow:hidden;
  border-radius:18px;
}
.hdm-card-photo .hdm-card-media img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  transform:scale(1.001);
}
.hdm-card-photo:hover .hdm-card-media img{
  transform:scale(1.035);
}
.hdm-card-photo .hdm-card-shade{
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(to bottom,rgba(0,0,0,.02) 38%,rgba(0,0,0,.18) 56%,rgba(0,0,0,.88) 100%),
    linear-gradient(to right,rgba(0,0,0,.08),transparent 35%);
}
.hdm-verified-ribbon,
.hdm-video-ribbon{
  position:absolute;
  z-index:4;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:0 16px;
  font-size:14px;
  font-weight:950;
  letter-spacing:-.02em;
  color:#fff;
  backdrop-filter:blur(8px);
  box-shadow:0 10px 25px rgba(0,0,0,.16);
}
.hdm-verified-ribbon{
  top:28px;
  right:-1px;
  background:linear-gradient(135deg,#ff1769,#c8004c);
  border-radius:10px 0 0 10px;
}
.hdm-video-ribbon{
  left:-1px;
  top:52%;
  background:linear-gradient(135deg,rgba(255,23,105,.94),rgba(73,15,43,.94));
  border-radius:0 8px 8px 0;
}
.hdm-vip-chip{
  position:absolute;
  z-index:4;
  left:16px;
  top:16px;
  min-width:54px;
  height:30px;
  padding:0 12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:linear-gradient(135deg,#f5db90,#d7b45a);
  color:#090909;
  font-size:10px;
  font-weight:950;
  letter-spacing:.12em;
}
.hdm-card-overlay{
  position:absolute;
  z-index:3;
  left:0;
  right:0;
  bottom:0;
  padding:28px 28px 28px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  color:#fff;
  text-shadow:0 2px 14px rgba(0,0,0,.55);
}
.hdm-card-name{
  display:block;
  font-size:clamp(26px,2vw,36px);
  line-height:1.05;
  font-weight:900;
  letter-spacing:-.045em;
  margin-bottom:10px;
}
.hdm-card-specs{
  display:block;
  font-size:16px;
  line-height:1.4;
  color:#f1e5e9;
  margin-bottom:10px;
}
.hdm-card-excerpt{
  display:block;
  max-width:94%;
  font-size:15px;
  line-height:1.45;
  color:#fff;
  margin-bottom:8px;
}
.hdm-card-city{
  display:inline-block;
  font-size:13px;
  line-height:1.3;
  color:#fff;
  text-decoration:underline;
  text-underline-offset:3px;
  font-weight:700;
}
@media(max-width:1024px){
  .hdm-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
  .hdm-card-photo .hdm-card-media{min-height:520px}
}
@media(max-width:620px){
  .hdm-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .hdm-card.hdm-card-photo,.hdm-card-photo .hdm-card-media{border-radius:13px}
  .hdm-card-photo .hdm-card-media{min-height:390px;aspect-ratio:.68}
  .hdm-card-overlay{padding:16px 14px}
  .hdm-card-name{font-size:18px;margin-bottom:6px}
  .hdm-card-specs{font-size:11px;margin-bottom:6px}
  .hdm-card-excerpt{font-size:11px;line-height:1.35;margin-bottom:6px}
  .hdm-card-city{font-size:10px}
  .hdm-verified-ribbon,.hdm-video-ribbon{min-height:32px;padding:0 10px;font-size:10px}
  .hdm-verified-ribbon{top:15px}
  .hdm-video-ribbon{top:48%}
  .hdm-vip-chip{top:10px;left:10px;height:25px;font-size:8px}
}


/* V3 — reference-accurate status stack */
.hdm-new-ribbon{
  position:absolute;
  z-index:5;
  top:82px;
  right:-1px;
  padding:9px 13px;
  border-radius:7px 0 0 7px;
  background:linear-gradient(135deg,#6d9d2e,#456f19);
  color:#fff;
  font-size:11px;
  font-weight:950;
  letter-spacing:.04em;
  box-shadow:0 8px 22px rgba(0,0,0,.2);
}
.hdm-vip-crown{
  position:absolute;
  z-index:5;
  right:18px;
  top:145px;
  width:68px;
  height:68px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:linear-gradient(145deg,#f7d54e,#d99c18);
  border:1px solid rgba(255,255,255,.5);
  box-shadow:0 10px 25px rgba(0,0,0,.28);
  color:#fff;
}
.hdm-vip-crown span{
  font-family:Georgia,serif;
  font-size:35px;
  line-height:1;
  transform:translateY(-1px);
}
@media(max-width:620px){
  .hdm-new-ribbon{top:55px;padding:6px 9px;font-size:8px}
  .hdm-vip-crown{right:10px;top:96px;width:48px;height:48px}
  .hdm-vip-crown span{font-size:25px}
}


/* ========================= V4 ULTRA ========================= */
.hdm-section-dark{
  background:radial-gradient(circle at 84% 12%,rgba(255,23,105,.07),transparent 25%),#08080c;
  border-block:1px solid var(--hdm-line);
}
.hdm-section-note{color:#696974;font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:800}
.hdm-city small{font-size:8px;color:var(--hdm-pink);letter-spacing:.18em;font-weight:900}
.hdm-profile-strip{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 0}
.hdm-profile-strip span{padding:9px 12px;border-radius:999px;background:rgba(255,255,255,.04);border:1px solid var(--hdm-line);color:#d9d9df;font-size:11px;font-weight:800}
.hdm-btn-call{background:linear-gradient(135deg,#1b1b21,#0b0b0e);color:#fff;border:1px solid rgba(255,255,255,.13)}
.hdm-full-btn{width:100%;margin-top:18px}
.hdm-archive-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px;color:#73737e;font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:900}
@media(max-width:620px){.hdm-section-note{display:none}.hdm-profile-strip{margin-top:16px}}


/* =========================================================
   V4.1 HOME FIRST — HOMEPAGE ONLY
========================================================= */
.hdm-home-first{
  background:#060608;
  overflow:hidden;
}
.hdm-home-hero{
  min-height:880px;
  position:relative;
  display:flex;
  align-items:center;
  padding:150px 0 110px;
  overflow:hidden;
}
.hdm-home-hero-bg{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 73% 30%,rgba(255,23,105,.22),transparent 27%),
    radial-gradient(circle at 18% 76%,rgba(101,0,42,.18),transparent 30%),
    linear-gradient(135deg,#050507 0%,#09090d 55%,#15060c 100%);
}
.hdm-home-hero-bg:before{
  content:"";
  position:absolute;
  width:560px;
  height:560px;
  right:3%;
  top:9%;
  border-radius:50%;
  border:1px solid rgba(255,23,105,.16);
  box-shadow:
    0 0 0 70px rgba(255,23,105,.025),
    0 0 0 145px rgba(255,23,105,.012);
}
.hdm-home-hero-grid{
  position:absolute;
  inset:0;
  opacity:.18;
  background-image:
    linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:70px 70px;
  mask-image:linear-gradient(to bottom,black,transparent 88%);
}
.hdm-home-hero-inner{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(380px,.7fr);
  align-items:center;
  gap:8vw;
}
.hdm-home-hero-copy h1{
  max-width:840px;
  margin:24px 0 28px;
  font-size:clamp(68px,8vw,120px);
  line-height:.88;
  letter-spacing:-.068em;
}
.hdm-home-hero-copy h1 em{
  font-family:Georgia,serif;
  font-weight:400;
  color:var(--hdm-pink);
  text-shadow:0 0 38px rgba(255,23,105,.17);
}
.hdm-home-hero-copy>p{
  max-width:650px;
  color:#aaaab5;
  font-size:17px;
  line-height:1.8;
}
.hdm-home-hero-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:32px;
}
.hdm-home-trust{
  display:flex;
  flex-wrap:wrap;
  gap:22px;
  margin-top:34px;
  color:#6f6f7a;
  font-size:11px;
}
.hdm-home-search-card{
  position:relative;
  padding:34px;
  border-radius:28px;
  border:1px solid rgba(255,255,255,.10);
  background:linear-gradient(180deg,rgba(17,17,24,.90),rgba(10,10,14,.88));
  backdrop-filter:blur(18px);
  box-shadow:0 30px 80px rgba(0,0,0,.42);
}
.hdm-home-search-card:before{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:28px;
  padding:1px;
  background:linear-gradient(135deg,rgba(255,23,105,.55),transparent 34%,rgba(255,255,255,.08));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  pointer-events:none;
}
.hdm-home-search-card h2{
  margin:10px 0 8px;
  font-size:38px;
  letter-spacing:-.045em;
}
.hdm-home-search-card>p{
  margin:0 0 22px;
  color:#777784;
  font-size:12px;
}
.hdm-home-search{
  display:grid;
  gap:12px;
}
.hdm-home-search input{
  width:100%;
  height:54px;
  padding:0 15px;
  border-radius:12px;
  border:1px solid var(--hdm-line);
  background:#08080c;
  color:#fff;
  outline:none;
}
.hdm-home-search input:focus{
  border-color:rgba(255,23,105,.55);
  box-shadow:0 0 0 3px rgba(255,23,105,.08);
}
.hdm-home-search button{
  height:52px;
  border:0;
  border-radius:12px;
  background:linear-gradient(135deg,var(--hdm-pink),var(--hdm-pink-2));
  color:#fff;
  font-weight:900;
  cursor:pointer;
}
.hdm-home-city-pills{
  display:flex;
  gap:7px;
  flex-wrap:wrap;
}
.hdm-home-city-pills a{
  padding:8px 11px;
  border-radius:999px;
  border:1px solid var(--hdm-line);
  color:#aaaab4;
  font-size:10px;
  font-weight:800;
}
.hdm-home-city-pills a:hover{
  border-color:rgba(255,23,105,.35);
  color:#fff;
}
.hdm-home-mini{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
  margin-top:22px;
}
.hdm-home-mini div{
  padding-top:14px;
  border-top:1px solid var(--hdm-line);
}
.hdm-home-mini strong,
.hdm-home-mini span{
  display:block;
}
.hdm-home-mini strong{
  font-size:13px;
}
.hdm-home-mini span{
  margin-top:4px;
  color:#63636f;
  font-size:9px;
}
.hdm-home-signature{
  border-block:1px solid var(--hdm-line);
  background:#09090d;
}
.hdm-home-signature-inner{
  min-height:66px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  color:#5f5f69;
  font-size:9px;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.hdm-home-signature-inner strong{
  color:var(--hdm-pink);
}
.hdm-home-section{
  position:relative;
}
.hdm-home-cities{
  background:
    radial-gradient(circle at 12% 30%,rgba(255,23,105,.05),transparent 28%),
    #07070a;
}
.hdm-home-city-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px;
}
.hdm-home-city-card{
  min-height:190px;
  padding:22px;
  border-radius:20px;
  border:1px solid var(--hdm-line);
  background:linear-gradient(145deg,#0f0f15,#09090d);
  color:#fff;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  transition:.22s ease;
}
.hdm-home-city-card:hover{
  transform:translateY(-4px);
  border-color:rgba(255,23,105,.30);
  background:linear-gradient(145deg,#140b10,#09090d);
}
.hdm-home-city-card small{
  color:var(--hdm-pink);
  font-size:8px;
  font-weight:900;
  letter-spacing:.18em;
}
.hdm-home-city-card span{
  margin-top:auto;
  font-size:26px;
  font-weight:900;
  letter-spacing:-.04em;
}
.hdm-home-city-card p{
  margin:5px 0 16px;
  color:#74747f;
  font-size:11px;
}
.hdm-home-city-card strong{
  color:#a5a5ae;
  font-size:10px;
}
.hdm-home-manifesto{
  background:#060608;
}
.hdm-home-manifesto-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8vw;
  align-items:start;
}
.hdm-home-manifesto h2{
  margin:18px 0 0;
  font-size:clamp(54px,7vw,94px);
  line-height:.94;
  letter-spacing:-.065em;
}
.hdm-home-manifesto h2 em{
  color:var(--hdm-pink);
  font-family:Georgia,serif;
  font-weight:400;
}
.hdm-home-manifesto-copy>p{
  max-width:560px;
  color:#92929d;
  font-size:17px;
  line-height:1.8;
}
.hdm-home-manifesto-list{
  display:grid;
  margin-top:30px;
  border-top:1px solid var(--hdm-line);
}
.hdm-home-manifesto-list span{
  display:flex;
  align-items:center;
  gap:18px;
  padding:16px 0;
  border-bottom:1px solid var(--hdm-line);
  color:#c0c0c8;
  font-size:12px;
}
.hdm-home-manifesto-list b{
  color:var(--hdm-pink);
  font-size:10px;
  letter-spacing:.12em;
}
@media(max-width:1024px){
  .hdm-home-hero-inner{
    grid-template-columns:1fr;
    gap:45px;
  }
  .hdm-home-search-card{
    max-width:650px;
  }
  .hdm-home-city-grid{
    grid-template-columns:repeat(3,1fr);
  }
}
@media(max-width:760px){
  .hdm-home-hero{
    min-height:auto;
    padding:125px 0 80px;
  }
  .hdm-home-hero-copy h1{
    font-size:58px;
  }
  .hdm-home-signature-inner{
    justify-content:center;
    text-align:center;
  }
  .hdm-home-signature-inner span{
    display:none;
  }
  .hdm-home-manifesto-grid{
    grid-template-columns:1fr;
  }
}
@media(max-width:560px){
  .hdm-home-search-card{
    padding:22px;
    border-radius:22px;
  }
  .hdm-home-search-card h2{
    font-size:31px;
  }
  .hdm-home-mini{
    gap:5px;
  }
  .hdm-home-city-grid{
    grid-template-columns:repeat(2,1fr);
    gap:9px;
  }
  .hdm-home-city-card{
    min-height:145px;
    padding:16px;
  }
  .hdm-home-city-card span{
    font-size:21px;
  }
}


/* ==========================================================
   V4.2 — REAL BRIKK / ROUTIZ TEMPLATE OVERRIDE
   Exact child-template classes: hdm-rz-*
========================================================== */

/* Keep Brikk's grid system intact. Only transform each card. */
.hdm-rz-card{
    position:relative !important;
    min-height:640px !important;
    border-radius:20px !important;
    overflow:hidden !important;
    background:#0a0a0d !important;
    border:1px solid rgba(255,255,255,.07) !important;
    box-shadow:0 20px 60px rgba(0,0,0,.32) !important;
    isolation:isolate !important;
    transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease !important;
}

.hdm-rz-card:hover{
    transform:translateY(-5px) !important;
    border-color:rgba(255,23,105,.24) !important;
    box-shadow:0 30px 80px rgba(0,0,0,.44),0 0 38px rgba(255,23,105,.06) !important;
}

/* The photograph becomes the entire card background */
.hdm-rz-card .hdm-rz-cover,
.hdm-rz-card .hdm-rz-cover-inner,
.hdm-rz-card .hdm-rz-image{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    margin:0 !important;
    padding:0 !important;
}

.hdm-rz-card .hdm-rz-main-image,
.hdm-rz-card .hdm-rz-gallery,
.hdm-rz-card .rz-listing-gallery-item{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    min-height:100% !important;
    background-size:cover !important;
    background-position:center center !important;
    background-repeat:no-repeat !important;
}

.hdm-rz-card .hdm-rz-main-image{
    display:block !important;
    transition:transform .55s ease !important;
}

.hdm-rz-card:hover .hdm-rz-main-image{
    transform:scale(1.035) !important;
}

/* Strong bottom fade like the chosen reference */
.hdm-rz-card:after{
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    z-index:2 !important;
    pointer-events:none !important;
    background:
        linear-gradient(
            to bottom,
            rgba(0,0,0,.01) 31%,
            rgba(0,0,0,.08) 48%,
            rgba(0,0,0,.42) 67%,
            rgba(0,0,0,.94) 100%
        ) !important;
}

/* Native Brikk/Routiz badges remain functional, but float over image */
.hdm-rz-card .hdm-rz-top-layer{
    position:absolute !important;
    inset:0 !important;
    z-index:8 !important;
    pointer-events:none !important;
}

.hdm-rz-card .hdm-rz-top-layer a,
.hdm-rz-card .hdm-rz-top-layer button{
    pointer-events:auto !important;
}

/* Brikk priority/VIP badge: reposition, preserve native logic */
.hdm-rz-card .rz-listing-priority,
.hdm-rz-card [class*="priority"]{
    position:absolute !important;
    top:18px !important;
    left:18px !important;
    z-index:9 !important;
}

/* Brikk badges container */
.hdm-rz-card .rz-listing-badges,
.hdm-rz-card [class*="badges"]{
    position:absolute !important;
    top:18px !important;
    right:18px !important;
    left:auto !important;
    z-index:9 !important;
}

/* Improve most native badge chips without assuming exact internal names */
.hdm-rz-card .rz-listing-badges > *,
.hdm-rz-card [class*="badges"] > *{
    border-radius:8px !important;
    font-weight:900 !important;
    letter-spacing:.01em !important;
}

/* Native details become a single overlay inside the image */
.hdm-rz-card .hdm-rz-content{
    position:absolute !important;
    left:0 !important;
    right:0 !important;
    bottom:0 !important;
    z-index:6 !important;
    width:100% !important;
    min-height:0 !important;
    padding:0 !important;
    margin:0 !important;
    background:transparent !important;
    border:0 !important;
    color:#fff !important;
}

.hdm-rz-card .hdm-rz-content-inner{
    width:100% !important;
    padding:30px 28px 27px !important;
    color:#fff !important;
    text-shadow:0 2px 15px rgba(0,0,0,.58) !important;
}

/* Heading / name */
.hdm-rz-card .hdm-rz-content h1,
.hdm-rz-card .hdm-rz-content h2,
.hdm-rz-card .hdm-rz-content h3,
.hdm-rz-card .hdm-rz-content h4,
.hdm-rz-card .hdm-rz-content .rz-listing-title,
.hdm-rz-card .hdm-rz-content [class*="title"]{
    color:#fff !important;
    font-size:30px !important;
    line-height:1.06 !important;
    font-weight:900 !important;
    letter-spacing:-.045em !important;
    margin:0 0 10px !important;
}

/* Native detail rows: price, nationality, height, description etc. */
.hdm-rz-card .hdm-rz-details,
.hdm-rz-card .hdm-rz-details *{
    color:rgba(255,255,255,.93) !important;
}

.hdm-rz-card .hdm-rz-details{
    font-size:15px !important;
    line-height:1.45 !important;
}

.hdm-rz-card .hdm-rz-details p{
    margin:7px 0 !important;
}

/* Limit long description blocks */
.hdm-rz-card .hdm-rz-details p,
.hdm-rz-card .hdm-rz-details [class*="description"],
.hdm-rz-card .hdm-rz-details [class*="excerpt"]{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    overflow:hidden !important;
}

/* Bottom metadata: keep compact and integrated */
.hdm-rz-card .hdm-rz-bottom{
    margin-top:8px !important;
    padding-top:8px !important;
    border-top:0 !important;
}

.hdm-rz-card .hdm-rz-bottom,
.hdm-rz-card .hdm-rz-bottom *{
    color:#fff !important;
    font-size:12px !important;
    line-height:1.4 !important;
}

/* Remove separator lines / boxes that belonged to the old horizontal card */
.hdm-rz-card .hdm-rz-content hr,
.hdm-rz-card .hdm-rz-bottom:before,
.hdm-rz-card .hdm-rz-bottom:after{
    display:none !important;
}

/* Slider arrows: elegant glass circles */
.hdm-rz-card .rz-slider-nav{
    z-index:10 !important;
    width:38px !important;
    height:38px !important;
    border-radius:50% !important;
    background:rgba(6,6,8,.48) !important;
    backdrop-filter:blur(10px) !important;
    opacity:0 !important;
    transition:opacity .2s ease !important;
}

.hdm-rz-card:hover .rz-slider-nav{
    opacity:1 !important;
}

/* Tablet */
@media(max-width:1024px){
    .hdm-rz-card{
        min-height:560px !important;
    }
    .hdm-rz-card .hdm-rz-content-inner{
        padding:24px 22px 22px !important;
    }
    .hdm-rz-card .hdm-rz-content h1,
    .hdm-rz-card .hdm-rz-content h2,
    .hdm-rz-card .hdm-rz-content h3,
    .hdm-rz-card .hdm-rz-content h4,
    .hdm-rz-card .hdm-rz-content .rz-listing-title,
    .hdm-rz-card .hdm-rz-content [class*="title"]{
        font-size:25px !important;
    }
}

/* Mobile: do not touch the parent grid; only make each existing card compact */
@media(max-width:620px){
    .hdm-rz-card{
        min-height:410px !important;
        border-radius:14px !important;
    }

    .hdm-rz-card .hdm-rz-content-inner{
        padding:16px 14px 15px !important;
    }

    .hdm-rz-card .hdm-rz-content h1,
    .hdm-rz-card .hdm-rz-content h2,
    .hdm-rz-card .hdm-rz-content h3,
    .hdm-rz-card .hdm-rz-content h4,
    .hdm-rz-card .hdm-rz-content .rz-listing-title,
    .hdm-rz-card .hdm-rz-content [class*="title"]{
        font-size:19px !important;
        margin-bottom:6px !important;
    }

    .hdm-rz-card .hdm-rz-details{
        font-size:11px !important;
        line-height:1.35 !important;
    }

    .hdm-rz-card .hdm-rz-bottom,
    .hdm-rz-card .hdm-rz-bottom *{
        font-size:10px !important;
    }

    .hdm-rz-card .rz-listing-priority,
    .hdm-rz-card [class*="priority"]{
        top:10px !important;
        left:10px !important;
    }

    .hdm-rz-card .rz-listing-badges,
    .hdm-rz-card [class*="badges"]{
        top:10px !important;
        right:10px !important;
    }

    .hdm-rz-card .rz-slider-nav{
        display:none !important;
    }
}


/* ==========================================================
   V4.2.1 SAFE PATCH — REMOVE PHONE FROM LISTING CARDS ONLY
   No grid, image, PHP template or card dimension changes.
========================================================== */

/* Common Routiz/Brikk phone/contact elements inside the bottom metadata. */
.hdm-rz-card .hdm-rz-bottom [class*="phone"],
.hdm-rz-card .hdm-rz-bottom [class*="call"],
.hdm-rz-card .hdm-rz-bottom [class*="contact"],
.hdm-rz-card .hdm-rz-bottom a[href^="tel:"],
.hdm-rz-card .hdm-rz-bottom a[href*="phone"],
.hdm-rz-card .hdm-rz-bottom .fa-phone,
.hdm-rz-card .hdm-rz-bottom .fas.fa-phone,
.hdm-rz-card .hdm-rz-bottom .far.fa-phone,
.hdm-rz-card .hdm-rz-bottom .rz-icon-phone{
    display:none !important;
}

/* Prevent the remaining location metadata from being squeezed. */
.hdm-rz-card .hdm-rz-bottom{
    width:100% !important;
}

.hdm-rz-card .hdm-rz-bottom > *{
    max-width:100% !important;
}


/* ==========================================================
   V4.2.4 CLEAN SINGLE — NO DUPLICATE PROFILE BLOCKS
========================================================== */
.hdm-v424-profile{background:#f7f7f7;color:#333}
.hdm-v424-layout{display:grid;grid-template-columns:1fr 1.05fr;min-height:100vh;padding-top:82px}
.hdm-v424-left{min-width:0;padding:34px 34px 70px;background:#fff}
.hdm-v424-right{position:relative;min-width:0;background:#09090c}
.hdm-v424-media{position:sticky;top:0;height:100vh;overflow:hidden;background:#111116}
.hdm-v424-media>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hdm-v424-shade{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.02) 56%,rgba(0,0,0,.60) 100%);pointer-events:none}
.hdm-v424-fullscreen{position:absolute;left:22px;top:22px;z-index:5;width:45px;height:45px;border:0;border-radius:50%;background:rgba(255,255,255,.18);color:#fff;font-size:20px;backdrop-filter:blur(8px);cursor:pointer}
.hdm-v424-media-label{position:absolute;left:50%;bottom:86px;z-index:5;transform:translateX(-50%);display:flex;align-items:center;gap:5px;padding:8px 14px;border-radius:999px;background:rgba(250,248,226,.92);color:#333;font-size:12px;white-space:nowrap}
.hdm-v424-actions{position:absolute;left:50%;bottom:24px;z-index:6;transform:translateX(-50%);display:flex;overflow:hidden;border-radius:28px;box-shadow:0 10px 28px rgba(0,0,0,.22)}
.hdm-v424-actions a{min-height:56px;padding:0 18px;display:flex;align-items:center;gap:8px;color:#fff;font-size:14px;font-weight:800}
.hdm-v424-actions .save{background:#2f83b5}
.hdm-v424-actions .whatsapp{background:#198b68}
.hdm-v424-actions .phone{background:#d44663}
.hdm-v424-actions .video{background:#8f2c8d}

.hdm-v424-block{padding:0 0 34px;margin:0 0 34px;border-bottom:1px solid #ececec}
.hdm-v424-chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.hdm-v424-chips span{padding:7px 10px;border-radius:999px;font-size:11px;font-weight:850}
.hdm-v424-chips .verified{background:#e9f7fb;color:#328cab}
.hdm-v424-chips .escort{background:#ffeef2;color:#d34c6a}
.hdm-v424-chips .vip{background:#fff7d8;color:#9d7910}
.hdm-v424-identity h1{margin:0 0 10px;font-size:clamp(54px,6vw,88px);line-height:.92;letter-spacing:-.06em;color:#333}
.hdm-v424-summary{display:flex;gap:14px;flex-wrap:wrap;color:#777;font-size:13px;margin-bottom:18px}
.hdm-v424-intro{margin:0;color:#3e3e3e;font-size:15px;line-height:1.7;max-width:820px}
.hdm-v424-block h2{margin:0 0 20px;font-size:34px;line-height:1.05;letter-spacing:-.035em;color:#333}
.hdm-v424-block-head{display:flex;align-items:center;justify-content:space-between;gap:15px}
.hdm-v424-block-head>span{color:#5d5d65;font-size:11px;font-weight:800}

.hdm-v424-gallery{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.hdm-v424-thumb{position:relative;aspect-ratio:1/1;border:0;padding:0;border-radius:14px;overflow:hidden;background:#eee;cursor:pointer}
.hdm-v424-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.hdm-v424-thumb>span{position:absolute;right:12px;bottom:12px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:rgba(0,0,0,.38);color:#fff;backdrop-filter:blur(7px)}

.hdm-v424-details{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.hdm-v424-details div{min-height:96px;padding:17px 18px;border:1px solid #e4e9ee;border-radius:13px;background:#fbfdff;display:flex;flex-direction:column;justify-content:center}
.hdm-v424-details div.wide{grid-column:span 2}
.hdm-v424-details span{font-size:11px;color:#5a7489;margin-bottom:4px}
.hdm-v424-details strong{font-size:14px;line-height:1.35;color:#223b50}
.hdm-v424-reviews p{color:#666;font-size:14px}

.hdm-v424-lightbox{position:fixed;inset:0;z-index:99999;display:none;align-items:center;justify-content:center;padding:30px;background:rgba(0,0,0,.94)}
.hdm-v424-lightbox.is-open{display:flex}
.hdm-v424-lightbox img{max-width:94vw;max-height:92vh;object-fit:contain}
.hdm-v424-close{position:absolute;right:24px;top:20px;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.22);background:rgba(0,0,0,.4);color:#fff;font-size:31px;cursor:pointer}

@media(max-width:1200px){.hdm-v424-details{grid-template-columns:repeat(3,1fr)}}
@media(max-width:980px){
  .hdm-v424-layout{grid-template-columns:1fr}
  .hdm-v424-right{order:-1}
  .hdm-v424-media{position:relative;height:72vh;min-height:560px}
  .hdm-v424-left{padding:28px 22px 60px}
  .hdm-v424-details{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:620px){
  .hdm-v424-layout{padding-top:70px}
  .hdm-v424-media{height:64vh;min-height:500px}
  .hdm-v424-left{padding:24px 14px 48px}
  .hdm-v424-identity h1{font-size:48px}
  .hdm-v424-block h2{font-size:28px}
  .hdm-v424-details{grid-template-columns:repeat(2,1fr)}
  .hdm-v424-details div.wide{grid-column:span 2}
  .hdm-v424-actions a{min-height:48px;padding:0 12px;font-size:12px}
  .hdm-v424-actions a span{display:none}
  .hdm-v424-media-label{bottom:72px;font-size:10px}
}


/* ==========================================================
   V4.2.5 EXACT ORDER — SINGLE PROFILE
========================================================== */
.hdm-v425-profile{background:#f7f7f7;color:#333}
.hdm-v425-layout{display:grid;grid-template-columns:1fr 1.05fr;min-height:100vh;padding-top:82px}
.hdm-v425-left{min-width:0;padding:34px;background:#fff}
.hdm-v425-right{min-width:0;background:#09090c}
.hdm-v425-media{position:sticky;top:0;height:100vh;overflow:hidden;background:#111116}
.hdm-v425-media>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hdm-v425-shade{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.02) 56%,rgba(0,0,0,.60) 100%);pointer-events:none}
.hdm-v425-fullscreen{position:absolute;left:22px;top:22px;z-index:5;width:45px;height:45px;border:0;border-radius:50%;background:rgba(255,255,255,.18);color:#fff;font-size:20px;backdrop-filter:blur(8px);cursor:pointer}
.hdm-v425-label{position:absolute;left:50%;bottom:86px;z-index:5;transform:translateX(-50%);display:flex;gap:5px;padding:8px 14px;border-radius:999px;background:rgba(250,248,226,.92);color:#333;font-size:12px;white-space:nowrap}
.hdm-v425-actions{position:absolute;left:50%;bottom:24px;z-index:6;transform:translateX(-50%);display:flex;overflow:hidden;border-radius:28px;box-shadow:0 10px 28px rgba(0,0,0,.22)}
.hdm-v425-actions a{min-height:56px;padding:0 18px;display:flex;align-items:center;gap:8px;color:#fff;font-size:14px;font-weight:800}
.hdm-v425-actions .save{background:#2f83b5}.hdm-v425-actions .whatsapp{background:#198b68}.hdm-v425-actions .phone{background:#d44663}.hdm-v425-actions .video{background:#8f2c8d}

.hdm-v425-block{padding:0 0 34px;margin:0 0 34px;border-bottom:1px solid #ececec}
.hdm-v425-chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.hdm-v425-chips span{padding:7px 10px;border-radius:999px;font-size:11px;font-weight:850}
.hdm-v425-chips .verified{background:#e9f7fb;color:#328cab}.hdm-v425-chips .escort{background:#ffeef2;color:#d34c6a}.hdm-v425-chips .vip{background:#fff7d8;color:#9d7910}
.hdm-v425-identity h1{margin:0 0 10px;font-size:clamp(54px,6vw,88px);line-height:.92;letter-spacing:-.06em;color:#333}
.hdm-v425-summary{display:flex;gap:14px;flex-wrap:wrap;color:#777;font-size:13px;margin-bottom:18px}
.hdm-v425-intro{margin:0;color:#3e3e3e;font-size:15px;line-height:1.7}
.hdm-v425-block h2{margin:0 0 20px;font-size:34px;line-height:1.05;letter-spacing:-.035em;color:#333}

.hdm-v425-rates{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.hdm-v425-rates div{min-height:92px;padding:17px;border:1px solid #e2e8ee;border-radius:13px;background:#fbfdff;display:flex;flex-direction:column;justify-content:center}
.hdm-v425-rates span{font-size:12px;color:#49657d}.hdm-v425-rates strong{margin-top:4px;font-size:15px;color:#24425d}

.hdm-v425-head{display:flex;align-items:center;justify-content:space-between;gap:15px}.hdm-v425-head>span{color:#5d5d65;font-size:11px;font-weight:800}
.hdm-v425-gallery{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.hdm-v425-thumb{position:relative;aspect-ratio:1/1;border:0;padding:0;border-radius:14px;overflow:hidden;background:#eee;cursor:pointer}
.hdm-v425-thumb img{width:100%;height:100%;object-fit:cover;display:block}.hdm-v425-thumb>span{position:absolute;right:12px;bottom:12px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:rgba(0,0,0,.38);color:#fff}

.hdm-v425-details{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.hdm-v425-details div{min-height:96px;padding:17px 18px;border:1px solid #e4e9ee;border-radius:13px;background:#fbfdff;display:flex;flex-direction:column;justify-content:center}
.hdm-v425-details div.wide{grid-column:span 2}.hdm-v425-details span{font-size:11px;color:#5a7489;margin-bottom:4px}.hdm-v425-details strong{font-size:14px;line-height:1.35;color:#223b50}
.hdm-v425-muted{color:#666}

.hdm-v425-faq-intro p{margin-top:-10px;color:#686868;font-size:13px}
.hdm-v425-faq details{border-top:1px solid #ededed;background:#fff}
.hdm-v425-faq details:last-child{border-bottom:1px solid #ededed}
.hdm-v425-faq summary{list-style:none;display:grid;grid-template-columns:90px 1fr 44px;align-items:center;gap:18px;min-height:128px;padding:18px 10px;cursor:pointer}
.hdm-v425-faq summary::-webkit-details-marker{display:none}
.hdm-v425-faq summary b{font-size:50px;color:#d7d7d7;letter-spacing:-.05em}
.hdm-v425-faq summary span{font-size:23px;font-weight:850;color:#363636}
.hdm-v425-faq summary i{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#f5f5f5;font-style:normal;font-size:24px}
.hdm-v425-faq details p{padding:0 118px 24px;color:#666;line-height:1.6}

.hdm-v425-end{padding:28px 0 60px;border-top:1px solid #ededed;display:flex;justify-content:center;gap:10px;color:#777;font-size:13px}
.hdm-v425-like h2{font-weight:500}
.hdm-v425-like-row{display:flex;gap:20px;overflow-x:auto;padding-bottom:10px}
.hdm-v425-like-item{min-width:108px;text-align:center;color:#333}
.hdm-v425-like-item .photo{width:98px;height:98px;border-radius:50%;padding:5px;background:#eee;display:block;margin:0 auto 9px}
.hdm-v425-like-item img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}
.hdm-v425-like-item strong,.hdm-v425-like-item small{display:block}.hdm-v425-like-item strong{font-size:12px}.hdm-v425-like-item small{font-size:11px;color:#666;margin-top:3px}

.hdm-v425-banners{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:34px 0 60px}
.hdm-v425-banner-widget img{width:100%;height:auto;display:block;border-radius:10px}
.hdm-v425-banner-placeholder{aspect-ratio:1.35/1;padding:20px;border-radius:10px;background:linear-gradient(145deg,#09090d,#221018);color:#fff;display:flex;flex-direction:column;justify-content:flex-end;box-shadow:0 12px 30px rgba(0,0,0,.08)}
.hdm-v425-banner-placeholder span{font-size:8px;letter-spacing:.18em;color:#ff2d70}.hdm-v425-banner-placeholder strong{margin-top:5px;font-size:16px}

.hdm-v425-lightbox{position:fixed;inset:0;z-index:99999;display:none;align-items:center;justify-content:center;padding:30px;background:rgba(0,0,0,.94)}
.hdm-v425-lightbox.is-open{display:flex}.hdm-v425-lightbox img{max-width:94vw;max-height:92vh;object-fit:contain}
.hdm-v425-close{position:absolute;right:24px;top:20px;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.22);background:rgba(0,0,0,.4);color:#fff;font-size:31px;cursor:pointer}

@media(max-width:1200px){.hdm-v425-rates{grid-template-columns:repeat(3,1fr)}.hdm-v425-details{grid-template-columns:repeat(3,1fr)}.hdm-v425-banners{grid-template-columns:repeat(2,1fr)}}
@media(max-width:980px){.hdm-v425-layout{grid-template-columns:1fr}.hdm-v425-right{order:-1}.hdm-v425-media{position:relative;height:72vh;min-height:560px}.hdm-v425-left{padding:28px 22px}.hdm-v425-details{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){
  .hdm-v425-layout{padding-top:70px}.hdm-v425-media{height:64vh;min-height:500px}.hdm-v425-left{padding:24px 14px}
  .hdm-v425-identity h1{font-size:48px}.hdm-v425-block h2{font-size:28px}
  .hdm-v425-rates{grid-template-columns:repeat(2,1fr)}.hdm-v425-details{grid-template-columns:repeat(2,1fr)}.hdm-v425-details div.wide{grid-column:span 2}
  .hdm-v425-faq summary{grid-template-columns:52px 1fr 38px;min-height:100px;gap:10px}.hdm-v425-faq summary b{font-size:34px}.hdm-v425-faq summary span{font-size:17px}.hdm-v425-faq details p{padding:0 58px 22px}
  .hdm-v425-actions a{min-height:48px;padding:0 12px;font-size:12px}.hdm-v425-actions a span{display:none}.hdm-v425-label{bottom:72px;font-size:10px}
  .hdm-v425-banners{grid-template-columns:1fr 1fr;gap:8px}
}


/* ==========================================================
   V4.2.6 — LOWER SECTIONS FULL WIDTH
   TopEscort reference behavior:
   two-column profile ends after Customer Reviews.
   FAQ + end marker + recommendations + banners are BELOW,
   full browser width and no longer beside sticky media.
========================================================== */

.hdm-v426-bottom{
    width:100%;
    background:#f7f7f7;
    color:#333;
    padding:72px 20px 20px;
}

/* Constrain text sections but allow recommendation/banner areas to breathe. */
.hdm-v426-bottom > .hdm-v425-block,
.hdm-v426-bottom > .hdm-v425-end{
    width:min(1500px, 100%);
    margin-left:auto;
    margin-right:auto;
}

.hdm-v426-bottom > .hdm-v425-block{
    padding-left:0;
    padding-right:0;
}

/* FAQ becomes a proper full-width premium section */
.hdm-v426-bottom .hdm-v425-faq-intro{
    margin-bottom:26px;
}

.hdm-v426-bottom .hdm-v425-faq-intro h2{
    font-size:clamp(34px,3.3vw,52px);
    margin-bottom:10px;
}

.hdm-v426-bottom .hdm-v425-faq-intro p{
    font-size:15px;
    margin-top:0;
}

.hdm-v426-bottom .hdm-v425-faq{
    background:#fff;
    box-shadow:0 18px 55px rgba(0,0,0,.035);
}

.hdm-v426-bottom .hdm-v425-faq summary{
    grid-template-columns:110px 1fr 54px;
    min-height:150px;
    padding:20px 46px;
}

.hdm-v426-bottom .hdm-v425-faq summary b{
    font-size:62px;
}

.hdm-v426-bottom .hdm-v425-faq summary span{
    font-size:clamp(24px,2.2vw,36px);
}

.hdm-v426-bottom .hdm-v425-faq details p{
    padding:0 156px 30px;
    font-size:15px;
}

/* End-profile line across page */
.hdm-v426-bottom .hdm-v425-end{
    padding:40px 0 80px;
}

/* Recommendations: full width */
.hdm-v426-bottom .hdm-v425-like{
    width:100%;
    max-width:none;
    padding:0 0 55px;
}

.hdm-v426-bottom .hdm-v425-like > h2{
    width:min(1500px,100%);
    margin-left:auto;
    margin-right:auto;
    padding:0 0 25px;
}

.hdm-v426-bottom .hdm-v425-like-row{
    width:min(1700px,100%);
    margin:0 auto;
    gap:26px;
    justify-content:flex-start;
    padding:0 10px 18px;
}

.hdm-v426-bottom .hdm-v425-like-item{
    min-width:135px;
}

.hdm-v426-bottom .hdm-v425-like-item .photo{
    width:122px;
    height:122px;
}

/* Banner strip gets full width below recommendations */
.hdm-v426-bottom .hdm-v425-banners{
    width:min(1740px,100%);
    margin:0 auto;
    padding:35px 0 70px;
}

/* The sticky right media naturally stops when .hdm-v425-layout ends. */
.hdm-v426-profile .hdm-v425-layout{
    align-items:start;
}

@media(max-width:980px){
    .hdm-v426-bottom{
        padding-top:50px;
    }
}

@media(max-width:620px){
    .hdm-v426-bottom{
        padding:38px 12px 12px;
    }

    .hdm-v426-bottom .hdm-v425-faq summary{
        grid-template-columns:48px 1fr 38px;
        min-height:100px;
        padding:14px 10px;
    }

    .hdm-v426-bottom .hdm-v425-faq summary b{
        font-size:32px;
    }

    .hdm-v426-bottom .hdm-v425-faq summary span{
        font-size:17px;
    }

    .hdm-v426-bottom .hdm-v425-faq details p{
        padding:0 58px 22px;
        font-size:13px;
    }

    .hdm-v426-bottom .hdm-v425-like-item{
        min-width:105px;
    }

    .hdm-v426-bottom .hdm-v425-like-item .photo{
        width:94px;
        height:94px;
    }
}


/* ==========================================================
   V4.2.8 SAFE ALIGN
   BASE: WORKING V4.2.6
   CSS ONLY — single-rz_listing.php IS UNCHANGED
========================================================== */

.hdm-v425-layout{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(0,1.05fr) !important;
    align-items:start !important;
    width:100% !important;
}

.hdm-v425-left{
    width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
}

.hdm-v425-left > .hdm-v425-block{
    width:100% !important;
    max-width:none !important;
    margin-left:0 !important;
    margin-right:0 !important;
    box-sizing:border-box !important;
}

.hdm-v425-rates,
.hdm-v425-gallery,
.hdm-v425-details{
    width:100% !important;
}

.hdm-v425-right{
    min-width:0 !important;
    width:100% !important;
}

.hdm-v425-media{
    position:sticky !important;
    top:82px !important;
    height:calc(100vh - 82px) !important;
    min-height:620px !important;
}

/* Lower sections remain completely below the two-column area. */
.hdm-v426-bottom{
    width:100% !important;
    clear:both !important;
    display:block !important;
    position:relative !important;
    z-index:3 !important;
    margin:0 !important;
    border-top:1px solid #ececec !important;
}

/* More consistent vertical rhythm for 01 / 02 / 03. */
.hdm-v425-left > .hdm-v425-block{
    margin-bottom:28px !important;
    padding-bottom:28px !important;
}

@media(max-width:980px){
    .hdm-v425-layout{
        grid-template-columns:1fr !important;
    }

    .hdm-v425-right{
        order:-1 !important;
    }

    .hdm-v425-media{
        position:relative !important;
        top:auto !important;
        height:72vh !important;
        min-height:560px !important;
    }
}

@media(max-width:620px){
    .hdm-v425-media{
        height:64vh !important;
        min-height:500px !important;
    }

    .hdm-v425-left > .hdm-v425-block{
        margin-bottom:22px !important;
        padding-bottom:22px !important;
    }
}


/* ==========================================================
   V4.2.9 — WHATSAPP CTA IN FLOATING MEDIA BAR
========================================================== */
.hdm-v425-actions .whatsapp{
    background:#25D366 !important;
    color:#fff !important;
    text-decoration:none !important;
}
.hdm-v425-actions .whatsapp:hover{
    filter:brightness(.94);
}
.hdm-v425-actions .whatsapp span{
    color:#fff !important;
}


/* ==========================================================
   V4.2.10 — MOBILE PROFILE GRID: 2 CARDS PER ROW
   Keep desktop/tablet behavior; force compact 2-column mobile.
========================================================== */
@media (max-width: 620px){

    .hdm-grid,
    .hdm-profile-grid,
    .rz-listings .rz-grid,
    .rz-listings .rz-listings-grid,
    .rz-explore-listings .rz-grid{
        display:grid !important;
        grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
        gap:10px !important;
        width:100% !important;
    }

    .hdm-grid > *,
    .hdm-profile-grid > *,
    .rz-listings .rz-grid > *,
    .rz-listings .rz-listings-grid > *,
    .rz-explore-listings .rz-grid > *{
        width:100% !important;
        max-width:none !important;
        min-width:0 !important;
        margin:0 !important;
    }

    /* Compact premium card content so two cards remain readable. */
    .hdm-card,
    .hdm-profile-card{
        min-width:0 !important;
        border-radius:14px !important;
        overflow:hidden !important;
    }

    .hdm-card img,
    .hdm-profile-card img{
        width:100% !important;
        height:auto !important;
        aspect-ratio:3 / 4 !important;
        object-fit:cover !important;
    }

    .hdm-card h3,
    .hdm-card-title,
    .hdm-profile-card h3{
        font-size:15px !important;
        line-height:1.15 !important;
    }

    .hdm-card p,
    .hdm-card-meta,
    .hdm-profile-card p{
        font-size:11px !important;
        line-height:1.3 !important;
    }

    .hdm-card .hdm-btn,
    .hdm-profile-card .hdm-btn{
        min-height:36px !important;
        padding:8px 6px !important;
        font-size:11px !important;
    }
}


/* ==========================================================
   V4.2.11 — REAL BRIKK MOBILE 2-COLUMN FIX
   Brikk uses FLEX for Routiz listing items on mobile.
   Its parent CSS forces 100% / 75vw, so previous grid rules
   could not win. Override the exact Brikk selectors instead.
========================================================== */

@media (max-width: 767.98px){

    /* Full explore/archive listing grid:
       Brikk parent forces 100%; HookupsDM needs two per row. */
    body .rz-explore-type--full .rz-explore-listings .rz-listings[data-cols]{
        display:flex !important;
        flex-wrap:wrap !important;
        margin-left:-5px !important;
        margin-right:-5px !important;
    }

    body .rz-explore-type--full .rz-explore-listings .rz-listings[data-cols] .rz-listing-item{
        flex:0 0 50% !important;
        max-width:50% !important;
        width:50% !important;
        padding-left:5px !important;
        padding-right:5px !important;
        box-sizing:border-box !important;
    }

    /* Home/section horizontal Routiz lists:
       Brikk parent uses 75vw per card. Force exactly half
       of the visible row so two profiles appear together. */
    body .rz-listings-outer{
        overflow:hidden !important;
        width:100% !important;
    }

    body .rz-listings-outer .rz-listings{
        display:flex !important;
        flex-wrap:wrap !important;
        width:100% !important;
        margin-left:-5px !important;
        margin-right:-5px !important;
    }

    body .rz-listings-outer .rz-listings .rz-listing-item{
        flex:0 0 50% !important;
        max-width:50% !important;
        width:50% !important;
        padding-left:5px !important;
        padding-right:5px !important;
        box-sizing:border-box !important;
    }

    /* Generic Routiz listing rows used by custom Home sections. */
    body .routiz .rz-listings:not(.rz-listings--single){
        display:flex !important;
        flex-wrap:wrap !important;
    }

    body .routiz .rz-listings:not(.rz-listings--single) > .rz-listing-item{
        flex:0 0 50% !important;
        max-width:50% !important;
        width:50% !important;
        box-sizing:border-box !important;
    }

    /* Keep each premium card inside its half-column. */
    body .rz-listing-item .hdm-rz-card,
    body .rz-listing-item .rz-listing{
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
        margin:0 !important;
    }

    /* Compact only the card typography; do not alter profile page. */
    body .rz-listing-item .hdm-rz-card{
        min-height:400px !important;
        border-radius:13px !important;
    }

    body .rz-listing-item .hdm-rz-content-inner{
        padding:15px 13px !important;
    }

    body .rz-listing-item .hdm-rz-content h1,
    body .rz-listing-item .hdm-rz-content h2,
    body .rz-listing-item .hdm-rz-content h3,
    body .rz-listing-item .hdm-rz-content h4,
    body .rz-listing-item .hdm-rz-content .rz-listing-title{
        font-size:18px !important;
        line-height:1.08 !important;
    }
}


/* ==========================================================
   V4.2.12 — EXACT HOME MOBILE GRID FIX
   The real Home wrapper is .hdm-home-section .hdm-grid
   (confirmed from front-page.php).
========================================================== */

@media (max-width: 767.98px){

    /* Exact Home sections: New Profiles + Featured Profiles */
    body .hdm-home-section .hdm-grid{
        display:grid !important;
        grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
        gap:10px !important;
        width:100% !important;
        max-width:100% !important;
        margin:0 !important;
        padding:0 !important;
        overflow:visible !important;
    }

    /* Whatever hdm_render_profile_grid() prints must stay inside its grid cell */
    body .hdm-home-section .hdm-grid > *{
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
        flex:initial !important;
        flex-basis:auto !important;
        margin:0 !important;
        box-sizing:border-box !important;
    }

    /* If Brikk/Routiz wrappers are nested one level inside the home grid */
    body .hdm-home-section .hdm-grid > .rz-listing-item,
    body .hdm-home-section .hdm-grid > .rz-listing,
    body .hdm-home-section .hdm-grid > article,
    body .hdm-home-section .hdm-grid > div{
        grid-column:auto !important;
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
    }

    /* Compact cards for 400px screens */
    body .hdm-home-section .hdm-grid .hdm-rz-card,
    body .hdm-home-section .hdm-grid .hdm-card{
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
        min-height:390px !important;
        border-radius:13px !important;
        overflow:hidden !important;
    }

    body .hdm-home-section .hdm-grid .hdm-rz-content-inner{
        padding:14px 12px 13px !important;
    }

    body .hdm-home-section .hdm-grid .hdm-rz-content h1,
    body .hdm-home-section .hdm-grid .hdm-rz-content h2,
    body .hdm-home-section .hdm-grid .hdm-rz-content h3,
    body .hdm-home-section .hdm-grid .hdm-rz-content h4,
    body .hdm-home-section .hdm-grid .rz-listing-title{
        font-size:17px !important;
        line-height:1.08 !important;
    }
}

/* Extra-small phones: still keep 2 columns */
@media (max-width: 420px){
    body .hdm-home-section .hdm-grid{
        gap:8px !important;
        grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    }

    body .hdm-home-section .hdm-grid .hdm-rz-card,
    body .hdm-home-section .hdm-grid .hdm-card{
        min-height:360px !important;
    }
}


/* ==========================================================
   V4.3.0 — HOME REVOLUTION
   Entirely namespaced. Does not alter single profile layout.
========================================================== */
.hdm-v430-home{
    --v430-bg:#050506;
    --v430-panel:#0a0a0c;
    --v430-line:rgba(221,183,71,.28);
    --v430-gold:#ddb747;
    --v430-gold-2:#f4db82;
    --v430-pink:#ef2768;
    background:var(--v430-bg);
    color:#f7f4ed;
    overflow:hidden;
}

.hdm-v430-hero{
    position:relative;
    padding:120px 0 70px;
    background:
        radial-gradient(circle at 69% 24%,rgba(239,39,104,.17),transparent 26%),
        radial-gradient(circle at 26% 55%,rgba(221,183,71,.08),transparent 29%),
        #050506;
}
.hdm-v430-hero-noise{
    position:absolute;inset:0;pointer-events:none;opacity:.13;
    background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
                     linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
    background-size:64px 64px;
}
.hdm-v430-hero-shell{
    position:relative;z-index:2;
    display:grid;
    grid-template-columns:230px minmax(0,1fr) minmax(310px,.55fr);
    gap:28px;
    align-items:stretch;
}
.hdm-v430-city-rail{
    border:1px solid var(--v430-line);
    background:linear-gradient(180deg,#080809,#0c0a0b);
    min-height:720px;
    display:flex;flex-direction:column;
}
.hdm-v430-rail-brand{
    padding:28px 24px 26px;border-bottom:1px solid var(--v430-line)
}
.hdm-v430-rail-brand span{
    color:var(--v430-gold);font-size:10px;font-weight:900;letter-spacing:.22em
}
.hdm-v430-rail-brand strong{
    display:block;margin-top:8px;font-family:Georgia,serif;
    font-size:26px;line-height:.95;font-weight:500
}
.hdm-v430-city-nav{display:flex;flex-direction:column;padding:10px 14px}
.hdm-v430-city-nav a{
    display:grid;grid-template-columns:42px 1fr 18px;align-items:center;
    min-height:62px;padding:0 10px;border-bottom:1px solid rgba(255,255,255,.06);
    color:#fff;
}
.hdm-v430-city-nav a span{font-size:9px;color:#777;letter-spacing:.12em}
.hdm-v430-city-nav a strong{font-size:13px}
.hdm-v430-city-nav a i{font-style:normal;color:var(--v430-gold)}
.hdm-v430-city-nav a:hover{background:rgba(221,183,71,.05)}
.hdm-v430-rail-cta{
    margin:auto 14px 14px;padding:18px;border:1px solid var(--v430-line);
    background:rgba(221,183,71,.06);color:#fff
}
.hdm-v430-rail-cta span{display:block;font-size:8px;letter-spacing:.18em;color:#948976}
.hdm-v430-rail-cta strong{display:block;margin-top:6px;font-size:13px;color:var(--v430-gold-2)}

.hdm-v430-hero-main{
    min-height:720px;padding:40px 18px 36px 30px;
    display:flex;flex-direction:column;justify-content:center;
    position:relative;
}
.hdm-v430-kicker{
    display:flex;align-items:center;gap:10px;
    color:#aaa49b;font-size:10px;font-weight:900;letter-spacing:.18em
}
.hdm-v430-kicker i{width:28px;height:2px;background:var(--v430-pink)}
.hdm-v430-hero-main h1{
    margin:22px 0 28px;
    font-family:Georgia,serif;
    font-size:clamp(78px,8.4vw,144px);
    line-height:.78;letter-spacing:-.065em;font-weight:500
}
.hdm-v430-hero-main h1 em{font-style:normal;color:#D94F7D}
.hdm-v430-hero-main>p{
    max-width:660px;margin:0;color:#aaa7a2;font-size:17px;line-height:1.65
}
.hdm-v430-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:34px}
.hdm-v430-btn{
    min-height:62px;padding:0 30px;display:inline-flex;align-items:center;justify-content:center;
    font-size:11px;font-weight:950;letter-spacing:.06em;text-transform:uppercase
}
.hdm-v430-btn-gold{background:linear-gradient(135deg,var(--v430-gold-2),var(--v430-gold));color:#15110a}
.hdm-v430-btn-dark{border:1px solid rgba(255,255,255,.14);background:#0c0c0e;color:#fff}
.hdm-v430-proof{
    display:grid;grid-template-columns:repeat(3,1fr);gap:10px;
    margin-top:48px;padding-top:20px;border-top:1px solid rgba(255,255,255,.07)
}
.hdm-v430-proof span{font-size:10px;color:#807d79;text-transform:uppercase;letter-spacing:.08em}
.hdm-v430-proof b{margin-right:7px;color:var(--v430-gold);font-weight:900}

.hdm-v430-vip-poster{
    position:relative;min-height:720px;border:1px solid var(--v430-line);
    overflow:hidden;background:#101012
}
.hdm-v430-vip-poster>img{
    position:absolute;inset:0;width:100%;height:100%;object-fit:cover
}
.hdm-v430-poster-shade{
    position:absolute;inset:0;background:
       linear-gradient(to bottom,rgba(0,0,0,.18),rgba(0,0,0,.12) 44%,rgba(0,0,0,.92) 100%)
}
.hdm-v430-poster-top{
    position:absolute;z-index:3;left:22px;right:22px;top:22px;
    display:flex;align-items:center;justify-content:space-between
}
.hdm-v430-poster-top small{
    padding:10px 13px;border:1px solid rgba(255,255,255,.16);
    background:rgba(0,0,0,.35);font-size:8px;font-weight:900;letter-spacing:.17em
}
.hdm-v430-poster-top b{
    width:78px;height:78px;border-radius:50%;display:grid;place-items:center;
    background:linear-gradient(145deg,var(--v430-gold-2),var(--v430-gold));
    color:#211b0f;border:3px solid #f8eab9;font-size:19px
}
.hdm-v430-poster-copy{
    position:absolute;z-index:3;left:28px;right:28px;bottom:30px
}
.hdm-v430-poster-copy>span{
    color:var(--v430-gold);font-size:9px;font-weight:900;letter-spacing:.19em
}
.hdm-v430-poster-copy h2{
    margin:10px 0 6px;font-family:Georgia,serif;font-size:46px;line-height:.92
}
.hdm-v430-poster-copy p{margin:0 0 20px;color:#c4c0ba;font-size:12px}
.hdm-v430-poster-copy a{
    padding-top:15px;border-top:1px solid var(--v430-line);color:#fff;
    display:block;font-size:11px;font-weight:900;letter-spacing:.08em
}

.hdm-v430-featured{padding:86px 0 104px;background:#070708}
.hdm-v430-section-title{
    display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:28px
}
.hdm-v430-section-title span,.hdm-v430-all-head span{
    color:var(--v430-gold);font-size:10px;font-weight:900;letter-spacing:.18em
}
.hdm-v430-section-title h2,.hdm-v430-all-head h2{
    margin:5px 0 0;font-family:Georgia,serif;font-size:clamp(54px,6vw,88px);
    line-height:.95;letter-spacing:-.05em
}
.hdm-v430-section-title p{margin:9px 0 0;color:#86827d;font-size:14px}
.hdm-v430-arrows{display:flex;gap:12px}
.hdm-v430-arrows b{
    width:58px;height:58px;border-radius:50%;display:grid;place-items:center;
    border:1px solid rgba(221,183,71,.48);color:var(--v430-gold);font-size:22px
}
.hdm-v430-featured-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.hdm-v430-feature{border:1px solid var(--v430-line);background:#09090a}
.hdm-v430-feature a{display:block;color:#fff}
.hdm-v430-feature-media{position:relative;height:430px;overflow:hidden}
.hdm-v430-feature-media img{width:100%;height:100%;object-fit:cover;display:block}
.hdm-v430-feature-shade{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.2),transparent 50%)}
.hdm-v430-feature-badge{
    position:absolute;left:18px;top:18px;padding:12px 17px;background:var(--v430-gold-2);
    color:#201b12;font-size:10px;font-weight:950
}
.hdm-v430-feature-heart{
    position:absolute;right:18px;top:18px;width:54px;height:54px;border-radius:50%;
    display:grid;place-items:center;background:rgba(4,4,5,.78);font-size:27px
}
.hdm-v430-feature-foot{
    min-height:78px;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;gap:18px
}
.hdm-v430-feature-foot strong{
    display:block;font-family:Georgia,serif;font-size:31px;line-height:1
}
.hdm-v430-feature-foot span{display:block;margin-top:5px;color:#817d78;font-size:10px;text-transform:uppercase}
.hdm-v430-feature-foot>b{
    font-size:9px;letter-spacing:.12em;border-bottom:1px solid var(--v430-gold);padding-bottom:6px
}

.hdm-v430-all{padding:96px 0 118px;background:#050506}
.hdm-v430-all-head{
    display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:32px
}
.hdm-v430-all-head>a{color:var(--v430-gold);font-size:12px;font-weight:850}
.hdm-v430-grid{
    display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px
}
/* Cards already have the photo-overlay system. Fit it to editorial Home. */
.hdm-v430-grid .hdm-card{min-width:0}
.hdm-v430-grid .hdm-card-media{min-height:510px}
.hdm-v430-grid .hdm-card-overlay{padding:22px}
.hdm-v430-grid .hdm-card-name{font-size:26px}

.hdm-v430-destinations{padding:88px 0 100px;background:#0b0909;border-top:1px solid var(--v430-line)}
.hdm-v430-section-title-light{margin-bottom:28px}
.hdm-v430-destination-grid{
    display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px
}
.hdm-v430-destination-grid a{
    min-height:210px;padding:22px;border:1px solid rgba(255,255,255,.08);
    background:linear-gradient(145deg,#111014,#080809);
    display:flex;flex-direction:column;color:#fff
}
.hdm-v430-destination-grid small{color:var(--v430-pink);font-size:8px;letter-spacing:.2em}
.hdm-v430-destination-grid strong{
    margin-top:auto;font-family:Georgia,serif;font-size:29px;line-height:1
}
.hdm-v430-destination-grid span{margin-top:6px;color:#797570;font-size:10px}
.hdm-v430-destination-grid b{margin-top:17px;color:var(--v430-gold);font-size:9px;letter-spacing:.1em}

@media(max-width:1180px){
    .hdm-v430-hero-shell{grid-template-columns:190px minmax(0,1fr) 300px;gap:18px}
    .hdm-v430-hero-main h1{font-size:88px}
    .hdm-v430-destination-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:920px){
    .hdm-v430-hero{padding-top:94px}
    .hdm-v430-hero-shell{grid-template-columns:1fr}
    .hdm-v430-city-rail{min-height:0;order:2}
    .hdm-v430-city-nav{display:grid;grid-template-columns:repeat(3,1fr)}
    .hdm-v430-city-nav a{grid-template-columns:1fr 18px}
    .hdm-v430-city-nav a span{display:none}
    .hdm-v430-rail-cta{margin:14px}
    .hdm-v430-hero-main{min-height:0;padding:50px 0}
    .hdm-v430-vip-poster{min-height:620px}
    .hdm-v430-featured-grid{grid-template-columns:1fr}
    .hdm-v430-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:620px){
    .hdm-v430-hero{padding:74px 0 34px}
    .hdm-v430-hero-shell{gap:12px}
    .hdm-v430-hero-main{padding:34px 0 24px}
    .hdm-v430-hero-main h1{font-size:64px;line-height:.82;margin:17px 0 20px}
    .hdm-v430-hero-main>p{font-size:14px;line-height:1.55}
    .hdm-v430-proof{grid-template-columns:1fr;gap:7px;margin-top:30px}
    .hdm-v430-btn{min-height:52px;padding:0 18px;font-size:9px}
    .hdm-v430-vip-poster{min-height:510px}
    .hdm-v430-city-nav{grid-template-columns:1fr 1fr}
    .hdm-v430-city-nav a{min-height:54px}
    .hdm-v430-featured{padding:58px 0 66px}
    .hdm-v430-section-title{align-items:flex-start}
    .hdm-v430-arrows{display:none}
    .hdm-v430-section-title h2,.hdm-v430-all-head h2{font-size:50px}
    .hdm-v430-feature-media{height:320px}
    .hdm-v430-feature-foot strong{font-size:25px}
    .hdm-v430-feature-foot>b{font-size:8px}
    .hdm-v430-all{padding:64px 0 78px}
    .hdm-v430-all-head{align-items:flex-start;flex-direction:column}
    /* REQUIRED MOBILE TARGET: 2 PROFILES PER ROW */
    .hdm-v430-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
    .hdm-v430-grid .hdm-card-media{min-height:330px}
    .hdm-v430-grid .hdm-card-overlay{padding:12px}
    .hdm-v430-grid .hdm-card-name{font-size:17px}
    .hdm-v430-grid .hdm-card-specs{font-size:10px}
    .hdm-v430-grid .hdm-card-excerpt{font-size:10px;line-height:1.3}
    .hdm-v430-grid .hdm-card-city{font-size:10px}
    .hdm-v430-destinations{padding:58px 0 70px}
    .hdm-v430-destination-grid{grid-template-columns:repeat(2,1fr);gap:8px}
    .hdm-v430-destination-grid a{min-height:160px;padding:16px}
    .hdm-v430-destination-grid strong{font-size:23px}
}


/* ==========================================================
   V4.3.1 — HEADER HOOKUPSDM ORIGINAL IDENTITY
   Based on the user's approved header reference.
========================================================== */
.hdm-v431-header{
    position:relative;
    z-index:9999;
    width:100%;
    background:#07070a;
    border-bottom:1px solid rgba(232,63,125,.16);
}
.hdm-v431-header-inner{
    min-height:116px;
    width:min(1920px,100%);
    margin:0 auto;
    padding:18px 28px;
    display:grid;
    grid-template-columns:auto 1fr auto;
    align-items:center;
    gap:34px;
}
.hdm-v431-brand{
    display:flex;
    align-items:center;
    gap:16px;
    color:#fff;
    text-decoration:none;
    min-width:max-content;
}
.hdm-v431-logo-mark{
    width:82px;
    height:82px;
    border-radius:18px;
    display:grid;
    place-items:center;
    background:#d94d82;
    color:#fff;
    font-size:38px;
    line-height:1;
    box-shadow:0 10px 32px rgba(217,77,130,.14);
}
.hdm-v431-logo-copy{
    display:flex;
    flex-direction:column;
    line-height:1;
}
.hdm-v431-logo-copy strong{
    font-size:43px;
    font-weight:900;
    letter-spacing:-.04em;
    color:#fff;
}
.hdm-v431-logo-copy strong span{
    color:#e6538b;
}
.hdm-v431-logo-copy small{
    margin-top:7px;
    font-size:12px;
    font-weight:850;
    letter-spacing:.12em;
    color:#d2c8ce;
}
.hdm-v431-nav{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:34px;
}
.hdm-v431-nav a{
    color:#fff;
    text-decoration:none;
    font-size:18px;
    font-weight:850;
    transition:.2s ease;
}
.hdm-v431-nav a:hover{
    color:#ff5c9a;
}
.hdm-v431-actions{
    display:flex;
    align-items:center;
    gap:16px;
}
.hdm-v431-actions a{
    min-height:64px;
    padding:0 30px;
    border-radius:16px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-size:18px;
    font-weight:900;
    text-decoration:none;
    white-space:nowrap;
}
.hdm-v431-login{
    color:#fff;
    background:#0c0b0f;
    border:1px solid rgba(232,63,125,.28);
}
.hdm-v431-create{
    color:#fff;
    background:linear-gradient(135deg,#d84d82,#ea5c95);
    box-shadow:0 10px 30px rgba(232,63,125,.18);
}
.hdm-v431-menu-toggle{
    display:none;
    width:48px;
    height:48px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:12px;
    background:#111015;
    padding:11px;
}
.hdm-v431-menu-toggle span{
    display:block;
    height:2px;
    background:#fff;
    margin:5px 0;
}
.hdm-v431-mobile-menu{
    background:#0a090d;
    border-top:1px solid rgba(255,255,255,.06);
    padding:14px 18px 18px;
}
.hdm-v431-mobile-menu a{
    display:block;
    padding:13px 4px;
    color:#fff;
    text-decoration:none;
    font-weight:800;
}
.hdm-v431-mobile-menu a.create{
    margin-top:8px;
    padding:14px 16px;
    border-radius:12px;
    background:#df5388;
    text-align:center;
}

@media(max-width:1120px){
    .hdm-v431-header-inner{
        grid-template-columns:auto 1fr auto;
        gap:18px;
    }
    .hdm-v431-nav{
        gap:20px;
    }
    .hdm-v431-nav a{
        font-size:16px;
    }
    .hdm-v431-actions a{
        min-height:56px;
        padding:0 20px;
        font-size:16px;
    }
    .hdm-v431-logo-copy strong{
        font-size:36px;
    }
    .hdm-v431-logo-mark{
        width:68px;
        height:68px;
        font-size:31px;
    }
}
@media(max-width:900px){
    .hdm-v431-header-inner{
        min-height:86px;
        grid-template-columns:1fr auto;
        padding:12px 16px;
    }
    .hdm-v431-nav,
    .hdm-v431-actions{
        display:none;
    }
    .hdm-v431-menu-toggle{
        display:block;
    }
    .hdm-v431-logo-mark{
        width:54px;
        height:54px;
        border-radius:13px;
        font-size:25px;
    }
    .hdm-v431-logo-copy strong{
        font-size:28px;
    }
    .hdm-v431-logo-copy small{
        font-size:8px;
        margin-top:5px;
    }
}
@media(max-width:480px){
    .hdm-v431-logo-copy strong{
        font-size:24px;
    }
    .hdm-v431-logo-copy small{
        font-size:7px;
        letter-spacing:.08em;
    }
    .hdm-v431-logo-mark{
        width:48px;
        height:48px;
    }
}


/* ==========================================================
   V4.3.3 — HERO RIGHT SIDE = BRAND HERO POSTER
   No profile name/city/link. Inspired by the approved
   TopEscortGirls poster structure but fully HookupsDM branded.
========================================================== */

.hdm-v433-brand-poster{
    border-color:rgba(217,79,125,.42) !important;
    box-shadow:0 24px 70px rgba(0,0,0,.35);
}

.hdm-v433-brand-poster .hdm-v430-poster-top small{
    display:flex;
    align-items:center;
    gap:9px;
    border-color:rgba(217,79,125,.34);
}

.hdm-v433-brand-poster .hdm-v430-poster-top small i{
    width:10px;
    height:10px;
    border-radius:50%;
    background:#D94F7D;
    box-shadow:0 0 0 5px rgba(217,79,125,.17);
}

.hdm-v433-brand-copy{
    position:absolute;
    z-index:4;
    left:30px;
    right:30px;
    bottom:28px;
    padding-top:24px;
    border-top:1px solid rgba(217,79,125,.28);
}

.hdm-v433-exclusive{
    display:block;
    margin-bottom:10px;
    color:#D94F7D;
    font-size:9px;
    font-weight:950;
    letter-spacing:.20em;
}

.hdm-v433-brand-copy h2{
    margin:0;
    font-family:Georgia,serif;
    font-size:clamp(44px,4vw,68px);
    line-height:.80;
    letter-spacing:-.055em;
    color:#fff;
}

.hdm-v433-brand-copy h2 em{
    font-style:normal;
    color:#D94F7D;
}

.hdm-v433-brand-copy>p{
    margin:18px 0 20px;
    color:#eee8eb;
    font-size:12px;
    font-weight:850;
    letter-spacing:.08em;
}

.hdm-v433-verified-line{
    display:flex;
    align-items:center;
    gap:12px;
    padding:18px 0 14px;
    border-top:1px solid rgba(255,255,255,.12);
    border-bottom:1px solid rgba(255,255,255,.12);
}

.hdm-v433-verified-line strong{
    color:#D94F7D;
    font-size:20px;
    letter-spacing:.04em;
}

.hdm-v433-verified-line span{
    color:#fff;
    font-size:15px;
    font-weight:950;
    letter-spacing:.08em;
}

.hdm-v433-brand-copy>small{
    display:block;
    margin-top:14px;
    color:#b8afb3;
    font-size:8px;
    font-weight:850;
    letter-spacing:.18em;
}

.hdm-v433-brand-copy>a{
    display:inline-flex;
    margin-top:18px;
    color:#fff;
    font-size:10px;
    font-weight:950;
    letter-spacing:.10em;
    border-bottom:2px solid #D94F7D;
    padding-bottom:6px;
}

@media(max-width:620px){
    .hdm-v433-brand-copy{
        left:22px;
        right:22px;
        bottom:22px;
    }
    .hdm-v433-brand-copy h2{
        font-size:50px;
    }
    .hdm-v433-verified-line strong{
        font-size:16px;
    }
    .hdm-v433-verified-line span{
        font-size:12px;
    }
}


/* ==========================================================
   V4.3.4 — SPOTLIGHT: 2 PROFILES × 3 PHOTOS EACH
   Smaller editorial slider inspired by the approved reference.
========================================================== */

.hdm-v430-featured{
    padding:58px 0 72px !important;
}

.hdm-v430-featured-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:18px !important;
}

.hdm-v430-feature{
    min-width:0;
    border-color:rgba(217,79,125,.26) !important;
}

.hdm-v430-feature-media.hdm-v434-feature-media{
    height:300px !important;
    min-height:300px !important;
    background:#111;
}

.hdm-v434-feature-photos{
    position:absolute;
    inset:0;
    z-index:1;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:2px;
}

.hdm-v434-feature-photo{
    min-width:0;
    overflow:hidden;
    background:#161616;
}

.hdm-v434-feature-photo img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    object-position:center;
}

.hdm-v430-feature-shade{
    z-index:2 !important;
    background:linear-gradient(to top,rgba(0,0,0,.22),rgba(0,0,0,0) 45%) !important;
}

.hdm-v430-feature-badge{
    z-index:3 !important;
    background:#D94F7D !important;
    color:#fff !important;
    padding:10px 15px !important;
    font-size:9px !important;
}

.hdm-v430-feature-heart{
    z-index:3 !important;
    width:46px !important;
    height:46px !important;
    font-size:23px !important;
    background:rgba(7,7,10,.78) !important;
    border:1px solid rgba(255,255,255,.12);
}

.hdm-v430-feature-foot{
    min-height:68px !important;
    padding:12px 16px !important;
}

.hdm-v430-feature-foot strong{
    font-size:28px !important;
}

.hdm-v430-feature-foot>b{
    border-bottom-color:#D94F7D !important;
}

.hdm-v430-arrows b{
    border-color:rgba(217,79,125,.45) !important;
    color:#D94F7D !important;
}

@media(max-width:900px){
    .hdm-v430-featured-grid{
        grid-template-columns:1fr !important;
    }
    .hdm-v430-feature-media.hdm-v434-feature-media{
        height:280px !important;
        min-height:280px !important;
    }
}

@media(max-width:620px){
    .hdm-v430-featured{
        padding:44px 0 54px !important;
    }
    .hdm-v430-feature-media.hdm-v434-feature-media{
        height:210px !important;
        min-height:210px !important;
    }
    .hdm-v430-feature-foot strong{
        font-size:22px !important;
    }
    .hdm-v430-feature-foot span{
        font-size:9px !important;
    }
}


/* ==========================================================
   V4.3.5 — SPOTLIGHT COMPACT MAX
   Same 2 profiles × 3 photos, significantly smaller height.
========================================================== */

.hdm-v430-featured{
    padding:42px 0 54px !important;
}

.hdm-v430-section-title{
    margin-bottom:18px !important;
}

.hdm-v430-section-title h2{
    font-size:clamp(46px,4.8vw,70px) !important;
}

.hdm-v430-section-title p{
    font-size:13px !important;
    margin-top:6px !important;
}

.hdm-v430-arrows b{
    width:50px !important;
    height:50px !important;
    font-size:20px !important;
}

.hdm-v430-featured-grid{
    gap:14px !important;
}

.hdm-v430-feature-media.hdm-v434-feature-media{
    height:225px !important;
    min-height:225px !important;
}

.hdm-v430-feature-badge{
    left:12px !important;
    top:12px !important;
    padding:8px 12px !important;
    font-size:8px !important;
}

.hdm-v430-feature-heart{
    right:12px !important;
    top:12px !important;
    width:40px !important;
    height:40px !important;
    font-size:20px !important;
}

.hdm-v430-feature-foot{
    min-height:58px !important;
    padding:10px 14px !important;
}

.hdm-v430-feature-foot strong{
    font-size:24px !important;
    line-height:1 !important;
}

.hdm-v430-feature-foot span{
    margin-top:3px !important;
    font-size:8px !important;
}

.hdm-v430-feature-foot>b{
    font-size:8px !important;
    padding-bottom:4px !important;
}

@media(max-width:900px){
    .hdm-v430-feature-media.hdm-v434-feature-media{
        height:205px !important;
        min-height:205px !important;
    }
}

@media(max-width:620px){
    .hdm-v430-featured{
        padding:34px 0 42px !important;
    }

    .hdm-v430-section-title h2{
        font-size:42px !important;
    }

    .hdm-v430-feature-media.hdm-v434-feature-media{
        height:155px !important;
        min-height:155px !important;
    }

    .hdm-v430-feature-foot{
        min-height:52px !important;
        padding:9px 10px !important;
    }

    .hdm-v430-feature-foot strong{
        font-size:18px !important;
    }

    .hdm-v430-feature-foot>b{
        font-size:7px !important;
    }
}


/* ==========================================================
   V4.3.6 — SPOTLIGHT REAL SLIDER + TIGHTER HOME RHYTHM
========================================================== */

/* Remove the large empty gaps seen between Hero / Spotlight / All Profiles */
.hdm-v430-hero{
    padding-bottom:30px !important;
}
.hdm-v430-featured{
    padding-top:24px !important;
    padding-bottom:30px !important;
}
.hdm-v430-all{
    padding-top:34px !important;
    padding-bottom:76px !important;
}

/* Smaller Spotlight title */
.hdm-v430-featured .hdm-v430-section-title{
    margin-bottom:14px !important;
}
.hdm-v430-featured .hdm-v430-section-title h2{
    font-size:clamp(38px,4vw,58px) !important;
    line-height:.92 !important;
}
.hdm-v430-featured .hdm-v430-section-title p{
    font-size:12px !important;
    margin-top:4px !important;
}

/* Real horizontal carousel: 2 profiles visible at once */
.hdm-v436-spotlight-viewport{
    width:100%;
    overflow:hidden;
}
.hdm-v436-spotlight-track{
    display:flex !important;
    flex-wrap:nowrap !important;
    gap:12px !important;
    transform:translate3d(0,0,0);
    transition:transform .45s cubic-bezier(.22,.61,.36,1);
    will-change:transform;
}
.hdm-v436-spotlight-track > .hdm-v430-feature{
    flex:0 0 calc((100% - 12px) / 2) !important;
    max-width:calc((100% - 12px) / 2) !important;
}

/* Smaller frame: still 3 photos per featured profile */
.hdm-v430-feature-media.hdm-v434-feature-media{
    height:185px !important;
    min-height:185px !important;
}
.hdm-v430-feature-foot{
    min-height:50px !important;
    padding:8px 12px !important;
}
.hdm-v430-feature-foot strong{
    font-size:20px !important;
}
.hdm-v430-feature-foot span{
    font-size:7px !important;
}
.hdm-v430-feature-foot>b{
    font-size:7px !important;
}

/* Pink compact arrows */
.hdm-v430-arrows{
    display:flex !important;
    gap:8px !important;
}
.hdm-v430-arrows button{
    width:44px !important;
    height:44px !important;
    border-radius:50%;
    display:grid;
    place-items:center;
    border:1px solid rgba(217,79,125,.52);
    color:#D94F7D;
    background:#08080b;
    font-size:18px;
    cursor:pointer;
}
.hdm-v430-arrows button:hover{
    background:#D94F7D;
    color:#fff;
}

/* Tighten the transition into All Profiles */
.hdm-v430-all-head{
    margin-bottom:20px !important;
}
.hdm-v430-all-head h2{
    font-size:clamp(46px,5vw,72px) !important;
}

/* Home profile collection: 100 queried, 4 columns desktop */
.hdm-v430-grid{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:12px !important;
}

@media(max-width:900px){
    .hdm-v436-spotlight-track > .hdm-v430-feature{
        flex-basis:calc((100% - 10px) / 2) !important;
        max-width:calc((100% - 10px) / 2) !important;
    }
    .hdm-v430-feature-media.hdm-v434-feature-media{
        height:165px !important;
        min-height:165px !important;
    }
    .hdm-v430-grid{
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    }
}

@media(max-width:620px){
    .hdm-v430-hero{
        padding-bottom:16px !important;
    }
    .hdm-v430-featured{
        padding-top:18px !important;
        padding-bottom:22px !important;
    }
    .hdm-v430-all{
        padding-top:24px !important;
    }

    .hdm-v430-featured .hdm-v430-section-title h2{
        font-size:34px !important;
    }

    /* Keep 2 featured profiles visible on mobile too */
    .hdm-v436-spotlight-track{
        gap:7px !important;
    }
    .hdm-v436-spotlight-track > .hdm-v430-feature{
        flex:0 0 calc((100% - 7px) / 2) !important;
        max-width:calc((100% - 7px) / 2) !important;
    }
    .hdm-v430-feature-media.hdm-v434-feature-media{
        height:112px !important;
        min-height:112px !important;
    }
    .hdm-v430-feature-badge{
        left:7px !important;
        top:7px !important;
        padding:5px 7px !important;
        font-size:6px !important;
    }
    .hdm-v430-feature-heart{
        right:7px !important;
        top:7px !important;
        width:29px !important;
        height:29px !important;
        font-size:15px !important;
    }
    .hdm-v430-feature-foot{
        min-height:42px !important;
        padding:7px 8px !important;
    }
    .hdm-v430-feature-foot strong{
        font-size:15px !important;
    }
    .hdm-v430-feature-foot>b{
        font-size:5.8px !important;
    }

    /* Required Home collection: 2 profiles per row on mobile */
    .hdm-v430-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:8px !important;
    }
}


/* ==========================================================
   V4.3.7 — REAL MULTI-PROFILE SPOTLIGHT SCROLL
========================================================== */
.hdm-v437-slider-tools{
    display:flex;
    align-items:center;
    gap:14px;
}
.hdm-v437-slider-count{
    color:#8f858a;
    font-size:10px;
    font-weight:800;
    letter-spacing:.12em;
    white-space:nowrap;
}
.hdm-v437-slider-count b{
    color:#D94F7D;
    font-style:normal;
}
.hdm-v437-slider-count i{
    color:#fff;
    font-style:normal;
}
.hdm-v436-spotlight-track{
    width:max-content !important;
    min-width:100% !important;
}
.hdm-v436-spotlight-track > .hdm-v430-feature{
    width:calc((100vw - 12px) / 2);
}
@media(min-width:1200px){
    .hdm-v436-spotlight-track > .hdm-v430-feature{
        width:calc((min(100vw, 1920px) - 12px) / 2);
    }
}
@media(max-width:620px){
    .hdm-v437-slider-count{display:none}
}


/* ==========================================================
   V4.3.8 — PERFORMANCE + STABLE SLIDER GEOMETRY
========================================================== */

/* Critical fix: track stays the viewport width; flex items overflow horizontally.
   This prevents giant blank panels caused by width:max-content calculations. */
.hdm-v436-spotlight-track{
    width:100% !important;
    min-width:100% !important;
    max-width:none !important;
    display:flex !important;
    flex-wrap:nowrap !important;
    align-items:stretch !important;
}

.hdm-v436-spotlight-track > .hdm-v430-feature{
    flex:0 0 calc((100% - 12px) / 2) !important;
    width:calc((100% - 12px) / 2) !important;
    max-width:calc((100% - 12px) / 2) !important;
    min-width:0 !important;
}

.hdm-v438-lazy-gallery img{
    content-visibility:auto;
}

.hdm-v438-photo-fallback{
    display:block;
    width:100%;
    height:100%;
    background:
        linear-gradient(135deg, rgba(217,79,125,.20), rgba(255,255,255,.03)),
        #111;
}

/* Smaller and tighter again */
.hdm-v430-featured{
    padding-top:16px !important;
    padding-bottom:20px !important;
}
.hdm-v430-featured .hdm-v430-section-title{
    margin-bottom:10px !important;
}
.hdm-v430-featured .hdm-v430-section-title h2{
    font-size:clamp(34px,3.6vw,52px) !important;
}
.hdm-v430-feature-media.hdm-v434-feature-media{
    height:165px !important;
    min-height:165px !important;
}
.hdm-v430-feature-foot{
    min-height:46px !important;
    padding:7px 10px !important;
}
.hdm-v430-feature-foot strong{
    font-size:18px !important;
}

@media(max-width:620px){
    .hdm-v436-spotlight-track{
        gap:7px !important;
    }
    .hdm-v436-spotlight-track > .hdm-v430-feature{
        flex-basis:calc((100% - 7px) / 2) !important;
        width:calc((100% - 7px) / 2) !important;
        max-width:calc((100% - 7px) / 2) !important;
    }
    .hdm-v430-feature-media.hdm-v434-feature-media{
        height:102px !important;
        min-height:102px !important;
    }
}


/* ==========================================================
   V4.3.9 — 100 PROFILES + PREMIUM PAGINATION
========================================================== */

.hdm-v439-pagination{
    margin:38px auto 54px;
    text-align:center;
}

.hdm-v439-page-label{
    margin-bottom:18px;
    color:#fff;
    font-size:18px;
    font-weight:900;
    letter-spacing:.06em;
}

.hdm-v439-page-links{
    display:flex;
    justify-content:center;
    align-items:center;
    flex-wrap:wrap;
    gap:10px;
}

.hdm-v439-page-links .page-numbers{
    min-width:54px;
    height:54px;
    padding:0 16px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(217,79,125,.42);
    border-radius:14px;
    color:#D94F7D;
    background:#08080b;
    text-decoration:none;
    font-size:17px;
    font-weight:900;
    transition:.2s ease;
}

.hdm-v439-page-links .page-numbers:hover{
    border-color:#D94F7D;
    background:rgba(217,79,125,.10);
}

.hdm-v439-page-links .page-numbers.current{
    color:#fff;
    background:#D94F7D;
    border-color:#D94F7D;
}

.hdm-v439-page-links .next,
.hdm-v439-page-links .prev{
    padding:0 22px;
}

@media(max-width:620px){
    .hdm-v439-pagination{
        margin:28px auto 38px;
    }
    .hdm-v439-page-label{
        font-size:14px;
        margin-bottom:14px;
    }
    .hdm-v439-page-links{
        gap:7px;
    }
    .hdm-v439-page-links .page-numbers{
        min-width:42px;
        height:42px;
        padding:0 12px;
        border-radius:11px;
        font-size:14px;
    }
}


/* ==========================================================
   V4.4.0 — NATIVE PRIORITY BADGES + PAGINATION
========================================================== */
.hdm-tier-badge{
    position:absolute;
    top:14px;
    left:14px;
    z-index:30;
    min-width:58px;
    padding:8px 11px;
    border-radius:999px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-size:10px;
    font-weight:950;
    letter-spacing:.06em;
    line-height:1;
    text-transform:uppercase;
    box-shadow:0 8px 20px rgba(0,0,0,.22);
}
.hdm-tier-vip{
    color:#17120a;
    background:linear-gradient(135deg,#f6df8a,#d8b844);
    border:1px solid rgba(255,240,176,.72);
}
.hdm-tier-premium{
    color:#fff;
    background:#D94F7D;
    border:1px solid #ef78a2;
}
.hdm-tier-free{
    color:#fff;
    background:rgba(13,13,16,.88);
    border:1px solid rgba(255,255,255,.25);
}
.hdm-tier-custom{
    color:#fff;
    background:#5d5260;
    border:1px solid rgba(255,255,255,.18);
}
.hdm-rz-top-layer .rz-listing-priority{
    display:none !important;
}

.hdm-v440-pagination{
    margin:32px auto 48px;
    text-align:center;
}
.hdm-v440-page-label{
    margin-bottom:16px;
    color:#fff;
    font-size:17px;
    font-weight:950;
    letter-spacing:.06em;
}
.hdm-v440-page-links{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:9px;
}
.hdm-v440-page-links .page-numbers,
.hdm-v440-nav{
    min-width:50px;
    height:50px;
    padding:0 15px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:13px;
    border:1px solid rgba(217,79,125,.42);
    background:#08080b;
    color:#D94F7D;
    text-decoration:none;
    font-size:16px;
    font-weight:900;
    cursor:pointer;
    transition:.2s ease;
}
.hdm-v440-page-links .page-numbers:hover,
.hdm-v440-nav:hover{
    color:#fff;
    border-color:#D94F7D;
    background:rgba(217,79,125,.13);
    transform:translateY(-1px);
}
.hdm-v440-page-links .page-numbers.current{
    color:#fff;
    background:#D94F7D;
    border-color:#D94F7D;
}
.hdm-v440-nav{
    padding:0 20px;
}
.hdm-v440-nav.disabled{
    opacity:.34;
    cursor:not-allowed;
    pointer-events:none;
}

@media(max-width:620px){
    .hdm-tier-badge{
        top:8px;
        left:8px;
        min-width:44px;
        padding:6px 8px;
        font-size:7px;
    }
    .hdm-v440-page-label{
        font-size:13px;
    }
    .hdm-v440-page-links{
        gap:6px;
    }
    .hdm-v440-page-links .page-numbers,
    .hdm-v440-nav{
        min-width:40px;
        height:40px;
        padding:0 11px;
        border-radius:10px;
        font-size:13px;
    }
}


/* ==========================================================
   V4.4.1 — ROUTIZ EXPLORE 100/PAGE + REAL PAGINATION
========================================================== */

.hdm-v441-listing-summary{
    margin:18px 0 22px;
}

.hdm-v441-sorting{
    color:#D94F7D !important;
    font-weight:900;
}

/* 4 desktop / 2 mobile */
.hdm-v441-listings-grid{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:14px !important;
}

.hdm-v441-listings-grid > .rz-listing-item{
    width:auto !important;
    max-width:none !important;
    min-width:0 !important;
    margin:0 !important;
}

/* Priority labels */
.hdm-tier-badge{
    position:absolute !important;
    top:14px !important;
    left:14px !important;
    z-index:50 !important;
}

.hdm-tier-vip{
    background:linear-gradient(135deg,#f6df8a,#d8b844) !important;
    color:#161208 !important;
}

.hdm-tier-premium{
    background:#D94F7D !important;
    color:#fff !important;
}

.hdm-tier-free{
    background:#111116 !important;
    color:#fff !important;
    border:1px solid rgba(255,255,255,.28) !important;
}

/* Hide original Routiz priority marker to avoid duplicates */
.hdm-v441-listings-grid .rz-listing-priority,
.hdm-v441-listings-grid .rz-priority{
    display:none !important;
}

/* New real pagination - HookupsDM colors */
.hdm-v441-pagination{
    margin:36px auto 54px;
    text-align:center;
}

.hdm-v441-page-label{
    margin-bottom:18px;
    color:#fff;
    font-size:18px;
    line-height:1;
    font-weight:950;
    letter-spacing:.06em;
}

.hdm-v441-page-links{
    display:flex;
    justify-content:center;
    align-items:center;
    flex-wrap:wrap;
    gap:9px;
}

.hdm-v441-page-links .page-numbers,
.hdm-v441-nav{
    min-width:52px;
    height:52px;
    padding:0 16px;
    display:inline-flex;
    justify-content:center;
    align-items:center;
    border-radius:14px;
    border:1px solid rgba(217,79,125,.45);
    background:#08080b;
    color:#D94F7D;
    text-decoration:none !important;
    font-size:16px;
    font-weight:950;
    cursor:pointer;
    transition:.18s ease;
}

.hdm-v441-page-links .page-numbers:hover,
.hdm-v441-nav:hover{
    background:rgba(217,79,125,.14);
    border-color:#D94F7D;
    color:#fff;
}

.hdm-v441-page-links .page-numbers.current{
    background:#D94F7D;
    border-color:#D94F7D;
    color:#fff;
}

.hdm-v441-nav{
    padding:0 22px;
}

/* Kill old gold Routiz paging if another wrapper injects it */
.hdm-v441-explore-listings .rz-paging,
.hdm-v441-explore-listings .rz-pagination{
    display:none !important;
}

@media(max-width:980px){
    .hdm-v441-listings-grid{
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    }
}

@media(max-width:620px){
    .hdm-v441-listings-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:8px !important;
    }

    .hdm-v441-page-label{
        font-size:13px;
    }

    .hdm-v441-page-links{
        gap:6px;
    }

    .hdm-v441-page-links .page-numbers,
    .hdm-v441-nav{
        min-width:40px;
        height:40px;
        padding:0 11px;
        border-radius:10px;
        font-size:13px;
    }

    .hdm-v441-nav{
        padding:0 13px;
    }
}
