:root{--bg:#ffffff;--surface:#ffffff;--text:#000;--muted:#6b7280;--primary:#e91e63;--border:#e91e63;--footer-bg:#111;--footer-text:#fff}*{box-sizing:border-box}html{font-size:16px}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Arial,sans-serif;background:var(--bg);color:var(--text);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto}a{color:var(--primary);text-decoration:none}.container{max-width:1120px;margin:0 auto;padding:0 16px}main.container{padding-top:6px;padding-bottom:6px}.site-header{background:#fff;border-bottom:1px solid var(--border)}.header-bar{display:flex;align-items:center;justify-content:center;padding:10px 0}.brand{margin:0}.brand a{display:inline-flex;align-items:center;gap:10px;color:var(--primary);font-size:18px;font-weight:900}.brand img{display:block;width:32px;height:32px}.breadcrumb-wrap{margin:8px 0 10px}.breadcrumb{display:flex;flex-wrap:wrap;list-style:none;gap:0;margin:0;padding:0;font-size:14px;color:var(--text)}.breadcrumb-item+.breadcrumb-item::before{content:">";padding:0 8px;color:#666}.breadcrumb-item.active{font-weight:700}.city-head,.home-city-head{text-align:center;padding:4px 0}.city-head h1,.home-city-head h1{margin:0 0 6px;line-height:1.2;font-size:20px;font-weight:900;color:var(--text)}.city-description,.home-city-description,.city-shortcode{margin:0;padding:0}.city-shortcode{padding-top:6px}.city-description>*:first-child,.home-city-description>*:first-child,.city-shortcode>*:first-child{margin-top:0}.city-description>*:last-child,.home-city-description>*:last-child,.city-shortcode>*:last-child{margin-bottom:0}.city-description p,.home-city-description p,.city-shortcode p{margin:0 0 8px;color:var(--text);font-size:16px;line-height:1.5}.city-description h2,.home-city-description h2,.city-shortcode h2,.city-description h3,.home-city-description h3,.city-shortcode h3,.city-description h4,.home-city-description h4,.city-shortcode h4,.city-description h5,.home-city-description h5,.city-shortcode h5,.city-description h6,.home-city-description h6,.city-shortcode h6{margin:12px 0 8px;color:var(--text);line-height:1.3;font-weight:900;font-size:18px}.city-description ul,.home-city-description ul,.city-shortcode ul,.city-description ol,.home-city-description ol,.city-shortcode ol{margin:0 0 10px;padding-left:20px}.city-description li,.home-city-description li,.city-shortcode li{margin:0 0 6px;color:var(--text)}.city-description img,.home-city-description img,.city-shortcode img{display:block;margin:10px auto;border-radius:12px}.gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:10px 0}.gallery-item{overflow:hidden;border:1px solid var(--border);border-radius:12px;background:#fff}.gallery-item a{display:block}.gallery-item img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:fill;background:#fff}.btn,.fixed-contact-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 14px;border-radius:8px;text-align:center;border:2px solid purple;background:#fff;color:var(--primary);font-weight:700}.btn.phone,.fixed-contact-btn.call{background:var(--primary);border-color:var(--primary);color:#fff}.btn.whatsapp,.fixed-contact-btn.whatsapp{background:#075E24;border-color:#075E24;color:#fff}.icon{display:inline-flex;width:1.1em;height:1.1em;align-items:center;justify-content:center;line-height:1;font-style:normal}.icon-phone::before{content:"☎"}.icon-whatsapp::before{content:"✆"}.icon-telegram::before{content:"➤"}.has-fixed-contact{padding-bottom:66px}.fixed-contact-bar{position:fixed;left:0;right:0;bottom:0;z-index:9999;display:flex;width:100%;background:#000}.fixed-contact-btn{width:50%;flex:0 0 50%;border-radius:0;border:0;font-size:16px}.site-footer{margin-top:10px;border-top:1px solid var(--border);background:#fff;text-align:center}.footer-inner{padding:16px 0}.footer-links{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}.footer-link,.footer-sep,.footer-copy{color:#000}.footer-copy{margin:8px 0 0;font-size:16px;line-height:1.4}.city-footer-dropdown{display:flex;justify-content:center;padding:10px;background:var(--footer-bg);border-top:1px solid rgba(255,255,255,.08)}.city-footer-select{width:min(420px,100%);padding:10px 12px;border-radius:8px;border:1px solid rgba(255,255,255,.16);background:#0b0b0b;color:var(--footer-text);font-size:14px;outline:none}.city-footer-select:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(233,30,99,.2)}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}@media (min-width:601px){.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1025px){.gallery-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}@media (max-width:768px){.container{padding:0 14px}.brand a{font-size:16px}.brand img{width:24px;height:24px}.city-head h1,.home-city-head h1{font-size:20px}.city-description p,.home-city-description p,.city-shortcode p{font-size:16px}}
.btn{margin:2px 4px}.icon-img{display:inline-block;width:20px;height:20px;object-fit:fill;vertical-align:middle;flex:0 0 20px}.fixed-contact-btn .icon-img{width:20px;height:20px}.fixed-contact-btn{gap:10px}

html,body{max-width:100%;overflow-x:hidden;overflow-y:auto}
body.has-fixed-contact{padding-bottom:90px!important}
.fixed-contact-bar{min-height:64px}
.fixed-contact-btn{gap:10px;font-size:16px;padding:14px 10px;touch-action:manipulation}
.fixed-contact-btn .fa,.btn .fa{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;font-style:normal;font-size:18px;line-height:1;flex:0 0 20px}
.fa-phone:before{content:"☎"}
.fa-whatsapp:before{content:"✆"}
.icon-img{display:none!important}
.city-footer-dropdown,.site-footer{scroll-margin-bottom:90px}


/* === FINAL FIXED CONTACT BAR OVERRIDE === */
html, body{overflow-x:hidden}
.fixed-contact-bar,
.fixed-contact-bar *,
.fixed-contact-btn,
.fixed-contact-btn *{box-sizing:border-box}
body.has-fixed-contact{padding-bottom:40px!important}
.fixed-contact-bar{position:fixed;left:0;right:0;bottom:0;display:flex;align-items:stretch;width:100%;height:40px;min-height:40px;max-height:40px;background:#000;margin:0;padding:0;z-index:9999;overflow:hidden}
.fixed-contact-btn{flex:1 1 50%;width:50%;height:40px;min-height:40px;max-height:40px;display:flex;align-items:center;justify-content:center;gap:6px;padding:0;margin:0;border:0!important;border-radius:0!important;line-height:1!important;font-size:14px!important;font-weight:600!important;text-decoration:none;white-space:nowrap;overflow:hidden}
.fixed-contact-btn span{display:inline-block;line-height:1!important;font-size:14px!important;font-weight:600!important;margin:0;padding:0}
.fixed-contact-btn .contact-svg-icon,.fixed-contact-btn .icon-img,.fixed-contact-btn svg{display:inline-block;width:18px!important;height:18px!important;min-width:18px!important;max-width:18px!important;max-height:18px!important;flex:0 0 18px!important;vertical-align:middle}
.fixed-contact-btn .fa,.fixed-contact-btn i{display:inline-flex;align-items:center;justify-content:center;width:18px!important;height:18px!important;font-size:18px!important;line-height:1!important;flex:0 0 18px!important}
.city-footer-dropdown,.site-footer{scroll-margin-bottom:40px}

/* === FINAL GALLERY IMAGE BOX FILL FIX (no top/bottom background gap) === */
.gallery-grid{
  display:grid !important;
  align-items:stretch !important;
}
.gallery-item{
  position:relative !important;
  width:100% !important;
  aspect-ratio:4/5 !important;
  overflow:hidden !important;
  background:transparent !important;
  border:1px solid var(--border) !important;
  border-radius:12px !important;
}
.gallery-item a{
  position:absolute !important;
  inset:0 !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  background:transparent !important;
}
.gallery-item img,
.gallery-img{
  position:absolute !important;
  inset:0 !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  min-width:100% !important;
  min-height:100% !important;
  max-width:none !important;
  aspect-ratio:auto !important;
  object-fit:fill !important;
  object-position:center center !important;
  background:transparent !important;
  border:0 !important;
  margin:0 !important;
  padding:0 !important;
}
.city-description .gallery-grid img,
.home-city-description .gallery-grid img,
.city-shortcode .gallery-grid img{
  margin:0 !important;
  border-radius:0 !important;
}
@media(max-width:768px){
  .gallery-item{aspect-ratio:4/5 !important;}
}


/* PageSpeed UX fixes: contrast + image aspect ratio */
:root{--primary:#b0004b!important;--border:#b0004b!important;--text:#000000!important;--muted:#374151!important;}
body,p,li,.list-text,.card-text,.modal-body,.breadcrumb,.breadcrumb-item.active,.footer-copy,.footer-link{color:#000000!important;}
a,.brand a,.breadcrumb a,a:-webkit-any-link{color:#b0004b!important;}
.btn.phone,.fixed-contact-btn.call{background:#b0004b!important;border-color:#b0004b!important;color:#ffffff!important;}
.btn.whatsapp,.fixed-contact-btn.whatsapp{background:#075E24!important;border-color:#075E24!important;color:#ffffff!important;}
.gallery-item,.gallery-grid .gallery-item{background:transparent!important;overflow:hidden!important;border:1px solid #b0004b!important;border-radius:12px!important;}
.gallery-item a{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:100%!important;background:transparent!important;}
.gallery-item img,.gallery-img,.city-description .gallery-grid img,.home-city-description .gallery-grid img,.city-shortcode .gallery-grid img{position:static!important;display:block!important;width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;max-width:100%!important;max-height:100%!important;aspect-ratio:auto!important;object-fit:fill!important;object-position:center center!important;background:transparent!important;border:0!important;margin:0!important;padding:0!important;}
.gallery-item{aspect-ratio:4/5!important;}
.list-thumb,.post-image{object-fit:fill!important;background:transparent!important;}


/* Final UX fix: WhatsApp contrast + full-box images */
.btn.whatsapp,
.fixed-contact-btn.whatsapp,
a.fixed-contact-btn.whatsapp{
  background:#075E24!important;
  border-color:#075E24!important;
  color:#ffffff!important;
}
.btn.whatsapp span,
.fixed-contact-btn.whatsapp span,
a.fixed-contact-btn.whatsapp span,
.fixed-contact-btn.whatsapp .icon,
.fixed-contact-btn.whatsapp svg{
  color:#ffffff!important;
  fill:#ffffff!important;
  opacity:1!important;
}
.gallery-item,
.gallery-grid .gallery-item,
.city-description .gallery-grid .gallery-item,
.home-city-description .gallery-grid .gallery-item,
.city-shortcode .gallery-grid .gallery-item{
  background:transparent!important;
  overflow:hidden!important;
}
.gallery-item a{
  background:transparent!important;
}
.gallery-item img,
.gallery-img,
.city-description .gallery-grid img,
.home-city-description .gallery-grid img,
.city-shortcode .gallery-grid img,
.list-thumb,
.post-image,
.card-img{
  width:100%!important;
  height:100%!important;
  object-fit:fill!important;
  object-position:center center!important;
  background:transparent!important;
}


/* Final PageSpeed aspect-ratio fix:
   Do not force gallery images into a fixed 4:5 box.
   Images keep natural ratio so Lighthouse/PageSpeed stops reporting incorrect aspect ratio.
*/
.gallery-grid,
.city-description .gallery-grid,
.home-city-description .gallery-grid,
.city-shortcode .gallery-grid{
  align-items:start!important;
}
.gallery-item,
.gallery-grid .gallery-item,
.city-description .gallery-grid .gallery-item,
.home-city-description .gallery-grid .gallery-item,
.city-shortcode .gallery-grid .gallery-item{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  overflow:hidden!important;
  background:transparent!important;
}
.gallery-item a,
.gallery-grid .gallery-item a{
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  background:transparent!important;
}
.gallery-item img,
.gallery-img,
.city-description .gallery-grid img,
.home-city-description .gallery-grid img,
.city-shortcode .gallery-grid img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:transparent!important;
  margin:0!important;
  padding:0!important;
}


/* FINAL gallery visible + PageSpeed aspect ratio fix
   Gallery files are normalized to 400x500 (4:5), so displayed box and actual image ratio match.
*/
.gallery-grid,
.city-description .gallery-grid,
.home-city-description .gallery-grid,
.city-shortcode .gallery-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  margin:10px 0!important;
  align-items:stretch!important;
}
@media (min-width:601px){
  .gallery-grid,
  .city-description .gallery-grid,
  .home-city-description .gallery-grid,
  .city-shortcode .gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
}
@media (min-width:1025px){
  .gallery-grid,
  .city-description .gallery-grid,
  .home-city-description .gallery-grid,
  .city-shortcode .gallery-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important;}
}
.gallery-item,
.gallery-grid .gallery-item,
.city-description .gallery-grid .gallery-item,
.home-city-description .gallery-grid .gallery-item,
.city-shortcode .gallery-grid .gallery-item{
  display:block!important;
  width:100%!important;
  aspect-ratio:4/5!important;
  height:auto!important;
  min-height:0!important;
  overflow:hidden!important;
  background:#fff!important;
  border:1px solid #b0004b!important;
  border-radius:12px!important;
  margin:0!important;
  padding:0!important;
}
.gallery-item a,
.gallery-grid .gallery-item a{
  display:block!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
}
.gallery-item img,
.gallery-img,
.city-description .gallery-grid img,
.home-city-description .gallery-grid img,
.city-shortcode .gallery-grid img{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:100%!important;
  height:100%!important;
  min-width:100%!important;
  min-height:100%!important;
  max-width:none!important;
  max-height:none!important;
  aspect-ratio:4/5!important;
  object-fit:fill!important;
  object-position:center center!important;
  background:#fff!important;
  border:0!important;
  margin:0!important;
  padding:0!important;
}

/* Final PageSpeed gallery fix: exact 4:5 display, no white side gap, no aspect-ratio mismatch. */
.gallery-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;margin:10px 0!important;align-items:start!important;}
@media (min-width:601px){.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}}
@media (min-width:1025px){.gallery-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important;}}
.gallery-item{display:block!important;overflow:hidden!important;border:1px solid var(--border,#e91e63)!important;border-radius:12px!important;background:#fff!important;aspect-ratio:4/5!important;line-height:0!important;}
.gallery-item a{display:block!important;width:100%!important;height:100%!important;line-height:0!important;}
.gallery-item img,.gallery-img{display:block!important;width:100%!important;height:100%!important;max-width:100%!important;aspect-ratio:4/5!important;object-fit:cover!important;object-position:center center!important;background:transparent!important;margin:0!important;padding:0!important;border:0!important;}
.fixed-contact-btn.whatsapp,.btn.whatsapp{background:#075e24!important;border-color:#075e24!important;color:#fff!important;}
.fixed-contact-btn.whatsapp span,.btn.whatsapp span{color:#fff!important;font-weight:800!important;}
 body.has-fixed-contact{padding-bottom:48px!important;} .fixed-contact-bar{position:fixed!important;left:0!important;right:0!important;bottom:0!important;display:flex!important;align-items:stretch!important;width:100%!important;height:48px!important;min-height:48px!important;max-height:48px!important;background:#000!important;margin:0!important;padding:0!important;z-index:9999!important;overflow:hidden!important;} .fixed-contact-btn{flex:1 1 50%!important;width:50%!important;height:48px!important;min-height:48px!important;max-height:48px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;padding:0 8px!important;margin:0!important;border:0!important;border-radius:0!important;line-height:1!important;font-size:15px!important;font-weight:700!important;text-decoration:none!important;white-space:nowrap!important;overflow:hidden!important;} .fixed-contact-btn span{display:inline-block!important;line-height:1!important;font-size:15px!important;font-weight:700!important;margin:0!important;padding:0!important;} .fixed-contact-btn .contact-svg-icon,.fixed-contact-btn .icon-img,.fixed-contact-btn svg{display:inline-block!important;width:22px!important;height:22px!important;min-width:22px!important;max-width:22px!important;max-height:22px!important;flex:0 0 22px!important;vertical-align:middle!important;} .fixed-contact-btn .fa,.fixed-contact-btn i{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:22px!important;height:22px!important;font-size:22px!important;line-height:1!important;flex:0 0 22px!important;} @media (max-width:480px){body.has-fixed-contact{padding-bottom:46px!important;} .fixed-contact-bar{height:46px!important;min-height:46px!important;max-height:46px!important;} .fixed-contact-btn{height:46px!important;min-height:46px!important;max-height:46px!important;font-size:15px!important;gap:7px!important;} .fixed-contact-btn span{font-size:15px!important;} .fixed-contact-btn .contact-svg-icon,.fixed-contact-btn .icon-img,.fixed-contact-btn svg{width:21px!important;height:21px!important;min-width:21px!important;max-width:21px!important;max-height:21px!important;flex-basis:21px!important;} .fixed-contact-btn .fa,.fixed-contact-btn i{width:21px!important;height:21px!important;font-size:21px!important;flex-basis:21px!important;}} 
/* === ADMIN PANEL CLEAN BLACK/WHITE RESPONSIVE FIX === */
body:has(.admin-shell), .admin-shell{background:#fff!important;color:#000!important;}
.admin-content,.admin-topbar, .admin-sidebar, .admin-sidebar .brand, .stat-card, .card, .dashboard .stat-card{background:#fff!important;color:#000!important;}
.admin-sidebar{border-right:2px solid #E91E63!important;}
.admin-sidebar .brand strong{color:#000!important;font-size:22px!important;display:block;text-align:center;}
.admin-nav{display:flex!important;flex-direction:column!important;gap:10px!important;}
.admin-nav a{display:block!important;background:#fff!important;color:#000!important;border:2px solid #E91E63!important;border-radius:12px!important;padding:12px 10px!important;font-weight:800!important;text-align:center!important;text-decoration:none!important;white-space:normal!important;line-height:1.2!important;}
.admin-nav a:hover,.admin-nav a:focus{background:#E91E63!important;color:#fff!important;outline:none!important;}
.admin-topbar{border-bottom:2px solid #E91E63!important;margin-bottom:16px!important;padding:14px 0!important;}
.topbar-title{color:#000!important;font-size:22px!important;font-weight:900!important;}.topbar-user{color:#000!important;font-weight:700!important;word-break:break-word;}
main.container h1, main.container h2, main.container h3, main.container h4, .section-title{color:#000!important;font-weight:900!important;}
.table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid #E91E63;border-radius:12px;background:#fff;margin:10px 0;}
.table{width:100%;border-collapse:collapse;background:#fff!important;color:#000!important;}
.table th,.table td{color:#000!important;background:#fff!important;border-bottom:1px solid #E91E63!important;padding:10px 8px!important;vertical-align:top;}
.table th{font-weight:900;background:#f7f7f7!important;}
.input,select,textarea,input[type=text],input[type=email],input[type=password],input[type=tel],input[type=url],input[type=number]{background:#fff!important;color:#000!important;border:2px solid #E91E63!important;border-radius:10px!important;padding:11px 10px!important;font-size:16px!important;}
label{color:#000!important;font-weight:800!important;display:block;margin:6px 0!important;}
.btn,button.btn,input[type=submit]{background:#E91E63!important;color:#fff!important;border:2px solid #000!important;border-radius:10px!important;padding:11px 16px!important;font-size:15px!important;font-weight:900!important;text-align:center!important;}
.btn.secondary{background:#fff!important;color:#000!important;border:2px solid #E91E63!important;}
.alert{border:2px solid #E91E63!important;border-radius:12px!important;color:#000!important;background:#fff!important;}.alert.success{background:#eaffef!important;color:#085c18!important}.alert.error{background:#fff0f0!important;color:#9b0000!important}
.site-footer{background:#fff!important;color:#000!important;border-top:2px solid #E91E63!important;}.site-footer p{color:#000!important;}
@media(max-width:960px){.admin-content{width:100%!important}.admin-sidebar{background:#fff!important;color:#000!important}.admin-nav a{font-size:15px!important;padding:13px 10px!important}.admin-topbar{min-height:68px!important}.dashboard{grid-template-columns:1fr!important}.form-row{grid-template-columns:1fr!important}.table{font-size:14px!important}.mobile-menu-toggle{display:flex!important}.mobile-menu-overlay.active{display:block!important}}
@media(max-width:520px){main.container{padding:0 10px!important}.admin-topbar{padding-left:60px!important}.topbar-title{font-size:18px!important}.table th,.table td{padding:9px 7px!important}.btn{width:100%;margin:4px 0}.admin-nav a{font-size:14px!important}}

/* === FINAL H1 SIZE 18PX FIX === */
html body h1,
html body .page-title,
html body .city-head h1,
html body .home-city-head h1,
html body .city-description h1,
html body .home-city-description h1,
html body .city-shortcode h1,
html body main.container h1 {
  font-size:18px!important;
  line-height:1.35!important;
}
@media(max-width:768px){
  html body h1,
  html body .page-title,
  html body .city-head h1,
  html body .home-city-head h1,
  html body .city-description h1,
  html body .home-city-description h1,
  html body .city-shortcode h1,
  html body main.container h1 {
    font-size:18px!important;
  }
}
/* === FINAL H1 SIZE 18PX FIX END === */

/* === FINAL CONTACT SHORTCODE TELEGRAM + CONDITIONAL BUTTON FIX === */
.fixed-contact-bar{display:flex!important;align-items:stretch!important;width:100%!important;}
.fixed-contact-btn{flex:1 1 0!important;width:auto!important;min-width:0!important;}
.fixed-contact-btn.telegram,.btn.telegram,a.fixed-contact-btn.telegram,a.btn.telegram{background:#229ED9!important;background-color:#229ED9!important;border-color:#229ED9!important;color:#fff!important;}
.fixed-contact-btn.telegram span,.btn.telegram span,.fixed-contact-btn.telegram svg,.btn.telegram svg,.fixed-contact-btn.telegram svg *,.btn.telegram svg *{color:#fff!important;fill:#fff!important;}
.fixed-contact-btn.call,.btn.phone{background:#b0004b!important;border-color:#b0004b!important;color:#fff!important;}
.fixed-contact-btn.whatsapp,.btn.whatsapp{background:#075e24!important;border-color:#075e24!important;color:#fff!important;}
.fixed-contact-btn.call span,.fixed-contact-btn.whatsapp span,.fixed-contact-btn.telegram span,.btn.phone span,.btn.whatsapp span,.btn.telegram span{color:#fff!important;}
.fixed-contact-btn.disabled{display:none!important;}
/* === FINAL CONTACT SHORTCODE TELEGRAM + CONDITIONAL BUTTON FIX END === */




/* === MOBILE THREE-CONTACT BUTTON TEXT FIX START ===
   When Call + WhatsApp + Telegram are visible together, each button gets
   one-third of the screen. Replace the long phone number with a short,
   readable "Call" label on mobile and tighten spacing so no text is cut. */
@media (max-width: 600px) {
  .fixed-contact-bar[data-contact-buttons="3"] .fixed-contact-btn {
    flex: 1 1 33.333% !important;
    width: 33.333% !important;
    min-width: 0 !important;
    gap: 4px !important;
    padding-left: 3px !important;
    padding-right: 3px !important;
    font-size: 12px !important;
  }

  .fixed-contact-bar[data-contact-buttons="3"] .fixed-contact-btn span {
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
    font-size: 12px !important;
    line-height: 1 !important;
  }

  .fixed-contact-bar[data-contact-buttons="3"] .fixed-contact-btn .contact-svg-icon,
  .fixed-contact-bar[data-contact-buttons="3"] .fixed-contact-btn .icon-img,
  .fixed-contact-bar[data-contact-buttons="3"] .fixed-contact-btn svg,
  .fixed-contact-bar[data-contact-buttons="3"] .fixed-contact-btn i {
    width: 17px !important;
    height: 17px !important;
    min-width: 17px !important;
    max-width: 17px !important;
    max-height: 17px !important;
    flex: 0 0 17px !important;
    font-size: 17px !important;
  }

  .fixed-contact-bar[data-contact-buttons="3"] .fixed-contact-btn.call span {
    font-size: 0 !important;
  }

  .fixed-contact-bar[data-contact-buttons="3"] .fixed-contact-btn.call span::after {
    content: "Call";
    display: inline-block;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    color: #fff !important;
    white-space: nowrap !important;
  }
}
/* === MOBILE THREE-CONTACT BUTTON TEXT FIX END === */

/* === EXTERNAL CONTACT ICON CSS === */
.contact-svg-icon{display:inline-block;width:18px;height:18px;min-width:18px;vertical-align:middle;flex:0 0 18px}
.fixed-contact-btn .contact-svg-icon,.btn.phone .contact-svg-icon,.btn.whatsapp .contact-svg-icon,.btn.telegram .contact-svg-icon{display:inline-block;width:18px;height:18px;min-width:18px;vertical-align:middle;flex:0 0 18px}
.fixed-contact-btn,.btn.phone,.btn.whatsapp,.btn.telegram{display:inline-flex;align-items:center;justify-content:center;gap:6px;line-height:1}
.fixed-contact-btn{flex:1 1 0!important;width:auto!important}
.fixed-contact-btn span,.btn.phone span,.btn.whatsapp span,.btn.telegram span{display:inline-block;vertical-align:middle;font-size:14px;font-weight:600;line-height:1}
.fixed-contact-btn.telegram,.btn.telegram{background:#229ED9!important;border-color:#229ED9!important;color:#fff!important}
.fixed-contact-btn.telegram span,.btn.telegram span,.fixed-contact-btn.telegram svg,.btn.telegram svg{color:#fff!important;fill:#fff!important}
.inline-contact-btn{display:inline-flex;margin:2px 4px}





/* === QUALITY / ACCESSIBILITY PATCH 2026-09 START === */
html{scroll-behavior:smooth}
.city-description,.home-city-description,.city-shortcode,.breadcrumb,.footer-copy{overflow-wrap:anywhere;word-break:normal}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid currentColor!important;outline-offset:3px!important}
.city-description table,.home-city-description table,.city-shortcode table{max-width:100%}
.city-description .table-wrap,.home-city-description .table-wrap,.city-shortcode .table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.city-interlink-btn,.footer-link{min-height:40px;display:inline-flex;align-items:center;justify-content:center}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
/* === QUALITY / ACCESSIBILITY PATCH 2026-09 END === */

/* === AGE VERIFICATION GATE START === */
.age-gate{position:fixed;inset:0;z-index:2147483000;display:none;align-items:center;justify-content:center;padding:22px;color:#fff}
.age-gate.is-visible{display:flex}
.age-gate-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.86);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.age-gate-dialog{position:relative;z-index:1;width:min(520px,100%);padding:30px 30px 24px;overflow:hidden;background:linear-gradient(155deg,#171717 0%,#0b0b0c 55%,#050506 100%);border:2px solid var(--primary,#b0004b);border-radius:22px;box-shadow:0 28px 90px rgba(0,0,0,.62),0 0 34px color-mix(in srgb,var(--primary,#b0004b) 34%,transparent);text-align:center;color:#fff}
.age-gate-dialog:before{content:"";position:absolute;inset:-90px -70px auto;height:190px;pointer-events:none;background:radial-gradient(circle at 50% 0,color-mix(in srgb,var(--primary,#b0004b) 35%,transparent),transparent 68%);opacity:.9}
.age-gate-dialog:after{content:"";position:absolute;left:12%;right:12%;bottom:0;height:2px;background:linear-gradient(90deg,transparent,var(--primary,#b0004b),transparent);opacity:.8}
.age-gate-brand{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:9px;margin-bottom:18px}
.age-gate-logo-wrap{width:74px;height:74px;display:flex;align-items:center;justify-content:center;padding:7px;border-radius:18px;background:#fff;border:1px solid color-mix(in srgb,var(--primary,#b0004b) 65%,#fff);box-shadow:0 8px 24px rgba(0,0,0,.28)}
.age-gate-logo{display:block;width:100%;height:100%;object-fit:contain;border-radius:11px}
.age-gate-site-name{max-width:100%;font-size:22px;font-weight:900;line-height:1.2;letter-spacing:.3px;color:#fff;overflow-wrap:anywhere}
.age-gate-badge{position:relative;z-index:1;width:92px;height:92px;margin:0 auto 16px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#0a0a0b;color:#fff;border:4px solid var(--primary,#b0004b);box-shadow:0 0 0 6px color-mix(in srgb,var(--primary,#b0004b) 16%,transparent),0 0 28px color-mix(in srgb,var(--primary,#b0004b) 48%,transparent);font-size:34px;font-weight:950;line-height:1}
.age-gate-title{position:relative;z-index:1;margin:0 0 12px!important;font-size:29px!important;line-height:1.16!important;text-align:center!important;text-transform:uppercase;letter-spacing:.3px;color:#fff!important}
.age-gate-title span{color:#fff!important}
.age-gate-text{position:relative;z-index:1;margin:0 auto 23px;max-width:420px;font-size:15.5px;line-height:1.6;color:#fff!important}
.age-gate-actions{position:relative;z-index:1;display:grid;grid-template-columns:1.35fr 1fr;gap:11px}
.age-gate-btn{min-height:50px;border-radius:11px;padding:12px 17px;font:inherit;font-size:15.5px;font-weight:900;cursor:pointer;transition:transform .15s ease,filter .15s ease,box-shadow .15s ease;border:1px solid transparent}
.age-gate-btn:hover{transform:translateY(-1px);filter:brightness(1.06)}
.age-gate-btn:active{transform:translateY(0)}
.age-gate-btn:focus-visible{outline:3px solid #fff;outline-offset:3px}
.age-gate-enter{display:flex;align-items:center;justify-content:center;gap:10px;background:var(--primary,#b0004b);color:#fff;box-shadow:0 9px 25px color-mix(in srgb,var(--primary,#b0004b) 36%,transparent)}
.age-gate-arrow{font-size:22px;line-height:1}
.age-gate-exit{background:#202124;color:#fff!important;border-color:#55585e}
.age-gate-note{position:relative;z-index:1;margin:16px auto 0;max-width:390px;font-size:11.5px;line-height:1.45;letter-spacing:.15px;color:#fff!important}
body.age-gate-open{overflow:hidden!important}
@media(max-width:560px){.age-gate{padding:14px}.age-gate-dialog{padding:24px 17px 19px;border-radius:17px}.age-gate-logo-wrap{width:64px;height:64px}.age-gate-site-name{font-size:19px}.age-gate-badge{width:78px;height:78px;font-size:29px;border-width:3px}.age-gate-title{font-size:24px!important}.age-gate-text{font-size:14px;line-height:1.55;margin-bottom:18px}.age-gate-actions{grid-template-columns:1fr}.age-gate-btn{min-height:48px}.age-gate-note{font-size:10.5px}}
.age-gate,.age-gate .age-gate-dialog,.age-gate .age-gate-site-name,.age-gate .age-gate-badge,.age-gate .age-gate-title,.age-gate .age-gate-title span,.age-gate .age-gate-text,.age-gate .age-gate-btn,.age-gate .age-gate-btn span,.age-gate .age-gate-note{color:#fff!important}
/* === AGE VERIFICATION GATE END === */


/* AGE GATE WHITE TEXT HARD OVERRIDE */
html body #ageVerificationGate,html body #ageVerificationGate *{color:#fff!important;-webkit-text-fill-color:#fff!important}


/* === USER POSTS START === */
.header-bar{justify-content:space-between;gap:14px}.post-free-ads{display:inline-flex;align-items:center;justify-content:center;padding:9px 14px;border-radius:9px;background:var(--primary,#b0004b);color:#fff!important;font-size:14px;font-weight:800;line-height:1.2;white-space:nowrap}.public-post-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:14px 0 18px;text-align:left}.public-post-card{overflow:hidden;border:1px solid var(--border,var(--primary));border-radius:13px;background:var(--surface,#fff)}.public-post-image-link{display:block;aspect-ratio:4/3;overflow:hidden;background:#171717}.public-post-image-link img{display:block;width:100%;height:100%;object-fit:fill;margin:0!important;border-radius:0!important}.public-post-card-body{padding:13px}.public-post-card h2{font-size:17px!important;line-height:1.35!important;margin:0 0 7px!important}.public-post-card h2 a{color:var(--primary,#b0004b)!important}.public-post-card p{font-size:14px!important;line-height:1.5!important;margin:0 0 10px!important}.public-post-read{display:inline-block;padding:7px 10px;border-radius:7px;background:var(--primary,#b0004b);color:#fff!important;font-weight:800;font-size:13px}.public-post-single{max-width:820px;margin:12px auto 22px;text-align:left;border:1px solid var(--border,var(--primary));border-radius:14px;padding:18px;background:var(--surface,#fff)}.public-post-single h1{margin:0 0 5px;font-size:27px;line-height:1.25}.public-post-meta{margin:0 0 14px;color:var(--muted);font-size:13px}.public-post-hero{display:block;width:100%;max-height:620px;object-fit:contain;border-radius:12px;margin:0 auto 17px}.public-post-content{font-size:16px;line-height:1.7;white-space:normal}@media(max-width:800px){.public-post-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.header-bar{padding:8px 0}.brand a{font-size:15px}.post-free-ads{padding:8px 10px;font-size:12px}.public-post-list{grid-template-columns:1fr;gap:11px}.public-post-card{display:grid;grid-template-columns:112px 1fr}.public-post-image-link{height:100%;aspect-ratio:auto}.public-post-card-body{padding:11px}.public-post-card h2{font-size:15px!important}.public-post-single{padding:14px}.public-post-single h1{font-size:23px}}
/* === USER POSTS END === */



/* === POST CARD MOBILE + AJAX PAGINATION PATCH 2026-09-20 === */
.public-post-card-body p{margin-bottom:0!important}
.public-post-pagination{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin:16px 0 22px}
.post-page-btn{appearance:none;border:1px solid var(--primary,#b0004b);background:var(--primary,#b0004b);color:#fff;border-radius:9px;padding:9px 14px;font-weight:800;cursor:pointer;min-width:88px}
.post-page-btn:disabled{opacity:.42;cursor:not-allowed}
.post-page-status{font-size:13px;font-weight:700;color:var(--text,#111827);padding:7px 10px}
#cityPostsRegion.is-loading{opacity:.55;pointer-events:none;transition:opacity .15s ease}
@media(max-width:600px){
  .public-post-list{grid-template-columns:1fr!important;gap:12px!important;margin:12px 0 16px!important}
  .public-post-card{display:block!important;width:100%!important;max-width:100%!important;border-radius:12px!important;overflow:hidden!important}
  .public-post-image-link{display:block!important;width:100%!important;height:auto!important;aspect-ratio:16/10!important;background:#171717!important}
  .public-post-image-link img{width:100%!important;height:100%!important;object-fit:fill!important}
  .public-post-card-body{padding:12px 13px 13px!important}
  .public-post-card h2{font-size:16px!important;line-height:1.35!important;margin:0 0 7px!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .public-post-card p{font-size:13.5px!important;line-height:1.5!important;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
  .public-post-pagination{gap:8px;margin:13px 0 18px}
  .post-page-btn{padding:9px 11px;min-width:82px;font-size:13px}
  .post-page-status{font-size:12px;padding:6px 3px}
}
/* === END POST CARD MOBILE + AJAX PAGINATION PATCH === */

/* === POST TITLE + BREADCRUMB PATCH 2026-09-20 === */
.breadcrumb-item+.breadcrumb-item::before{content:">"!important;padding:0 8px!important;}
.public-post-card h2,
.public-post-single h1{
  text-align:center!important;
  font-size:16px!important;
  line-height:1.35!important;
  margin:0 0 7px!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.public-post-card h2 a{display:block!important;text-align:center!important;}
.public-post-single .public-post-meta{text-align:center!important;margin:0 0 14px!important;}
@media(max-width:520px){
  .public-post-card h2,.public-post-single h1{font-size:15px!important;}
}
/* === END POST TITLE + BREADCRUMB PATCH === */
/* City post card image: slightly taller while keeping object-fit: fill */
body.city-page .public-post-image-link{aspect-ratio:5/4!important;height:auto!important;}
body.city-page .public-post-image-link img{width:100%!important;height:100%!important;object-fit:fill!important;}
@media(max-width:520px){body.city-page .public-post-image-link{aspect-ratio:5/4!important;height:auto!important;}}

/* === BREADCRUMB LITERAL SEPARATOR FIX 2026-09-20 === */
.breadcrumb-item+.breadcrumb-item::before{content:none!important;padding:0!important;}
.breadcrumb-separator{display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:0 8px!important;color:var(--text,#fff)!important;font-weight:700!important;list-style:none!important;}
/* === END BREADCRUMB LITERAL SEPARATOR FIX === */


/* === SINGLE POST BREADCRUMB + LARGE FIXED CONTACT PATCH 2026-09-20 === */
.single-post-breadcrumb{overflow:hidden!important;}
.single-post-breadcrumb .breadcrumb{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  width:100%!important;
  max-width:100%!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
.single-post-breadcrumb .breadcrumb-item,
.single-post-breadcrumb .breadcrumb-separator{
  flex:0 0 auto!important;
  white-space:nowrap!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
.single-post-breadcrumb .breadcrumb-item.active{
  flex:1 1 auto!important;
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

body.has-fixed-contact{padding-bottom:64px!important;}
.single-post-contact-bar{
  height:64px!important;
  min-height:64px!important;
  max-height:64px!important;
}
.single-post-contact-bar .fixed-contact-btn,
.single-post-contact-bar[data-contact-buttons="3"] .fixed-contact-btn{
  flex:1 1 0!important;
  width:auto!important;
  min-width:0!important;
  height:64px!important;
  min-height:64px!important;
  max-height:64px!important;
  padding:0 16px!important;
  gap:10px!important;
  font-size:18px!important;
  font-weight:800!important;
}
.single-post-contact-bar .fixed-contact-btn span,
.single-post-contact-bar[data-contact-buttons="3"] .fixed-contact-btn span,
.single-post-contact-bar[data-contact-buttons="3"] .fixed-contact-btn.call span{
  display:inline-block!important;
  font-size:18px!important;
  font-weight:800!important;
  line-height:1!important;
  white-space:nowrap!important;
  overflow:visible!important;
}
.single-post-contact-bar[data-contact-buttons="3"] .fixed-contact-btn.call span::after{
  content:none!important;
  display:none!important;
}
.single-post-contact-bar .fixed-contact-btn .contact-svg-icon,
.single-post-contact-bar .fixed-contact-btn svg,
.single-post-contact-bar[data-contact-buttons="3"] .fixed-contact-btn .contact-svg-icon,
.single-post-contact-bar[data-contact-buttons="3"] .fixed-contact-btn svg{
  width:28px!important;
  height:28px!important;
  min-width:28px!important;
  max-width:28px!important;
  max-height:28px!important;
  flex:0 0 28px!important;
}
@media(max-width:600px){
  body.has-fixed-contact{padding-bottom:58px!important;}
  .single-post-contact-bar{
    height:58px!important;
    min-height:58px!important;
    max-height:58px!important;
  }
  .single-post-contact-bar .fixed-contact-btn,
  .single-post-contact-bar[data-contact-buttons="3"] .fixed-contact-btn{
    height:58px!important;
    min-height:58px!important;
    max-height:58px!important;
    padding:0 6px!important;
    gap:7px!important;
    font-size:16px!important;
  }
  .single-post-contact-bar .fixed-contact-btn span,
  .single-post-contact-bar[data-contact-buttons="3"] .fixed-contact-btn span,
  .single-post-contact-bar[data-contact-buttons="3"] .fixed-contact-btn.call span{
    font-size:16px!important;
  }
  .single-post-contact-bar .fixed-contact-btn .contact-svg-icon,
  .single-post-contact-bar .fixed-contact-btn svg,
  .single-post-contact-bar[data-contact-buttons="3"] .fixed-contact-btn .contact-svg-icon,
  .single-post-contact-bar[data-contact-buttons="3"] .fixed-contact-btn svg{
    width:24px!important;
    height:24px!important;
    min-width:24px!important;
    max-width:24px!important;
    max-height:24px!important;
    flex:0 0 24px!important;
  }
}
@media(max-width:380px){
  .single-post-contact-bar .fixed-contact-btn,
  .single-post-contact-bar[data-contact-buttons="3"] .fixed-contact-btn{gap:5px!important;padding:0 4px!important;font-size:14px!important;}
  .single-post-contact-bar .fixed-contact-btn span,
  .single-post-contact-bar[data-contact-buttons="3"] .fixed-contact-btn span,
  .single-post-contact-bar[data-contact-buttons="3"] .fixed-contact-btn.call span{font-size:14px!important;}
  .single-post-contact-bar .fixed-contact-btn .contact-svg-icon,
  .single-post-contact-bar .fixed-contact-btn svg{width:22px!important;height:22px!important;min-width:22px!important;max-width:22px!important;max-height:22px!important;flex-basis:22px!important;}
}
/* === END SINGLE POST BREADCRUMB + LARGE FIXED CONTACT PATCH === */

/* === CITY INLINE CONTACT SHORTCODE = FIXED CONTACT DESIGN START === */
body.city-page .city-description a.btn.phone,
body.city-page .city-description a.btn.whatsapp,
body.city-page .city-description a.btn.telegram,
body.city-page .home-city-description a.btn.phone,
body.city-page .home-city-description a.btn.whatsapp,
body.city-page .home-city-description a.btn.telegram,
body.city-page .city-shortcode a.btn.phone,
body.city-page .city-shortcode a.btn.whatsapp,
body.city-page .city-shortcode a.btn.telegram {
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:48px!important;
  height:48px!important;
  gap:8px!important;
  padding:0 16px!important;
  margin:4px 2px!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:15px!important;
  font-weight:700!important;
  line-height:1!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  vertical-align:middle!important;
}
body.city-page .city-description a.btn.phone,
body.city-page .home-city-description a.btn.phone,
body.city-page .city-shortcode a.btn.phone {background:#b0004b!important;border-color:#b0004b!important;}
body.city-page .city-description a.btn.whatsapp,
body.city-page .home-city-description a.btn.whatsapp,
body.city-page .city-shortcode a.btn.whatsapp {background:#075e24!important;border-color:#075e24!important;}
body.city-page .city-description a.btn.telegram,
body.city-page .home-city-description a.btn.telegram,
body.city-page .city-shortcode a.btn.telegram {background:#229ED9!important;border-color:#229ED9!important;}
body.city-page .city-description a.btn.phone span,
body.city-page .city-description a.btn.whatsapp span,
body.city-page .city-description a.btn.telegram span,
body.city-page .home-city-description a.btn.phone span,
body.city-page .home-city-description a.btn.whatsapp span,
body.city-page .home-city-description a.btn.telegram span,
body.city-page .city-shortcode a.btn.phone span,
body.city-page .city-shortcode a.btn.whatsapp span,
body.city-page .city-shortcode a.btn.telegram span {
  display:inline-block!important;
  margin:0!important;
  padding:0!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:15px!important;
  font-weight:700!important;
  line-height:1!important;
}
body.city-page .city-description a.btn.phone .contact-svg-icon,
body.city-page .city-description a.btn.whatsapp .contact-svg-icon,
body.city-page .city-description a.btn.telegram .contact-svg-icon,
body.city-page .home-city-description a.btn.phone .contact-svg-icon,
body.city-page .home-city-description a.btn.whatsapp .contact-svg-icon,
body.city-page .home-city-description a.btn.telegram .contact-svg-icon,
body.city-page .city-shortcode a.btn.phone .contact-svg-icon,
body.city-page .city-shortcode a.btn.whatsapp .contact-svg-icon,
body.city-page .city-shortcode a.btn.telegram .contact-svg-icon,
body.city-page .city-description a.btn.phone svg,
body.city-page .city-description a.btn.whatsapp svg,
body.city-page .city-description a.btn.telegram svg,
body.city-page .home-city-description a.btn.phone svg,
body.city-page .home-city-description a.btn.whatsapp svg,
body.city-page .home-city-description a.btn.telegram svg,
body.city-page .city-shortcode a.btn.phone svg,
body.city-page .city-shortcode a.btn.whatsapp svg,
body.city-page .city-shortcode a.btn.telegram svg {
  width:22px!important;
  height:22px!important;
  min-width:22px!important;
  max-width:22px!important;
  max-height:22px!important;
  flex:0 0 22px!important;
  color:#fff!important;
  fill:#fff!important;
}
@media (max-width:480px){
  body.city-page .city-description a.btn.phone,
  body.city-page .city-description a.btn.whatsapp,
  body.city-page .city-description a.btn.telegram,
  body.city-page .home-city-description a.btn.phone,
  body.city-page .home-city-description a.btn.whatsapp,
  body.city-page .home-city-description a.btn.telegram,
  body.city-page .city-shortcode a.btn.phone,
  body.city-page .city-shortcode a.btn.whatsapp,
  body.city-page .city-shortcode a.btn.telegram {
    height:46px!important;
    min-height:46px!important;
    gap:7px!important;
    padding:0 12px!important;
    font-size:15px!important;
  }
  body.city-page .city-description a.btn.phone .contact-svg-icon,
  body.city-page .city-description a.btn.whatsapp .contact-svg-icon,
  body.city-page .city-description a.btn.telegram .contact-svg-icon,
  body.city-page .home-city-description a.btn.phone .contact-svg-icon,
  body.city-page .home-city-description a.btn.whatsapp .contact-svg-icon,
  body.city-page .home-city-description a.btn.telegram .contact-svg-icon,
  body.city-page .city-shortcode a.btn.phone .contact-svg-icon,
  body.city-page .city-shortcode a.btn.whatsapp .contact-svg-icon,
  body.city-page .city-shortcode a.btn.telegram .contact-svg-icon,
  body.city-page .city-description a.btn.phone svg,
  body.city-page .city-description a.btn.whatsapp svg,
  body.city-page .city-description a.btn.telegram svg,
  body.city-page .home-city-description a.btn.phone svg,
  body.city-page .home-city-description a.btn.whatsapp svg,
  body.city-page .home-city-description a.btn.telegram svg,
  body.city-page .city-shortcode a.btn.phone svg,
  body.city-page .city-shortcode a.btn.whatsapp svg,
  body.city-page .city-shortcode a.btn.telegram svg {
    width:21px!important;
    height:21px!important;
    min-width:21px!important;
    max-width:21px!important;
    max-height:21px!important;
    flex-basis:21px!important;
  }
}
/* === CITY INLINE CONTACT SHORTCODE = FIXED CONTACT DESIGN END === */

/* === ADMIN ADDITIONAL CSS START === */
/* === ADMIN ADDITIONAL CSS END === */


/* === PAGESPEED PERFORMANCE PATCH 2026-10-02 === */
/* Age gate is visible at first paint for a new session; the tiny head script
   adds .age-gate-accepted before paint for returning sessions. This avoids a
   late display:none -> flex layout/paint that can delay LCP. */
html:not(.age-gate-accepted) #ageVerificationGate{display:flex!important}
html.age-gate-accepted #ageVerificationGate{display:none!important}
.age-gate-backdrop{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}

/* Skip layout/paint work for off-screen cards/content while preserving the DOM
   and SEO-visible HTML. The first rows remain normal so LCP is unaffected. */
.public-post-card:nth-child(n+7){content-visibility:auto;contain-intrinsic-size:auto 420px}
.city-description{content-visibility:auto;contain-intrinsic-size:auto 1200px}
.city-shortcode{content-visibility:auto;contain-intrinsic-size:auto 320px}
.city-interlinks{content-visibility:auto;contain-intrinsic-size:auto 900px}
.site-footer{content-visibility:auto;contain-intrinsic-size:auto 420px}
.public-post-card{contain:layout paint}

/* Back-to-top visibility is class driven; JS no longer writes inline display
   during scroll, avoiding layout thrash/forced reflow. */
#backToTop{opacity:0;visibility:hidden;pointer-events:none}
#backToTop.show{opacity:1;visibility:visible;pointer-events:auto}
/* === END PAGESPEED PERFORMANCE PATCH === */


/* === ACCESSIBILITY/FIXED-CONTACT FALLBACK 2026-10-02 === */
.city-interlink-btn{min-height:44px!important;padding:9px 7px!important;background:#fff!important;color:#111!important;-webkit-text-fill-color:#111!important}
.footer-link{min-height:44px!important;padding:10px 2px!important;display:inline-flex!important;align-items:center!important}
.city-description p>strong>a:not(.btn),.home-city-description p>strong>a:not(.btn),.city-shortcode p>strong>a:not(.btn){min-height:44px!important;padding:8px 2px!important;display:inline-flex!important;align-items:center!important}
.fixed-contact-bar{position:fixed!important;left:0!important;right:0!important;bottom:0!important;z-index:999999!important;display:flex!important;visibility:visible!important;opacity:1!important;min-height:48px!important}
.fixed-contact-btn{min-height:48px!important;flex:1 1 0!important;width:auto!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
.fixed-contact-btn.telegram{background:#0b6fa4!important;border-color:#0b6fa4!important;color:#fff!important}
/* === END ACCESSIBILITY/FIXED-CONTACT FALLBACK === */

/* === CITY FOOTER ACCESSIBILITY CONTRAST FIX 2026-10-02 === */
body.city-page .site-footer,
body.city-page footer.site-footer,
body.city-page .site-footer .container,
body.city-page .footer-grid,
body.city-page .footer-col,
body.city-page .footer-links,
body.city-page .footer-bottom,
body.city-page .footer-copy-wrap {
  background:#000000!important;
  color:#ffffff!important;
}
body.city-page .site-footer .footer-link,
body.city-page .site-footer .footer-link:link,
body.city-page .site-footer .footer-link:visited,
body.city-page .site-footer .footer-link:hover,
body.city-page .site-footer .footer-link:focus,
body.city-page .site-footer .footer-link:active,
body.city-page .site-footer p,
body.city-page .site-footer .footer-copy,
body.city-page .site-footer .footer-sep,
body.city-page .site-footer h2,
body.city-page .site-footer h3,
body.city-page .site-footer strong {
  color:#ffffff!important;
}
body.city-page .site-footer .footer-link {
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
}
body.city-page .site-footer .footer-link:focus-visible {
  outline:3px solid #ffffff!important;
  outline-offset:2px;
}
/* === END CITY FOOTER ACCESSIBILITY CONTRAST FIX === */

/* === PAGESPEED POST IMAGE ASPECT FIX 2026-10-02 ===
   Keep the existing 5:4 card frame/layout, but let the IMG element keep its
   natural aspect ratio and crop it inside the frame instead of stretching it. */

/* === IMAGE DELIVERY + TOUCH TARGET FIX 2026-10-02 === */
.age-gate-logo-wrap picture{display:block;width:100%;height:100%}
.age-gate-logo{width:100%!important;height:100%!important}
.footer-links{gap:10px!important}
.footer-link{min-height:48px!important;padding:12px 8px!important;display:inline-flex!important;align-items:center!important;line-height:1.35!important}
body.city-page .site-footer .footer-link{margin:2px 0!important}
.city-description p>strong>a:not(.btn),
.home-city-description p>strong>a:not(.btn),
.city-shortcode p>strong>a:not(.btn){
  min-height:48px!important;
  padding:10px 8px!important;
  margin:4px 6px 4px 0!important;
  display:inline-flex!important;
  align-items:center!important;
  line-height:1.35!important;
  vertical-align:middle!important;
}
.city-description p,
.home-city-description p,
.city-shortcode p{line-height:1.65}
/* === END IMAGE DELIVERY + TOUCH TARGET FIX === */
body.city-page .public-post-image-link{
  position:relative!important;
  display:block!important;
  width:100%!important;
  height:auto!important;
  aspect-ratio:5/4!important;
  overflow:hidden!important;
  background:#171717!important;
}
body.city-page .public-post-image-link img{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:100%!important;
  height:auto!important;
  min-width:100%!important;
  max-width:none!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  object-fit:initial!important;
  transform:translate(-50%,-50%)!important;
  margin:0!important;
  border-radius:0!important;
}
@media(max-width:600px){
  body.city-page .public-post-image-link{aspect-ratio:5/4!important;}
}
/* === END PAGESPEED POST IMAGE ASPECT FIX === */

/* === FULL POST IMAGE / NO CROP / NO EMPTY SPACE 2026-10-02 === */
body.city-page .public-post-image-link{
  position:relative!important;
  display:block!important;
  width:100%!important;
  height:auto!important;
  aspect-ratio:5/4!important;
  overflow:hidden!important;
  background:#171717!important;
  isolation:isolate!important;
}
body.city-page .public-post-image-link::before{
  content:""!important;
  position:absolute!important;
  z-index:0!important;
  inset:-18px!important;
  background-image:var(--post-card-bg)!important;
  background-size:cover!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  filter:blur(14px)!important;
  transform:scale(1.08)!important;
  opacity:.82!important;
}
body.city-page .public-post-image-link::after{
  content:""!important;
  position:absolute!important;
  z-index:0!important;
  inset:0!important;
  background:rgba(0,0,0,.08)!important;
  pointer-events:none!important;
}
body.city-page .public-post-image-link img.public-post-foreground{
  position:absolute!important;
  z-index:1!important;
  left:50%!important;
  top:50%!important;
  display:block!important;
  min-width:0!important;
  min-height:0!important;
  aspect-ratio:auto!important;
  object-fit:initial!important;
  object-position:center!important;
  transform:translate(-50%,-50%)!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
}
body.city-page .public-post-image-link img.public-post-foreground.fit-height{
  width:auto!important;
  height:100%!important;
  max-width:none!important;
  max-height:100%!important;
}
body.city-page .public-post-image-link img.public-post-foreground.fit-width{
  width:100%!important;
  height:auto!important;
  max-width:100%!important;
  max-height:none!important;
}
@media(max-width:600px){
  body.city-page .public-post-image-link{aspect-ratio:5/4!important;}
}
/* === END FULL POST IMAGE / NO CROP / NO EMPTY SPACE === */

/* === HEADER LOGO + FINAL TOUCH TARGET FIX 2026-10-02 === */
.brand picture{display:block;width:32px;height:32px;flex:0 0 32px}
.brand picture img{width:100%!important;height:100%!important;object-fit:contain!important}
html body .site-footer .footer-links{gap:14px!important}
html body .site-footer .footer-link{
  min-width:48px!important;
  min-height:48px!important;
  padding:14px 12px!important;
  margin:4px 0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  line-height:1.35!important;
  touch-action:manipulation;
}
html body.city-page .city-description p strong a:not(.btn),
html body.city-page .home-city-description p strong a:not(.btn),
html body.city-page .city-shortcode p strong a:not(.btn),
html body .city-description p strong a:not(.btn),
html body .home-city-description p strong a:not(.btn),
html body .city-shortcode p strong a:not(.btn){
  min-width:48px!important;
  min-height:48px!important;
  padding:12px 10px!important;
  margin:6px 8px 6px 0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  line-height:1.35!important;
  vertical-align:middle!important;
  touch-action:manipulation;
}
@media(max-width:600px){
  .brand picture{width:28px;height:28px;flex-basis:28px}
}
/* === END HEADER LOGO + FINAL TOUCH TARGET FIX === */
/* === SINGLE POST: NO CARD BORDER, BORDER ONLY ON IMAGE === */
.public-post-single{
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:transparent!important;
}
.public-post-single .public-post-hero{
  box-sizing:border-box!important;
  border:2px solid var(--border,var(--primary,#b0004b))!important;
  border-radius:12px!important;
}
/* === END SINGLE POST IMAGE BORDER PATCH === */

