/* THF single listing v2 — approved desktop/mobile direction */
body.single-listing{color:#eef3f5}
.thf-v2-listing{background:transparent;color:#eef3f5;min-height:100vh;padding:0 0 48px}
.thf-v2-listing,.thf-v2-listing *{box-sizing:border-box}
.thf-v2-listing a{text-decoration:none;color:inherit}
.thf-v2-shell{width:min(1420px,92vw);margin:0 auto;padding-top:18px}
.thf-v2-breadcrumbs{font-size:12px;color:#83919a;margin:0 0 12px;min-height:20px}
.thf-v2-breadcrumbs a{color:#8998a0}
.thf-v2-breadcrumbs .breadcrumb_last{color:#aab4ba}
.mobile-copy,.mobile-gallery,.thf-v2-mobile-facts,.thf-v2-mobile-stack{display:none}

/* hero */
.thf-v2-hero{display:grid;grid-template-columns:minmax(390px,.72fr) minmax(620px,1.5fr);column-gap:26px;row-gap:0;align-items:start}
.thf-v2-hero-info{padding:10px 2px 0 0;min-width:0}
.thf-v2-topline{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:34px}
.thf-v2-verified{display:inline-flex;align-items:center;gap:7px;padding:5px 10px;border-radius:999px;background:#edf8f3;color:#267d58;font-size:12px;font-weight:700;border:1px solid #d1ebdf;line-height:1}
.thf-v2-verified i{color:#35b978}
.thf-v2-save-share{display:flex;gap:15px}
.thf-v2-save-share button{background:none;border:0;color:#cbd3d8;font-size:13px;cursor:pointer;padding:5px 0}
.thf-v2-save-share button i{margin-right:5px;color:#dbe2e5}
.thf-v2-identity{display:grid;grid-template-columns:93px minmax(0,1fr);gap:15px;align-items:start;margin-top:6px}
.thf-v2-identity-copy{min-width:0}
.thf-v2-listing-logo{width:93px;height:93px;border-radius:13px;overflow:hidden;background:transparent;border:0;padding:0;display:flex;align-items:center;justify-content:center}
.thf-v2-listing-logo img{width:100%;height:100%;object-fit:cover;display:block;border:0!important;outline:0!important;box-shadow:none!important}
.thf-v2-hero h1{font-size:46px;line-height:1.04;letter-spacing:-1.25px;color:#f7f9fa;padding:0;margin:2px 0 6px;font-weight:750;min-width:0}
.thf-v2-blue-check{font-size:21px;color:#2f8cff;vertical-align:7px;margin-left:5px}
.thf-v2-tagline{font-size:19px;line-height:1.35;color:#aebac0;margin:0 0 8px;padding:0;max-width:620px}
.thf-v2-rating-engagement{display:inline-flex;align-items:center;flex:0 0 auto}
.thf-v2-rating-engagement .thf-post-engagement{display:flex!important;align-items:center!important;gap:5px!important;margin:0!important;flex-wrap:nowrap!important}
.thf-v2-rating-engagement .thf-share-wrapper{display:none!important}
.thf-v2-rating-engagement .thf-engagement-stat,.thf-v2-rating-engagement .thf-view-30-stat,.thf-v2-rating-engagement .thf-like-button{height:29px!important;min-width:29px!important;border:1px solid #31434d!important;border-radius:999px!important;background:rgba(15,27,34,.62)!important;color:#dfe6e9!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:4px!important;padding:0 7px!important;font-size:9px!important;line-height:1!important;box-shadow:none!important}
.thf-v2-rating-engagement .thf-engagement-stat i,.thf-v2-rating-engagement .thf-view-30-stat i,.thf-v2-rating-engagement .thf-like-button i{font-size:11px!important;color:#b9c6cc!important}
.thf-v2-rating-engagement .thf-like-button i{color:#ef6b7d!important}
.thf-v2-rating-engagement .thf-like-label,.thf-v2-rating-engagement .thf-view-30-stat small{display:none!important}
.thf-v2-rating-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap;font-size:14px;color:#aab5bb;margin-top:4px}
.thf-v2-stars{display:inline-flex;gap:2px}
.thf-v2-stars i{color:#ffb400!important;font-size:20px}
.thf-v2-rating-row strong{font-size:16px;color:#f7f9fa}
.thf-v2-rating-row a{color:#44d78a;margin-left:4px;font-weight:600}
.thf-v2-pills{display:flex;gap:8px;flex-wrap:wrap;margin:11px 0 16px}
.thf-v2-pills span{font-size:11px;color:#bac5ca;border:1px solid #31404a;border-radius:999px;padding:4px 10px;background:#111c24}

.thf-v2-contact-card{background:linear-gradient(145deg,#14212a,#101a21);border:1px solid #293a45;border-radius:10px;overflow:hidden;margin-top:14px;box-shadow:0 12px 30px rgba(0,0,0,.13)}
.thf-v2-contact-card>div{display:grid;grid-template-columns:25px minmax(0,1fr) auto;gap:9px;align-items:center;min-height:53px;border-bottom:1px solid #263640;padding:8px 14px;font-size:13px;color:#e7ecee}
.thf-v2-contact-card>div:last-child{border-bottom:0}
.thf-v2-contact-card>div>i{color:#b7c7ff;font-size:16px}
.thf-v2-contact-card .main-contact{color:#e8edef;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.thf-v2-contact-card>div>a:last-child{color:#35d48d;font-weight:600;font-size:12px}
.thf-v2-contact-card>div>a:last-child i{font-size:9px;margin-left:2px}

/* gallery */
.thf-v2-gallery{position:relative;display:grid;grid-template-columns:3.05fr .78fr;grid-template-rows:repeat(3,1fr);gap:5px;height:330px;border-radius:11px;overflow:hidden;background:#101820}
.thf-v2-gallery .photo{display:block;min-width:0;min-height:0;overflow:hidden;background:#17232b}
.thf-v2-gallery .photo-1{grid-row:1/4;grid-column:1}
.thf-v2-gallery .photo-2{grid-row:1;grid-column:2}
.thf-v2-gallery .photo-3{grid-row:2;grid-column:2}
.thf-v2-gallery .photo-4{grid-row:3;grid-column:2}
.thf-v2-gallery img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}
.thf-v2-gallery.single-photo{display:block;height:300px}
.thf-v2-gallery.single-photo .photo{display:block;width:100%;height:100%}
.thf-v2-gallery .photo:hover img{transform:scale(1.025)}
.thf-v2-view-photos{position:absolute;right:10px;bottom:10px;display:inline-flex;align-items:center;gap:6px;background:rgba(8,14,18,.82);border:1px solid rgba(255,255,255,.17);border-radius:7px;padding:7px 10px;font-size:11px;font-weight:600;color:#fff;backdrop-filter:blur(5px)}
.thf-v2-engagement{display:none}

/* shared cards */
.thf-v2-card{background:linear-gradient(145deg,#14212a,#101a21);border:1px solid #293a45;border-radius:10px;color:#dbe2e5;box-shadow:0 8px 26px rgba(0,0,0,.09)}
.thf-v2-card h2{font-size:17px;line-height:1.2;color:#f4f7f8;margin:0;padding:0;font-weight:700}
.thf-v2-card h3{font-size:13px;line-height:1.3;margin:0 0 8px;color:#f2f5f6;padding:0}
.thf-v2-card-header{display:flex;justify-content:space-between;align-items:center;gap:14px}

/* review / highlights / at a glance row */
.thf-v2-insight-grid{display:grid;grid-template-columns:1.62fr .72fr .62fr;gap:18px;margin-top:18px;align-items:stretch}
.thf-v2-review-card{padding:18px 18px 0;overflow:hidden}
.thf-v2-card-header>div{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap}
.thf-v2-card-header>div>span{font-size:11px;color:#8d9aa2}
.thf-v2-card-header>small{font-size:10px;color:#72808a}
.thf-v2-ai-note{font-size:11px;color:#8f9ba2;margin:9px 0 12px;padding:0}
.thf-v2-ai-note i{color:#f4c547;margin-right:5px}
.thf-v2-review-body{display:grid;grid-template-columns:128px 1fr 1fr .9fr;gap:15px;align-items:stretch;padding-bottom:13px}
.thf-v2-rating-circle{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:132px;border-right:1px solid #30404a;padding-right:13px}
.thf-v2-rating-circle strong{font-size:31px;color:#36d47d;line-height:1}
.thf-v2-rating-circle span{margin-top:5px;white-space:nowrap}
.thf-v2-rating-circle span i{color:#ffba14!important;font-size:10px}
.thf-v2-rating-circle small{font-size:9px;color:#8b989f;text-align:center;margin-top:6px;line-height:1.25}
.thf-v2-review-column{padding:3px 7px 0 0}
.thf-v2-review-column:not(:last-child){border-right:1px solid #30404a}
.thf-v2-review-column h3{color:#35d48d}
.thf-v2-review-column.concerns h3{color:#efb34d}
.thf-v2-review-column.say h3{color:#46d381}
.thf-v2-review-column ul{list-style:none;padding:0;margin:0}
.thf-v2-review-column li{font-size:10px;line-height:1.45;color:#bdc7cc;margin:0 0 5px;display:flex;gap:6px}
.thf-v2-review-column li i{color:#35d48d;margin-top:2px;font-size:9px}
.thf-v2-review-column.concerns li i{color:#eeb24d}
.thf-v2-review-column.say p{font-size:11px;line-height:1.5;color:#cfd7db;padding:0;margin:0}
.thf-v2-source-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(112px,1fr));border-top:1px solid #2c3b45;margin:0 -18px}
.thf-v2-source{padding:9px 10px;border-right:1px solid #2a3943;min-width:0;display:flex;flex-direction:column;gap:1px;background:#101b22}
.thf-v2-source:last-child{border-right:0}
.thf-v2-source strong{font-size:10px;color:#e8edef;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.thf-v2-source span{font-size:9px;color:#8d9aa2;white-space:nowrap}
.thf-v2-mobile-analysis{display:none}

.thf-v2-highlights-card,.thf-v2-glance-card{padding:18px}
.thf-v2-highlights-card ul{list-style:none;padding:0;margin:16px 0 0}
.thf-v2-highlights-card li{display:flex;gap:9px;align-items:flex-start;font-size:11px;line-height:1.35;color:#d0d8dc;margin-bottom:13px}
.thf-v2-highlights-card li i{width:18px;color:#dce6e9;font-size:14px;margin-top:1px}
.thf-v2-glance-card dl{margin:14px 0 0}
.thf-v2-glance-card dl>div{margin-bottom:10px}
.thf-v2-glance-card dt{font-size:10px;font-weight:700;color:#f0f4f5;margin-bottom:1px}
.thf-v2-glance-card dt i{width:17px;color:#e7edf0}
.thf-v2-glance-card dd{font-size:10px;color:#9faab0;margin:0 0 0 18px;line-height:1.35}

/* desktop tabs */
.thf-v2-tabs{display:flex;align-items:center;gap:32px;border-bottom:1px solid #263640;margin:22px 0 13px;padding:0 4px;height:42px}
.thf-v2-tabs a{height:42px;display:inline-flex;align-items:center;gap:6px;color:#8f9ca3;font-size:11px;border-bottom:2px solid transparent}
.thf-v2-tabs a.active{color:#35d48d;border-color:#35d48d}
.thf-v2-tabs i{font-size:11px}

/* lower content */
.thf-v2-content-grid{display:grid;grid-template-columns:minmax(0,2.15fr) minmax(320px,.78fr);gap:26px;align-items:start}
.thf-v2-main-column{display:grid;grid-template-columns:1.18fr 1fr;gap:14px}
.thf-v2-about-card,.thf-v2-popular-card{padding:16px;min-height:205px}
.thf-v2-about-copy{font-size:11px;line-height:1.6;color:#c0c9cd;margin-top:12px;max-height:120px;overflow:hidden;position:relative}
.thf-v2-about-copy p{padding:0;margin:0 0 9px}
.thf-v2-about-card.is-open .thf-v2-about-copy{max-height:none}
.thf-v2-about-toggle,.thf-v2-analysis-toggle,.thf-v2-editorial-toggle{border:0;background:none;color:#35d48d;font-weight:600;font-size:10px;padding:8px 0 0;cursor:pointer}
.thf-v2-about-toggle i,.thf-v2-analysis-toggle i{font-size:8px;margin-left:4px}
.thf-v2-popular-card .thf-v2-card-header a{font-size:10px;color:#35d48d}
.thf-v2-popular-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:12px}
.thf-v2-popular-grid>div{border:1px solid #2e3f49;border-radius:8px;padding:10px;display:grid;grid-template-columns:34px 1fr;grid-template-rows:auto auto;column-gap:8px;align-items:center;min-height:68px}
.thf-v2-popular-grid .popular-icon{grid-row:1/3;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#1d2c35;border:1px solid #3a4b55;color:#eabf56}
.thf-v2-popular-grid strong{font-size:10px;color:#e9edef;line-height:1.2}
.thf-v2-popular-grid small{font-size:8px;color:#8e9aa1;line-height:1.2;margin-top:2px}

.thf-v2-side-column{display:flex;flex-direction:column;gap:12px}
.thf-v2-mobile-contact-card{display:none}
.thf-v2-map-card{position:relative;border-radius:10px;overflow:hidden;border:1px solid #293a45;background:#121f27;min-height:203px}
.thf-v2-map-card iframe{width:100%;height:203px;border:0;display:block;filter:saturate(.82) contrast(.98)}
.thf-v2-map-card>a{position:absolute;left:12px;right:12px;bottom:10px;background:#21a85f;color:white;text-align:center;border-radius:6px;padding:8px;font-size:11px;font-weight:700}
.thf-v2-editorial-card{padding:16px}
.thf-v2-editor{display:flex;align-items:center;gap:10px;margin:12px 0}
.thf-v2-editor img{width:42px;height:42px;border-radius:50%;object-fit:cover}
.thf-v2-editor strong{display:block;font-size:11px;color:#eef2f4}
.thf-v2-editor small{display:block;font-size:9px;color:#8b979e;margin-top:2px}
.thf-v2-editorial-copy{font-size:10px;line-height:1.55;color:#bac5ca}
.thf-v2-editorial-full{display:none;font-size:10px;line-height:1.55;color:#bac5ca;margin-top:10px}
.thf-v2-editorial-card.is-open .thf-v2-editorial-copy{display:none}
.thf-v2-editorial-card.is-open .thf-v2-editorial-full{display:block}
.thf-v2-share-card{padding:15px}
.thf-v2-share-card>div{display:flex;gap:9px;margin-top:10px}
.thf-v2-share-card a,.thf-v2-share-card button{width:31px;height:31px;border-radius:50%;border:1px solid #344650;background:#17252e;color:#cbd4d8;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0}

/* mobile layout */
@media(max-width:980px){
  .desktop-copy,.desktop-gallery,.desktop-contact,.thf-v2-insight-grid,.thf-v2-tabs,.thf-v2-content-grid{display:none!important}
  .mobile-copy,.mobile-gallery,.thf-v2-mobile-facts,.thf-v2-mobile-stack{display:block}
  .thf-v2-listing{padding-bottom:30px;background:transparent}
  .thf-v2-shell{width:100%;padding:9px 15px 0}
  .thf-v2-breadcrumbs{font-size:10px;line-height:1.4;margin-bottom:7px;color:#829099}
  .thf-v2-hero{display:block}
  .thf-v2-hero-info{padding:0}
  .thf-v2-topline{justify-content:flex-start;min-height:26px}
  .thf-v2-save-share{display:none}
  .thf-v2-verified{font-size:10px;text-transform:uppercase;padding:6px 10px;background:#10231d;border-color:#315444;color:#60db94}
  .thf-v2-verified i{color:#4ad486}
  .thf-v2-identity{grid-template-columns:78px minmax(0,1fr);gap:11px;margin-top:5px}
  .thf-v2-listing-logo{width:78px;height:78px;border-radius:11px;padding:0}
  .thf-v2-hero h1{font-size:28px;line-height:1.06;letter-spacing:-.55px;margin:1px 0 4px}
  .thf-v2-blue-check{font-size:16px;vertical-align:3px;margin-left:2px}
  .thf-v2-tagline{font-size:13px;line-height:1.3;color:#aeb9bf;margin-bottom:5px;max-width:none}
  .thf-v2-rating-row{font-size:9px;gap:5px;margin:0 0 8px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}
  .thf-v2-rating-row::-webkit-scrollbar{display:none}
  .thf-v2-rating-row a{display:none}
  .thf-v2-stars{gap:1px;flex:0 0 auto}
  .thf-v2-stars i{font-size:14px}
  .thf-v2-rating-row strong{font-size:11px;flex:0 0 auto}
  .thf-v2-review-count{white-space:nowrap;flex:0 0 auto}
  .thf-v2-rating-engagement .thf-post-engagement{gap:3px!important}
  .thf-v2-rating-engagement .thf-engagement-stat,.thf-v2-rating-engagement .thf-view-30-stat,.thf-v2-rating-engagement .thf-like-button{height:26px!important;min-width:26px!important;padding:0 5px!important;font-size:8px!important;gap:3px!important}
  .thf-v2-rating-engagement .thf-engagement-stat i,.thf-v2-rating-engagement .thf-view-30-stat i,.thf-v2-rating-engagement .thf-like-button i{font-size:10px!important}
  .thf-v2-pills{display:none}

  .thf-v2-gallery.mobile-gallery{display:grid;height:258px;grid-template-columns:repeat(3,1fr);grid-template-rows:188px 66px;gap:4px;border-radius:9px;margin:0 0 8px;overflow:hidden}
  .thf-v2-gallery.mobile-gallery .photo-1{grid-column:1/4;grid-row:1}
  .thf-v2-gallery.mobile-gallery .photo-2{grid-column:1;grid-row:2}
  .thf-v2-gallery.mobile-gallery .photo-3{grid-column:2;grid-row:2}
  .thf-v2-gallery.mobile-gallery .photo-4{grid-column:3;grid-row:2}
  .thf-v2-gallery.mobile-gallery.single-photo{display:block!important;height:205px!important}
  .thf-v2-gallery.mobile-gallery.single-photo .photo{display:block;width:100%;height:100%}
  .thf-v2-gallery.mobile-gallery .thf-v2-view-photos{left:20px;right:20px;bottom:7px;justify-content:center;border-radius:999px;padding:7px 12px;font-size:10px}

  .thf-v2-mobile-facts{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px;background:linear-gradient(145deg,#14212a,#101a21);border:1px solid #293b46;border-radius:9px;padding:10px 11px;margin:0 0 8px}
  .thf-v2-mobile-facts>div{display:grid;grid-template-columns:22px 1fr;gap:6px;align-items:center;margin:0}
  .thf-v2-mobile-facts>div>i{font-size:15px;color:#dfe7ec;width:20px;text-align:center}
  .thf-v2-mobile-facts span{display:flex;flex-direction:column}
  .thf-v2-mobile-facts small{font-size:8px;text-transform:uppercase;color:#829098;letter-spacing:.3px;line-height:1.2}
  .thf-v2-mobile-facts strong{font-size:11px;color:#e5eaed;font-weight:500;line-height:1.25;margin-top:2px}

  .thf-v2-engagement{display:block;margin:0 0 11px}
  .thf-v2-engagement .thf-post-engagement{display:grid!important;grid-template-columns:repeat(4,1fr);gap:7px!important;margin:0!important;justify-content:stretch!important}
  .thf-v2-engagement .thf-engagement-stat,.thf-v2-engagement .thf-view-30-stat,.thf-v2-engagement .thf-like-button,.thf-v2-engagement .thf-share-button{height:66px!important;border-radius:9px!important;border:1px solid #2b3c47!important;background:#111d25!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:4px!important;padding:5px!important;color:#eef2f4!important;font-size:10px!important;position:relative!important;width:100%!important}
  .thf-v2-engagement .thf-view-30-stat{line-height:1!important}
  .thf-v2-engagement .thf-engagement-stat i,.thf-v2-engagement .thf-view-30-stat i,.thf-v2-engagement .thf-like-button i,.thf-v2-engagement .thf-share-button i{font-size:17px!important;color:#e9eef0!important}
  .thf-v2-engagement .thf-like-button i{color:#ff4c64!important}
  .thf-v2-engagement .thf-like-label{display:none!important}
  .thf-v2-engagement .thf-view-stat:after{content:'Views';font-size:8px;color:#68b886}
  .thf-v2-engagement .thf-view-30-stat small{font-size:8px;color:#9ca8ae!important}
  .thf-v2-engagement .thf-like-count:after{content:' Likes';font-size:8px;color:#d9687c}
  .thf-v2-engagement .thf-share-button:after{content:'Share';font-size:8px;color:#c7d0d4}
  .thf-v2-engagement .share-icon-wrapper{width:100%!important;display:block!important}
  .thf-v2-engagement .social-share-buttons-popup{z-index:99}

  .thf-v2-mobile-stack{display:flex;flex-direction:column;gap:8px}
  .thf-v2-mobile-stack .thf-v2-card{border-radius:9px;padding:12px;background:linear-gradient(145deg,#14212a,#101a21)}
  .thf-v2-mobile-stack .thf-v2-card h2{font-size:18px}
  .mobile-about-copy{font-size:13px;line-height:1.55;color:#bfc8cd;max-height:118px;overflow:hidden;margin-top:10px}
  .mobile-about-copy p{padding:0;margin:0 0 8px}
  .mobile-about-card.is-open .mobile-about-copy{max-height:none}
  .thf-v2-about-toggle,.thf-v2-analysis-toggle,.thf-v2-editorial-toggle{font-size:11px;color:#3f9cff;padding-top:7px}

  .mobile-highlights-card{padding-bottom:13px!important}
  .mobile-highlight-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:12px}
  .mobile-highlight-grid>div{border:1px solid #33454f;border-radius:8px;min-height:86px;padding:9px 5px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:7px}
  .mobile-highlight-grid i{font-size:19px;color:#d8b657}
  .mobile-highlight-grid span{font-size:9px;line-height:1.25;color:#dbe1e4}

  .mobile-review-card{position:relative}
  .mobile-review-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}
  .mobile-review-head>div span{display:block;font-size:11px;color:#a8b3b9;margin-top:2px}
  .mobile-review-head small{font-size:9px;color:#99a5ab;background:#17252e;border:1px solid #2a3c46;border-radius:999px;padding:5px 8px;white-space:nowrap}
  .mobile-review-card>p{font-size:12px;line-height:1.5;color:#b9c3c8;padding:0;margin:10px 0 0}
  .mobile-review-full{display:none;margin-top:10px;border-top:1px solid #2b3d47;padding-top:10px}
  .mobile-review-card.is-open .mobile-review-full{display:block}
  .mobile-review-card.is-open>p{max-height:none}
  .mobile-review-full h3{font-size:12px;margin:8px 0;color:#45d786}
  .mobile-review-full ul{list-style:none;margin:0;padding:0}
  .mobile-review-full li{font-size:11px;color:#bbc5ca;margin-bottom:5px;display:flex;gap:6px}
  .mobile-review-full li i{color:#45d786;margin-top:2px}
  .mobile-review-full ul.concerns li i{color:#e8b24c}

  .mobile-contact-card p{display:grid;grid-template-columns:22px 1fr;gap:8px;align-items:start;font-size:12px;line-height:1.35;margin:12px 0;color:#dce3e6;padding:0}
  .mobile-contact-card p i{color:#d5b24d;margin-top:2px}
  .mobile-contact-card p a{color:#dce3e6;word-break:break-word}
  .thf-v2-direction-button{margin-top:13px;display:flex!important;align-items:center;justify-content:center;gap:8px;background:#efbf59;color:#12191d!important;border-radius:7px;height:43px;font-size:12px;font-weight:700}
  .thf-v2-mobile-map{border-radius:9px;overflow:hidden;height:132px;border:1px solid #293a45;background:#15232b}
  .thf-v2-mobile-map iframe{width:100%;height:132px;border:0;display:block}

  .mobile-quick-card dl{margin:12px 0 0}
  .mobile-quick-card dl>div{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:5px 0;font-size:11px}
  .mobile-quick-card dt{color:#cbd3d7;font-weight:500}
  .mobile-quick-card dt i{color:#e1b84f;width:21px}
  .mobile-quick-card dd{color:#e4eaed;margin:0;font-size:10px;text-align:right}
  .mobile-quick-card dd .fa-check{color:#43d27d}

  .mobile-popular-list{margin-top:12px}
  .mobile-popular-list>div{display:flex;gap:10px;align-items:center;margin-bottom:9px}
  .mobile-popular-list>div>span{width:38px;height:38px;flex:0 0 38px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#24333c;border:1px solid #40515a;color:#efbd55}
  .mobile-popular-list strong{display:block;font-size:11px;color:#ebeff1;line-height:1.2}
  .mobile-popular-list small{display:block;font-size:9px;color:#8e9aa1;margin-top:2px}
  .mobile-analysis-link{display:block;border:1px solid #b58e42;color:#e6b951!important;text-align:center;border-radius:6px;padding:8px;margin-top:8px;font-size:11px}

  .mobile-editorial-card .thf-v2-editor{margin:11px 0}
  .mobile-editorial-short{font-size:12px;line-height:1.5;color:#bbc5ca}
  .mobile-editorial-card .thf-v2-editorial-full{font-size:12px;line-height:1.5}
  .mobile-editorial-card.is-open .mobile-editorial-short{display:none}
  .mobile-editorial-card.is-open .thf-v2-editorial-full{display:block}
  .mobile-editorial-card .thf-v2-editorial-toggle{color:#e3b54c}

  .mobile-share-card>div{display:flex;gap:8px;margin-top:10px}
  .mobile-share-card a,.mobile-share-card button{width:33px;height:33px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;border:1px solid #354750;background:#17252e;color:#d1d9dd;padding:0}
}

@media(max-width:480px){
  .thf-v2-shell{padding-left:14px;padding-right:14px}
  .thf-v2-hero h1{font-size:30px}
  .thf-v2-gallery.mobile-gallery{height:252px;grid-template-rows:182px 66px}
  .mobile-highlight-grid>div{min-height:82px}
}

/* featured verified listings */
.thf-v2-featured-verified{margin:0 0 22px;padding:17px 18px 15px;background:linear-gradient(145deg,#111e26,#0e181f);border:1px solid #263842;border-radius:12px;overflow:hidden}
.thf-v2-section-heading{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:10px}
.thf-v2-sponsored .thf-v2-section-heading{margin-bottom:7px}
.thf-v2-section-heading h2{font-size:20px;line-height:1.15;color:#f2f6f7;margin:2px 0 0;padding:0}
.thf-v2-section-kicker{display:block;text-transform:uppercase;letter-spacing:.08em;color:#4bd88b;font-size:9px;font-weight:700}
.thf-v2-section-heading>a{color:#42d985!important;font-size:11px;font-weight:700;white-space:nowrap}
.thf-v2-section-heading>a i{font-size:9px;margin-left:4px}
.thf-v2-featured-verified .ListingSwiper{overflow:visible!important}
.thf-v2-featured-verified ul.directory-listing.full{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px!important;margin:0!important;padding:0!important}
.thf-v2-featured-verified ul.directory-listing.full>li.listing-item{width:auto!important;margin:0!important;min-width:0!important}
.thf-v2-featured-verified .listing-wrapper{height:100%;background:#14212a!important;border:1px solid #2b3d47!important;border-radius:9px!important;overflow:hidden;box-shadow:none!important}
.thf-v2-featured-verified .listing-wrapper .image-wrapper{height:118px!important}
.thf-v2-featured-verified .listing-wrapper .banner-image{height:118px!important;width:100%!important;object-fit:cover!important}
.thf-v2-featured-verified .listing-wrapper h3.listing-title{font-size:13px!important;padding:10px 10px 3px!important;margin:0!important;color:#f2f5f6!important}
.thf-v2-featured-verified .listing-wrapper>p{font-size:9px!important;line-height:1.35!important;color:#9ba8ae!important;padding:0 10px 10px!important;margin:0!important}
.thf-v2-featured-verified .listing-wrapper .avatar-container{transform:scale(.78);transform-origin:left bottom}
.thf-v2-featured-verified .listing-wrapper .location,.thf-v2-featured-verified .listing-wrapper .google-rating{font-size:9px!important}

/* business social profiles */
.thf-v2-social-profiles{padding:15px}
.thf-v2-social-profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:11px}
.thf-v2-social-profile-grid>a{min-height:38px;border:1px solid #30424c;border-radius:7px;background:#17252e;color:#d8e0e3!important;display:flex;align-items:center;gap:8px;padding:8px 10px;font-size:10px;font-weight:600}
.thf-v2-social-profile-grid>a>i:first-child{width:17px;text-align:center;color:#e5bb58;font-size:14px}
.thf-v2-social-profile-grid>a>i:last-child{margin-left:auto;color:#74838b;font-size:8px}

/* sponsored ads */
.thf-v2-sponsored{margin-top:18px;padding-top:16px;border-top:1px solid #263741}
.thf-v2-shell>.thf-v2-sponsored:first-child{margin-top:0;padding-top:0;border-top:0}
.thf-v2-ad-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}
.thf-v2-ad-grid>.ad-wrapper{position:relative;display:flex;flex-direction:column;min-width:0;min-height:214px;border:1px solid #2b3d47;border-radius:9px;overflow:hidden;background:#111d25;box-shadow:0 6px 20px rgba(0,0,0,.07)}
.thf-v2-ad-grid>.ad-wrapper>img{display:block;width:100%;height:112px;object-fit:cover;background:#17252e}
.thf-v2-ad-grid .ad-overlay{display:block!important;position:relative!important;inset:auto!important;opacity:1!important;visibility:visible!important;transform:none!important;flex:1;padding:9px 10px 10px!important;background:#111d25!important;color:#c8d1d5!important}
.thf-v2-ad-grid .ad-label{position:absolute;right:8px;top:-104px;background:rgba(7,13,17,.88);border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:3px 7px;color:#dfe5e8;font-size:7px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.thf-v2-ad-grid .ad-partner-name{font-size:8px;line-height:1.2;color:#48d78d;text-transform:uppercase;letter-spacing:.05em;font-weight:700;margin:0 0 4px}
.thf-v2-ad-grid .ad-overlay h3{display:-webkit-box!important;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:12px!important;line-height:1.25!important;color:#f0f4f5!important;margin:0 0 4px!important;padding:0!important}
.thf-v2-ad-grid .ad-overlay p{display:-webkit-box!important;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:9px!important;line-height:1.35!important;color:#9eabb1!important;margin:0 0 7px!important;padding:0!important}
.thf-v2-ad-grid .ad-overlay strong{display:block;color:#e6b951;font-size:9px;margin:4px 0}
.thf-v2-ad-grid .profile-link{display:inline-flex!important;align-items:center;justify-content:center;margin-top:1px;border:1px solid #3c6251;border-radius:5px;padding:5px 8px;color:#44d68a!important;font-size:8px;font-weight:700;line-height:1}
.thf-v2-ad-grid .ad-expiration{font-size:7px;color:#66757d;margin-top:5px}
.thf-v2-ad-grid a:hover h3{color:#44d68a!important}

/* related listings: same city + similar category */
.thf-v2-related-listings{margin-top:28px;padding-top:24px;border-top:1px solid #263741;display:flex;flex-direction:column;gap:28px}
.thf-v2-related-grid .ListingSwiper{overflow:visible!important}
.thf-v2-related-grid ul.directory-listing.full{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px!important;margin:0!important;padding:0!important}
.thf-v2-related-grid ul.directory-listing.full>li.listing-item{width:auto!important;margin:0!important;min-width:0!important}
.thf-v2-related-grid .listing-wrapper{height:100%;background:linear-gradient(145deg,#14212a,#101a21)!important;border:1px solid #2b3d47!important;border-radius:10px!important;overflow:hidden;box-shadow:none!important}
.thf-v2-related-grid .listing-wrapper .image-wrapper{height:142px!important}
.thf-v2-related-grid .listing-wrapper .banner-image{width:100%!important;height:142px!important;object-fit:cover!important}
.thf-v2-related-grid .listing-wrapper h3.listing-title{font-size:14px!important;line-height:1.25!important;padding:11px 11px 3px!important;margin:0!important;color:#f2f5f6!important}
.thf-v2-related-grid .listing-wrapper>p{font-size:10px!important;line-height:1.4!important;color:#9eabb1!important;padding:0 11px 11px!important;margin:0!important}
.thf-v2-related-grid .listing-wrapper .location,.thf-v2-related-grid .listing-wrapper .google-rating{font-size:9px!important}
.thf-v2-related-grid .listing-wrapper .avatar-container{transform:scale(.82);transform-origin:left bottom}

@media(max-width:980px){
  .thf-v2-sponsored{margin-top:13px;padding-top:13px}
  .thf-v2-shell>.thf-v2-sponsored:first-child{margin-top:0;padding-top:0}
  .thf-v2-ad-grid{display:flex;overflow-x:auto;gap:8px;scroll-snap-type:x mandatory;padding-bottom:2px}
  .thf-v2-ad-grid>.ad-wrapper{flex:0 0 72vw;scroll-snap-align:start;min-height:202px}
  .thf-v2-ad-grid>.ad-wrapper>img{height:104px}
  .thf-v2-ad-grid .ad-overlay{padding:8px 9px 9px!important}
  .thf-v2-ad-grid .ad-label{top:-97px}
  .thf-v2-ad-grid .ad-overlay h3{font-size:11px!important}
  .thf-v2-ad-grid .ad-overlay p{font-size:8.5px!important;-webkit-line-clamp:2}
  .thf-v2-ad-grid .profile-link{padding:5px 7px;font-size:8px}
  .thf-v2-related-listings{margin-top:18px;padding-top:18px;gap:22px}
  .thf-v2-related-grid ul.directory-listing.full{display:flex!important;overflow-x:auto!important;scroll-snap-type:x mandatory;gap:10px!important;padding-bottom:4px!important}
  .thf-v2-related-grid ul.directory-listing.full>li.listing-item{flex:0 0 76vw!important;scroll-snap-align:start}
  .thf-v2-related-grid .listing-wrapper .image-wrapper,.thf-v2-related-grid .listing-wrapper .banner-image{height:135px!important}
}

/* latest news + blog */
.thf-v2-editorial-feed{margin-top:30px;padding-top:25px;border-top:1px solid #263741;display:flex;flex-direction:column;gap:30px}
.thf-v2-feed-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.thf-v2-feed-card{background:linear-gradient(145deg,#14212a,#101a21);border:1px solid #293a45;border-radius:10px;overflow:hidden;min-width:0;display:flex;flex-direction:column}
.thf-v2-feed-image{height:132px;background:#17252e;display:block;overflow:hidden}
.thf-v2-feed-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s ease}
.thf-v2-feed-card:hover .thf-v2-feed-image img{transform:scale(1.025)}
.thf-v2-feed-image>span{height:100%;display:flex;align-items:center;justify-content:center;color:#53646e;font-size:30px}
.thf-v2-feed-body{padding:13px;display:flex;flex-direction:column;flex:1}
.thf-v2-feed-body>small{font-size:8px;color:#819099}
.thf-v2-feed-body h3{font-size:13px;line-height:1.3;color:#eef2f4;margin:7px 0 6px;padding:0}
.thf-v2-feed-body p{font-size:9px;line-height:1.45;color:#9eabb1;margin:0 0 9px;padding:0}
.thf-v2-feed-more{font-size:9px;color:#42d985!important;font-weight:700;margin-top:auto}
.thf-v2-feed-more i{font-size:8px;margin-left:3px}

/* restored full review analysis popup */
body.thf-review-modal-open{overflow:hidden!important}
.review-analysis-modal{display:none!important;position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;z-index:999999!important;padding:24px!important;background:rgba(3,8,11,.84)!important;backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);overflow-y:auto!important;align-items:flex-start!important;justify-content:center!important}
.review-analysis-modal.is-open{display:flex!important}
.review-analysis-modal .reviews-container{display:block!important;position:relative!important;width:min(960px,100%)!important;margin:auto!important;max-height:calc(100vh - 48px)!important;overflow-y:auto!important;overscroll-behavior:contain!important;box-sizing:border-box!important}
.review-analysis-modal .thf-v2-modal-close{position:sticky;top:0;float:right;z-index:30;width:38px;height:38px;border-radius:50%;border:1px solid #3a4a51;background:#172229;color:#f5f7f8;display:flex;align-items:center;justify-content:center;cursor:pointer;margin:-6px -6px 6px 12px}
.review-analysis-modal .thf-v2-modal-close i{font-size:16px}

@media(max-width:980px){
  .thf-v2-featured-verified{margin:0 0 14px;padding:13px;border-radius:10px}
  .thf-v2-featured-verified ul.directory-listing.full{display:flex!important;overflow-x:auto!important;scroll-snap-type:x mandatory;gap:9px!important;padding-bottom:4px!important}
  .thf-v2-featured-verified ul.directory-listing.full>li.listing-item{flex:0 0 68vw!important;scroll-snap-align:start}
  .thf-v2-featured-verified .listing-wrapper .image-wrapper,.thf-v2-featured-verified .listing-wrapper .banner-image{height:108px!important}
  .thf-v2-section-heading{align-items:center;margin-bottom:10px}
  .thf-v2-section-heading h2{font-size:16px}
  .thf-v2-section-heading>a{font-size:9px}
  .mobile-social-card{display:block}
  .thf-v2-social-profile-grid{grid-template-columns:repeat(2,1fr)}
  .thf-v2-social-profile-grid>a{font-size:11px;min-height:42px}
  .thf-v2-editorial-feed{margin-top:18px;padding-top:18px;gap:24px}
  .thf-v2-feed-grid{display:flex;overflow-x:auto;gap:10px;scroll-snap-type:x mandatory;padding-bottom:4px}
  .thf-v2-feed-card{flex:0 0 78vw;scroll-snap-align:start}
  .thf-v2-feed-image{height:155px}
  .thf-v2-feed-body h3{font-size:14px}
  .thf-v2-feed-body p{font-size:11px}
  .review-analysis-modal{padding:10px!important}
  .review-analysis-modal .reviews-container{max-height:calc(100vh - 20px)!important;border-radius:12px!important;padding:22px 16px!important}
}

/* flatter single-listing surface + image-overlay sponsored bar */
body.single-listing,
body.single-listing #page-container,
.thf-v2-listing{background:#111b24!important}

.thf-v2-featured-verified,
.thf-v2-sponsored,
.thf-v2-related-listings,
.thf-v2-editorial-feed{background:transparent!important;border:0!important;box-shadow:none!important}

.thf-v2-card,
.thf-v2-contact-card,
.thf-v2-mobile-facts{background:transparent!important;border:0!important;box-shadow:none!important}

.thf-v2-sponsored{margin:0 0 12px!important;padding:0!important}
.thf-v2-ad-grid{gap:10px}
.thf-v2-ad-grid>.ad-wrapper{position:relative;min-height:170px;height:170px;border:0!important;border-radius:10px;overflow:hidden;background:transparent!important;box-shadow:none!important;isolation:isolate}
.thf-v2-ad-grid>.ad-wrapper>img{display:block!important;position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;opacity:1!important;visibility:visible!important;filter:none!important;mix-blend-mode:normal!important;z-index:0!important}
.thf-v2-ad-grid .ad-overlay{position:absolute!important;inset:0!important;z-index:2!important;display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:flex-start!important;opacity:1!important;visibility:visible!important;transform:none!important;padding:16px 18px!important;color:#fff!important;background:linear-gradient(90deg,rgba(5,11,16,.78) 0%,rgba(5,11,16,.52) 42%,rgba(5,11,16,.14) 72%,rgba(5,11,16,0) 100%)!important}
.thf-v2-ad-grid .ad-overlay:before{display:none!important}
.thf-v2-ad-grid .ad-overlay>*{max-width:72%}
.thf-v2-ad-grid .ad-label{position:static!important;display:inline-flex!important;width:auto!important;max-width:none!important;margin:0 0 6px;padding:3px 7px!important;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:rgba(4,10,14,.5)!important;color:#fff!important;font-size:7px!important;letter-spacing:.08em;text-transform:uppercase}
.thf-v2-ad-grid .ad-partner-name{font-size:9px!important;font-weight:700;color:#58dc94!important;margin:0 0 3px}
.thf-v2-ad-grid .ad-overlay h3{font-size:13px!important;line-height:1.18!important;color:#fff!important;margin:0 0 5px!important;text-shadow:0 1px 8px rgba(0,0,0,.35)}
.thf-v2-ad-grid .ad-overlay p{font-size:9px!important;line-height:1.35!important;color:#d7dee2!important;margin:0 0 8px!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.thf-v2-ad-grid .profile-link{margin:0!important;padding:4px 8px!important;border:1px solid rgba(94,221,150,.5)!important;border-radius:999px!important;background:rgba(10,45,29,.45)!important;color:#6ee0a0!important;font-size:8px!important}

@media(max-width:980px){
  .thf-v2-shell{padding-top:8px}
  .thf-v2-sponsored{margin-bottom:8px!important}
  .thf-v2-ad-grid{gap:8px}
  .thf-v2-ad-grid>.ad-wrapper{flex:0 0 82vw!important;height:154px!important;min-height:154px!important}
  .thf-v2-ad-grid .ad-overlay{padding:12px 14px!important}
  .thf-v2-ad-grid .ad-overlay>*{max-width:78%}
  .thf-v2-ad-grid .ad-overlay h3{font-size:12px!important}
  .thf-v2-ad-grid .ad-overlay p{font-size:8px!important}
  .thf-v2-mobile-stack .thf-v2-card{background:transparent!important;border:0!important;box-shadow:none!important;padding-left:0!important;padding-right:0!important}
  .thf-v2-mobile-facts{padding-left:0!important;padding-right:0!important}
}
