/* =========================================================
   THEME: LUXURY BLOG
   Usage:
     <div class="bt-scope bt-theme--luxury-blog ..."> ... </div>
   Load AFTER bt-universal.css
   ========================================================= */

/* =========================================
   BOOMTOWN FIX
========================================= */
html,
body{
  margin:0;
}

.bt-content-wrapper .container{
  max-width:100%;
  padding-left:0;
  padding-right:0;
}

/* =========================================
   LUXURY BLOG - TOKENS
========================================= */
.bt-scope.bt-theme--luxury-blog{
  --bt-font-heading: Georgia, "Times New Roman", Times, serif;
  --bt-font-body: "Open Sans", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;

  --bt-blog-navy: #0b213c;
  --bt-blog-navy-2: #07182b;
  --bt-blog-cream: #eee8e3;
  --bt-blog-paper: #ffffff;
  --bt-blog-taupe: #b9aaa0;
  --bt-blog-taupe-2: #c9bdb4;
  --bt-blog-line: rgba(185,170,160,.78);
  --bt-blog-ink: #0b213c;
  --bt-blog-copy: #1f252d;
  --bt-blog-muted: rgba(11,33,60,.62);

  --bt-bg: var(--bt-blog-paper);
  --bt-surface: var(--bt-blog-paper);
  --bt-surface-2: var(--bt-blog-cream);
  --bt-ink: var(--bt-blog-ink);
  --bt-ink-soft: rgba(11,33,60,.78);
  --bt-accent: var(--bt-blog-navy);
  --bt-accent-2: var(--bt-blog-taupe);
  --bt-navy: var(--bt-blog-navy);
  --bt-navy-2: var(--bt-blog-navy-2);

  --bt-container: min(1180px, calc(100% - (var(--bt-pad-x) * 2)));
  --bt-pad-x: clamp(20px, 5vw, 96px);
  --bt-section-pad-y: clamp(58px, 7vw, 110px);

  --bt-title-font: var(--bt-font-heading);
  --bt-title-weight: 400;
  --bt-title-transform: uppercase;
  --bt-title-ls: .055em;
  --bt-title-lh: 1.16;
  --bt-title-color: var(--bt-blog-ink);
  --bt-h1-size: clamp(38px, 5.2vw, 64px);
  --bt-h2-size: clamp(28px, 3.8vw, 46px);
  --bt-h3-size: clamp(20px, 2vw, 26px);
  --bt-p-size: clamp(16px, 1.3vw, 19px);
  --bt-p-lh: 1.65;
  --bt-p-color: var(--bt-blog-copy);

  --bt-subtitle-color: var(--bt-blog-ink);
  --bt-subtitle-transform: uppercase;
  --bt-subtitle-ls: .32em;
  --bt-subtitle-weight: 600;

  --bt-radius-btn: 999px;
  --bt-radius-md: 0px;
  --bt-radius-lg: 0px;
  --bt-radius-xl: 0px;
  --bt-shadow-1: none;

  color: var(--bt-blog-copy);
  background: var(--bt-bg);
}

.bt-scope.bt-theme--luxury-blog .bt-section--dark{
  --bt-title-color: #fff;
  --bt-subtitle-color: rgba(255,255,255,.94);
  --bt-p-color: rgba(255,255,255,.86);
  background: var(--bt-blog-navy) !important;
}

.bt-scope.bt-theme--luxury-blog .bt-section--light{
  --bt-title-color: var(--bt-blog-ink);
  --bt-subtitle-color: var(--bt-blog-ink);
  --bt-p-color: var(--bt-blog-copy);
  background: var(--bt-blog-paper) !important;
}

.bt-scope.bt-theme--luxury-blog .bt-section--cream{
  background: var(--bt-blog-cream) !important;
}

.bt-scope.bt-theme--luxury-blog :where(h1,h2,h3,.bt-title,.bt-main-title){
  font-family: var(--bt-font-heading) !important;
  font-weight: 400 !important;
  letter-spacing: var(--bt-title-ls) !important;
}

.bt-scope.bt-theme--luxury-blog :where(p,.bt-text,li){
  font-family: var(--bt-font-body) !important;
}

.bt-scope.bt-theme--luxury-blog .bt-subtitle,
.bt-scope.bt-theme--luxury-blog .bt-eyebrow{
  font-family: var(--bt-font-body) !important;
  font-size: clamp(12px, .9vw, 15px) !important;
  letter-spacing: var(--bt-subtitle-ls) !important;
  line-height: 1.4 !important;
}

.bt-scope.bt-theme--luxury-blog .bt-cta-button,
.bt-scope.bt-theme--luxury-blog .bt-blog-link{
  font-family: var(--bt-font-body) !important;
  font-weight: 700 !important;
  letter-spacing: .28em !important;
  text-transform: uppercase !important;
}

/* =========================================
   SHARED BLOG SHELL
========================================= */
.bt-blogLinkReset{
  color:inherit;
  text-decoration:none;
}

.bt-scope.bt-theme--luxury-blog [data-bt-blog-item][hidden],
.bt-scope.bt-theme--luxury-blog #btBlogGrid [data-bt-category][hidden]{
  display:none !important;
}

.bt-blog-rule{
  width:min(440px, 70vw);
  height:2px;
  margin:clamp(20px, 3vw, 34px) auto;
  background:var(--bt-blog-line);
}

.bt-blog-rule--left{
  width:min(380px, 100%);
  margin-left:0;
}

.bt-blog-link{
  display:inline-flex;
  align-items:center;
  gap:24px;
  color:var(--bt-blog-ink);
  font-size:12px;
  text-decoration:none;
}

.bt-blog-link::after{
  content:"";
  width:76px;
  height:2px;
  background:currentColor;
  transform:translateY(10px);
}

.bt-blog-link--arrow::after{
  content:"\2192";
  width:auto;
  height:auto;
  background:transparent;
  transform:none;
  font-size:22px;
  font-weight:400;
  letter-spacing:0;
}

/* =========================================
   INDEX PAGE
========================================= */
.bt-blogHero{
  min-height:530px;
  display:grid;
  place-items:center;
  padding:clamp(88px, 12vw, 160px) var(--bt-pad-x);
  text-align:center;
  background:
    radial-gradient(circle at 50% 46%, rgba(255,255,255,.05), transparent 34%),
    linear-gradient(180deg, var(--bt-blog-navy-2), var(--bt-blog-navy));
}

.bt-blogHero__inner{
  width:min(920px, 100%);
}

.bt-blogHero .bt-title--h1{
  color:#fff !important;
  font-size:clamp(34px, 4.4vw, 58px) !important;
  letter-spacing:.16em !important;
  line-height:1.2 !important;
  margin:0 !important;
}

.bt-blogHero .bt-title--h2{
  color:#fff !important;
  font-family:var(--bt-font-body) !important;
  font-size:clamp(16px, 1.5vw, 22px) !important;
  font-weight:500 !important;
  letter-spacing:.28em !important;
  margin:22px 0 0 !important;
}

.bt-blogHero .bt-subtitle{
  color:#fff !important;
  margin:0 0 24px !important;
}

.bt-blogHero .bt-text{
  color:rgba(255,255,255,.9) !important;
  max-width:860px;
  margin:0 auto !important;
}

.bt-blogTabs{
  background:var(--bt-blog-cream);
  border:0;
}

.bt-blogTabs__inner{
  width:var(--bt-container);
  margin:0 auto;
  min-height:150px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:clamp(18px, 3vw, 42px);
  overflow-x:auto;
}

.bt-blogTabs__tab{
  position:relative;
  flex:0 0 auto;
  border:0;
  background:transparent;
  color:var(--bt-blog-ink);
  padding:24px 8px 28px;
  font:700 13px/1 var(--bt-font-body);
  letter-spacing:.28em;
  text-transform:uppercase;
  cursor:pointer;
}

.bt-blogTabs__tab.is-active::after{
  content:"";
  position:absolute;
  left:8px;
  right:8px;
  bottom:10px;
  height:3px;
  background:var(--bt-blog-ink);
}

.bt-blogFeatured{
  display:grid;
  grid-template-columns:minmax(0, .88fr) minmax(0, 1.15fr);
  min-height:620px;
}

.bt-blogFeatured__media img{
  width:100%;
  height:100%;
  min-height:520px;
  object-fit:cover;
}

.bt-blogFeatured__content{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:clamp(48px, 7vw, 92px);
}

.bt-blogMeta{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
  color:var(--bt-blog-ink);
  font:600 13px/1.5 var(--bt-font-body);
  letter-spacing:.28em;
  text-transform:uppercase;
}

.bt-blogFeatured__title{
  margin:28px 0 26px !important;
  color:var(--bt-blog-ink) !important;
  font-size:clamp(30px, 3.6vw, 46px) !important;
  letter-spacing:.045em !important;
  line-height:1.22 !important;
}

.bt-blogFeatured__title span{
  color:#9eacbc;
}

.bt-blogFeatured .bt-text{
  max-width:680px;
  margin:0 0 36px !important;
  color:var(--bt-blog-copy) !important;
}

.bt-blogBandTitle{
  background:var(--bt-blog-navy);
  padding:58px 0;
}

.bt-blogBandTitle__inner{
  width:var(--bt-container);
  margin:0 auto;
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:center;
  gap:36px;
}

.bt-blogBandTitle .bt-subtitle{
  color:#fff !important;
  margin:0 !important;
}

.bt-blogBandTitle__line{
  height:2px;
  background:rgba(255,255,255,.75);
}

.bt-blogGrid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:clamp(28px, 4vw, 54px);
}

.bt-blogCard{
  border:1px solid var(--bt-blog-line);
  background:#fff;
  color:var(--bt-blog-copy);
  min-height:560px;
  display:flex;
  flex-direction:column;
  overflow:hidden;
}

.bt-blogCard__media{
  position:relative;
}

.bt-blogCard__media img{
  width:100%;
  aspect-ratio:1.72 / 1;
  object-fit:cover;
}

.bt-blogCard__category{
  background:var(--bt-blog-navy);
  color:var(--bt-blog-taupe-2);
  padding:17px 24px;
  font:700 13px/1 var(--bt-font-body);
  letter-spacing:.3em;
  text-transform:uppercase;
}

.bt-blogCard__body{
  padding:clamp(26px, 3vw, 38px);
  display:flex;
  flex:1;
  flex-direction:column;
}

.bt-blogCard__date{
  margin:0 0 22px;
  color:var(--bt-blog-ink);
  font:600 11px/1 var(--bt-font-body);
  letter-spacing:.24em;
  text-transform:uppercase;
}

.bt-blogCard__title{
  margin:0 0 24px !important;
  color:var(--bt-blog-ink) !important;
  font-family:var(--bt-font-heading) !important;
  font-size:clamp(18px, 1.25vw, 21px) !important;
  font-weight:700 !important;
  letter-spacing:.055em !important;
  line-height:1.36 !important;
  text-transform:uppercase !important;
  overflow-wrap:anywhere;
}

.bt-blogCard .bt-text{
  margin:0 0 38px !important;
  font-size:15px !important;
  line-height:1.55 !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogCard :where(.bt-blogCard__title, .bt-blogCard__title.bt-title){
  font-size:clamp(18px, 1.25vw, 21px) !important;
  letter-spacing:.055em !important;
  line-height:1.36 !important;
}

.bt-blogCard .bt-blog-link{
  margin-top:auto;
}

.bt-blogDots{
  display:flex;
  justify-content:center;
  gap:16px;
  margin-top:70px;
}

.bt-blogDots span{
  width:14px;
  height:14px;
  border-radius:999px;
  background:var(--bt-blog-ink);
}

/* =========================================
   ARTICLE PAGE
========================================= */
.bt-blogArticleHero{
  position:relative;
  background:var(--bt-blog-navy);
  color:#fff;
  padding:clamp(54px, 6vw, 92px) 0 clamp(50px, 6vw, 78px);
}

.bt-blogArticleHero__inner{
  width:var(--bt-container);
  margin:0 auto;
  position:relative;
}

.bt-blogArticleHero__meta{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:18px;
  margin-bottom:38px;
  color:#aab7c6;
  font:400 16px/1.4 var(--bt-font-body);
}

.bt-blogPill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:0 28px;
  background:#7f8998;
  color:#fff;
  font:700 13px/1 var(--bt-font-body);
  letter-spacing:.28em;
  text-transform:uppercase;
}

.bt-blogArticleHero .bt-subtitle{
  color:#fff !important;
  margin:0 0 18px !important;
}

.bt-blogArticleHero .bt-title--h1{
  max-width:980px;
  color:#fff !important;
  font-size:clamp(32px, 3.6vw, 52px) !important;
  letter-spacing:.032em !important;
  line-height:1.2 !important;
  margin:0 !important;
}

.bt-blogArticleHero .bt-title--h1 span{
  color:var(--bt-blog-taupe-2);
}

.bt-blogArticleHero__byline{
  color:#fff;
  margin:20px 0 0 !important;
  font-size:16px !important;
}

.bt-blogShare{
  position:absolute;
  right:0;
  bottom:8px;
}

.bt-blogShare__button{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.38);
  border-radius:999px;
  background:rgba(255,255,255,.06);
  color:#fff;
  cursor:pointer;
  transition:background .2s ease, border-color .2s ease, transform .2s ease;
}

.bt-blogShare__button:hover{
  background:rgba(255,255,255,.14);
  border-color:rgba(255,255,255,.7);
  transform:translateY(-1px);
}

.bt-blogShare__button svg{
  width:28px;
  height:28px;
  stroke:currentColor;
  stroke-width:2;
  fill:none;
}

.bt-blogShare__menu{
  position:absolute;
  right:0;
  bottom:58px;
  min-width:245px;
  display:none;
  padding:12px;
  background:#fff;
  border:1px solid var(--bt-blog-line);
  box-shadow:0 18px 42px rgba(0,0,0,.22);
  z-index:10;
}

.bt-blogShare.is-open .bt-blogShare__menu{
  display:grid;
  gap:4px;
}

.bt-blogShare__menu a,
.bt-blogShare__menu button{
  display:flex;
  align-items:center;
  gap:12px;
  width:100%;
  border:0;
  background:transparent;
  color:var(--bt-blog-ink);
  padding:10px;
  text-align:left;
  font:600 13px/1.3 var(--bt-font-body);
  text-decoration:none;
  cursor:pointer;
  border-radius:8px;
}

.bt-blogShare__menu :where(a,button):hover{
  background:var(--bt-blog-cream);
}

.bt-shareIcon{
  width:30px;
  height:30px;
  flex:0 0 30px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:var(--bt-blog-navy);
  color:#fff;
  font:700 11px/1 var(--bt-font-body);
  letter-spacing:0;
}

.bt-blogArticleLayout{
  display:grid;
  grid-template-columns:minmax(0, 2fr) 386px;
  gap:clamp(36px, 5vw, 58px);
  align-items:start;
}

.bt-blogArticleMain img{
  width:100%;
  height:auto;
}

.bt-blogQuote{
  margin:clamp(34px, 4vw, 54px) 0;
  padding:clamp(24px, 3vw, 36px);
  border-left:5px solid var(--bt-blog-line);
  background:#faf8f7;
  color:#111;
  font-family:var(--bt-font-heading);
  font-size:clamp(21px, 2.2vw, 30px);
  line-height:1.48;
}

.bt-blogArticleMain h2{
  margin:clamp(32px, 4vw, 52px) 0 22px !important;
  color:var(--bt-blog-ink) !important;
  font-size:clamp(28px, 2.6vw, 38px) !important;
  letter-spacing:.04em !important;
  line-height:1.16 !important;
}

.bt-blogArticleMain p{
  margin:0 0 24px !important;
  max-width:780px;
  color:#111 !important;
  font-size:clamp(16px, 1.15vw, 18px) !important;
  line-height:1.58 !important;
}

.bt-blogArticleMain .bt-blogDivider{
  height:2px;
  max-width:780px;
  margin:38px 0;
  background:var(--bt-blog-line);
}

.bt-blogPostMeta{
  max-width:780px;
  margin-top:42px;
  padding-top:30px;
  border-top:2px solid var(--bt-blog-line);
  color:#111;
  font-size:17px;
}

.bt-blogPostMeta a{
  color:var(--bt-blog-taupe);
}

.bt-blogSidebar{
  display:grid;
  gap:42px;
  position:sticky;
  top:24px;
}

.bt-blogSideBox{
  border:1px solid var(--bt-blog-line);
  padding:clamp(26px, 3vw, 42px);
  background:#fff;
}

.bt-blogSideBox .bt-subtitle{
  color:var(--bt-blog-taupe) !important;
  margin:0 0 34px !important;
}

.bt-blogAgent{
  display:grid;
  grid-template-columns:112px 1fr;
  gap:22px;
  align-items:center;
  margin-bottom:28px;
}

.bt-blogAgent__photo{
  width:112px;
  height:112px;
  border-radius:999px;
  object-fit:cover;
  background:var(--bt-blog-navy);
}

.bt-blogAgent__name{
  margin:0 0 6px !important;
  color:var(--bt-blog-ink) !important;
  font:700 22px/1.1 var(--bt-font-body) !important;
  letter-spacing:0 !important;
  text-transform:none !important;
}

.bt-blogAgent__role{
  margin:0 !important;
  color:#111 !important;
  font-size:13px !important;
  line-height:1.4 !important;
}

.bt-blogSideBox .bt-cta-button{
  display:flex;
  justify-content:center;
  width:min(260px, 100%);
  margin:28px auto 0;
  padding:12px 22px !important;
  border:2px solid var(--bt-blog-line) !important;
  border-radius:999px !important;
  color:var(--bt-blog-taupe) !important;
  background:transparent !important;
  font-size:12px !important;
  text-decoration:none;
}

.bt-blogLatestList{
  display:grid;
  gap:0;
}

.bt-blogLatestList a{
  display:block;
  padding:0 0 24px;
  color:#111;
  text-decoration:none;
  border-bottom:2px solid var(--bt-blog-line);
}

.bt-blogLatestList a + a{
  padding-top:26px;
}

.bt-blogLatestList strong{
  display:block;
  margin-bottom:22px;
  font:500 16px/1.35 var(--bt-font-body);
}

.bt-blogLatestList span{
  color:#535353;
  font:400 15px/1.2 var(--bt-font-body);
}

.bt-blogSocial{
  display:flex;
  gap:10px;
  justify-content:center;
}

.bt-blogSocial a{
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#d0c8c1;
  color:#fff;
  font:700 14px/1 var(--bt-font-body);
  text-decoration:none;
}

/* =========================================
   NEWSLETTER / FOOTER CTA
========================================= */
.bt-blogNewsletter{
  background:var(--bt-blog-navy);
  color:#fff;
  padding:clamp(58px, 7vw, 96px) 0;
}

.bt-blogNewsletter__inner{
  width:var(--bt-container);
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0, 1.25fr) minmax(320px, .8fr);
  gap:clamp(44px, 7vw, 110px);
  align-items:center;
}

.bt-blogNewsletter .bt-subtitle{
  color:#fff !important;
  margin:0 0 26px !important;
}

.bt-blogNewsletter .bt-title{
  color:#fff !important;
  font-size:clamp(30px, 3.2vw, 48px) !important;
  letter-spacing:.065em !important;
  line-height:1.22 !important;
  margin:0 !important;
}

.bt-blogNewsletter .bt-title span{
  display:block;
  color:var(--bt-blog-taupe-2);
  margin-top:12px;
}

.bt-blogNewsletter .bt-blog-rule{
  width:130px;
  margin:34px 0;
}

.bt-blogNewsletter .bt-text{
  max-width:680px;
  color:#fff !important;
  margin:0 !important;
}

.bt-blogForm{
  display:grid;
  gap:30px;
}

.bt-blogForm label{
  display:grid;
  gap:12px;
  color:#fff;
  font:500 14px/1 var(--bt-font-body);
  letter-spacing:.28em;
  text-transform:uppercase;
}

.bt-blogForm input{
  width:100%;
  min-height:48px;
  border:0;
  border-radius:10px;
  background:#fff;
  color:#111;
  padding:0 18px;
  font:400 16px/1 var(--bt-font-body);
}

.bt-blogForm button{
  width:min(190px, 100%);
  min-height:42px;
  border:2px solid var(--bt-blog-line);
  border-radius:999px;
  background:transparent;
  color:#fff;
  font:600 12px/1 var(--bt-font-body);
  letter-spacing:.32em;
  text-transform:uppercase;
  cursor:pointer;
}

.bt-blogTagline{
  background:var(--bt-blog-navy);
  border-top:1px solid rgba(255,255,255,.42);
  color:#fff;
  padding:clamp(44px, 6vw, 76px) var(--bt-pad-x);
  text-align:center;
}

.bt-blogTagline .bt-title{
  color:#fff !important;
  font-size:clamp(28px, 3.4vw, 44px) !important;
  letter-spacing:.15em !important;
  margin:0 0 22px !important;
}

.bt-blogTagline .bt-text{
  color:#fff !important;
  font-size:clamp(13px, 1vw, 17px) !important;
  letter-spacing:.32em !important;
  line-height:1.55 !important;
  text-transform:uppercase;
  margin:0 !important;
}

/* =========================================
   RESPONSIVE
========================================= */
@media (max-width: 980px){
  .bt-blogFeatured,
  .bt-blogArticleLayout,
  .bt-blogNewsletter__inner{
    grid-template-columns:1fr;
  }

  .bt-blogFeatured__media img{
    min-height:360px;
  }

  .bt-blogGrid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .bt-blogSidebar{
    position:static;
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 680px){
  .bt-scope.bt-theme--luxury-blog{
    --bt-pad-x: clamp(18px, 5vw, 26px);
  }

  .bt-blogHero{
    min-height:460px;
  }

  .bt-blogHero .bt-title--h1,
  .bt-blogNewsletter .bt-title,
  .bt-blogArticleHero .bt-title--h1{
    letter-spacing:.045em !important;
  }

  .bt-blogTabs__inner{
    min-height:108px;
    justify-content:flex-start;
  }

  .bt-blogFeatured__content{
    padding:42px var(--bt-pad-x);
  }

  .bt-blogBandTitle__inner{
    grid-template-columns:1fr;
  }

  .bt-blogGrid,
  .bt-blogSidebar{
    grid-template-columns:1fr;
  }

  .bt-blogCard{
    min-height:0;
  }

  .bt-blogArticleHero__meta{
    margin-bottom:28px;
    font-size:15px;
  }

  .bt-blogShare{
    position:relative;
    right:auto;
    bottom:auto;
    margin-top:34px;
  }

  .bt-blogShare__menu{
    left:0;
    right:auto;
  }

  .bt-blogAgent{
    grid-template-columns:88px 1fr;
  }

  .bt-blogAgent__photo{
    width:88px;
    height:88px;
  }
}

/* =========================================================
   BOOMTOWN SHORTCODE ADAPTER
   Clean adapter for:
   [posts-in num_posts="1" disable_see_more="true"]
   [posts-in num_posts="6" disable_see_more="true"]
   ========================================================= */

/* -----------------------------
   Panels / tabs
----------------------------- */
.bt-scope.bt-theme--luxury-blog .bt-blogCategoryPanel[hidden]{
  display:none !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogCategoryPanel{
  background:var(--bt-blog-paper);
}

/* -----------------------------
   Shared BoomTown widget reset
----------------------------- */
.bt-scope.bt-theme--luxury-blog :where(.bt-blogFeaturedShortcode, .bt-blogShortcodeBlock--grid) .bt-widget,
.bt-scope.bt-theme--luxury-blog :where(.bt-blogFeaturedShortcode, .bt-blogShortcodeBlock--grid) .bt-blog-widget,
.bt-scope.bt-theme--luxury-blog :where(.bt-blogFeaturedShortcode, .bt-blogShortcodeBlock--grid) .bt-widget > div{
  width:100% !important;
  max-width:none !important;
}

.bt-scope.bt-theme--luxury-blog :where(.bt-blogFeaturedShortcode, .bt-blogShortcodeBlock--grid) .bt-cell-align,
.bt-scope.bt-theme--luxury-blog :where(.bt-blogFeaturedShortcode, .bt-blogShortcodeBlock--grid) .bt-more-bounce,
.bt-scope.bt-theme--luxury-blog :where(.bt-blogFeaturedShortcode, .bt-blogShortcodeBlock--grid) .flickity-button,
.bt-scope.bt-theme--luxury-blog :where(.bt-blogFeaturedShortcode, .bt-blogShortcodeBlock--grid) .flickity-page-dots{
  display:none !important;
}

.bt-scope.bt-theme--luxury-blog :where(.bt-blogFeaturedShortcode, .bt-blogShortcodeBlock--grid) .bt-card-slider{
  list-style:none !important;
  padding:0 !important;
  margin:0 !important;
  width:100% !important;
  height:auto !important;
  overflow:visible !important;
}

.bt-scope.bt-theme--luxury-blog :where(.bt-blogFeaturedShortcode, .bt-blogShortcodeBlock--grid) .flickity-viewport,
.bt-scope.bt-theme--luxury-blog :where(.bt-blogFeaturedShortcode, .bt-blogShortcodeBlock--grid) .flickity-slider{
  height:auto !important;
  overflow:visible !important;
  transform:none !important;
}

.bt-scope.bt-theme--luxury-blog :where(.bt-blogFeaturedShortcode, .bt-blogShortcodeBlock--grid) .bt-card-wrapper{
  left:auto !important;
  margin:0 !important;
  padding:0 !important;
  transform:none !important;
}

/* =========================================================
   FEATURED SHORTCODE
   Mirrors original .bt-blogFeatured layout:
   image left / content right
   ========================================================= */
.bt-scope.bt-theme--luxury-blog .bt-blogFeatured--shortcode{
  display:block !important;
  width:100vw !important;
  max-width:100vw !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
  margin-top:0 !important;
  margin-bottom:0 !important;
  min-height:0 !important;
  padding:0 !important;
  background:var(--bt-blog-paper) !important;
  overflow:hidden !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode{
  display:block !important;
  width:100vw !important;
  max-width:100vw !important;
  margin:0 !important;
  padding:0 !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .bt-card-slider,
.bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .flickity-viewport,
.bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .flickity-slider{
  display:block !important;
  position:static !important;
  width:100% !important;
  max-width:100% !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .bt-card-wrapper{
  display:block !important;
  position:static !important;
  width:100% !important;
  max-width:100% !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .bt-card-wrapper:not(:first-child){
  display:none !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .bt-gen-teaser{
  display:grid !important;
  grid-template-columns:minmax(0, 44vw) minmax(0, 1fr) !important;
  width:100vw !important;
  max-width:100vw !important;
  min-height:clamp(390px, 30vw, 520px) !important;
  background:var(--bt-blog-paper) !important;
  border:0 !important;
  box-shadow:none !important;
  overflow:hidden !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .bt-cover__wrapper{
  display:block !important;
  width:100% !important;
  height:100% !important;
  min-height:clamp(390px, 30vw, 520px) !important;
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
  color:transparent !important;
  text-decoration:none !important;
  overflow:hidden !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .bt-cover__wrapper::before,
.bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .bt-cover__wrapper::after{
  display:none !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .bt-gen-teaser__info{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  width:100% !important;
  max-width:none !important;
  padding:clamp(42px, 6vw, 82px) clamp(46px, 7vw, 96px) !important;
  box-sizing:border-box !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .bt-heading__h3{
  order:1 !important;
  margin:0 0 26px !important;
  padding:0 !important;
  max-width:820px !important;
  color:var(--bt-blog-ink) !important;
  font-family:var(--bt-font-heading) !important;
  font-size:clamp(30px, 3.6vw, 46px) !important;
  font-weight:400 !important;
  line-height:1.22 !important;
  letter-spacing:.045em !important;
  text-transform:uppercase !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
  writing-mode:horizontal-tb !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .bt-heading__h3::before{
  content:attr(data-bt-blog-label);
  display:block;
  margin:0 0 28px;
  color:var(--bt-blog-ink);
  font:600 13px/1.5 var(--bt-font-body);
  letter-spacing:.28em;
  text-transform:uppercase;
}


.bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .bt-heading__h3 a{
  color:var(--bt-blog-ink) !important;
  text-decoration:none !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .bt-heading__h3 a span{
  color:#9eacbc;
}

.bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .bt-gen-teaser__author-block{
  order:2 !important;
  display:block !important;
  margin:0 0 22px !important;
  padding:0 !important;
  border:0 !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .bt-gen-teaser__author-block .pr-12,
.bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .bt-gen-teaser__written-by{
  display:none !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .uk-text-small{
  display:flex !important;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
  color:var(--bt-blog-ink) !important;
  font:600 11px/1.4 var(--bt-font-body) !important;
  letter-spacing:.28em !important;
  text-transform:uppercase !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .uk-text-small div{
  display:none !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .uk-text-small div:nth-child(1),
.bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .uk-text-small div:nth-child(2){
  display:flex !important;
  align-items:center;
  gap:10px;
}

.bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .uk-text-small div:nth-child(2){
  order:1;
}

.bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .uk-text-small div:nth-child(1){
  order:2;
}

.bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .uk-text-small div:nth-child(1)::before{
  content:"·";
}

.bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .uk-text-small a,
.bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .uk-text-small time{
  color:var(--bt-blog-ink) !important;
  text-decoration:none !important;
  font:inherit !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .bt-gen-teaser__info > p{
  order:3 !important;
  max-width:680px !important;
  margin:0 0 36px !important;
  color:var(--bt-blog-copy) !important;
  font-family:var(--bt-font-body) !important;
  font-size:clamp(16px, 1.3vw, 19px) !important;
  font-weight:400 !important;
  line-height:1.65 !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .bt-gen-teaser__info::after{
  order:4;
  content:"Read More";
  display:inline-flex;
  align-items:center;
  gap:24px;
  width:fit-content;
  color:var(--bt-blog-ink);
  font-family:var(--bt-font-body);
  font-size:12px;
  font-weight:700;
  letter-spacing:.28em;
  line-height:1;
  text-transform:uppercase;
}

.bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .bt-gen-teaser__info::after{
  background:
    linear-gradient(currentColor,currentColor)
    right calc(50% + 10px) / 76px 2px no-repeat;
  padding-right:100px;
}


/* Feature full-bleed hardening: keeps image/content glued to page edges in BoomTown containers */
.bt-scope.bt-theme--luxury-blog .bt-blogFeatured--edge,
.bt-scope.bt-theme--luxury-blog .bt-blogFeatured--shortcode{
  position:relative !important;
  left:auto !important;
  right:auto !important;
  width:100vw !important;
  max-width:100vw !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
  padding:0 !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode :where(.bt-widget, .bt-blog-widget, .bt-widget > div, ul, li, article){
  margin-top:0 !important;
  margin-bottom:0 !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .bt-gen-teaser{
  border:0 !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .bt-cover__wrapper[style*="default.jpg"]{
  background-position:center center !important;
}

/* =========================================================
   GRID SHORTCODE
   Mirrors original .bt-blogCard layout
   ========================================================= */
.bt-scope.bt-theme--luxury-blog .bt-blogPostsSection{
  width:100vw !important;
  max-width:100vw !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
  padding:clamp(58px, 7vw, 110px) 0 !important;
  background:var(--bt-blog-paper) !important;
  overflow:visible !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogPostsSection > .bt-container{
  width:min(1180px, calc(100vw - (var(--bt-pad-x) * 2))) !important;
  max-width:1180px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-left:0 !important;
  padding-right:0 !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid{
  width:100% !important;
  max-width:none !important;
  margin:0 auto !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid .bt-widget,
.bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid .bt-blog-widget,
.bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid .bt-widget > div{
  width:100% !important;
  max-width:none !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid :where(.bt-cell-align, .bt-more-bounce, .flickity-button, .flickity-page-dots){
  display:none !important;
}

/* Supports both BoomTown outputs:
   1) slider markup (.bt-card-slider + Flickity wrappers)
   2) grid/list markup when disable_see_more is enabled
*/
.bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid :where(.bt-card-slider, .js-card-slider, .bt-listing-teaser--vertical-wrapper, .grid, .grid--flexCells){
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0, 320px)) !important;
  justify-content:center !important;
  align-items:stretch !important;
  gap:clamp(36px, 4vw, 58px) !important;
  width:100% !important;
  max-width:none !important;
  height:auto !important;
  overflow:visible !important;
  list-style:none !important;
  padding:0 !important;
  margin:0 auto !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid :where(.flickity-viewport, .flickity-slider){
  display:contents !important;
  position:static !important;
  width:auto !important;
  max-width:none !important;
  height:auto !important;
  overflow:visible !important;
  transform:none !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid :where(.bt-card-wrapper, .cell){
  position:static !important;
  left:auto !important;
  right:auto !important;
  top:auto !important;
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  min-height:100% !important;
  margin:0 !important;
  padding:0 !important;
  transform:none !important;
  box-sizing:border-box !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid .bt-gen-teaser{
  display:flex !important;
  flex-direction:column !important;
  height:100%;
  min-height:560px;
  overflow:hidden;
  background:#fff !important;
  color:var(--bt-blog-copy);
  border:1px solid var(--bt-blog-line) !important;
  box-shadow:none !important;
  transition:transform .25s ease, border-color .25s ease;
}

.bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid .bt-gen-teaser:hover{
  transform:translateY(-4px);
  border-color:var(--bt-blog-ink) !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid .bt-cover__wrapper{
  position:relative;
  display:block !important;
  width:100%;
  min-height:220px;
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
  color:transparent !important;
  text-decoration:none !important;
  overflow:hidden;
}

.bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid .bt-cover__wrapper::before{
  display:none !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid .bt-cover__wrapper::after{
  content:"Latest Blog";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  min-height:44px;
  display:flex;
  align-items:center;
  padding:0 24px;
  background:var(--bt-blog-navy);
  color:var(--bt-blog-taupe-2);
  font:700 12px/1 var(--bt-font-body);
  letter-spacing:.3em;
  text-transform:uppercase;
}

/* Fallback label by tab. If BoomTown exposes a category, JS writes
   data-bt-blog-label on the cover and the next rule wins. */
.bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid[data-bt-category="buyers"] .bt-cover__wrapper::after{ content:"For Buyers"; }
.bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid[data-bt-category="sellers"] .bt-cover__wrapper::after{ content:"For Sellers"; }
.bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid[data-bt-category="market"] .bt-cover__wrapper::after{ content:"About the Market"; }
.bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid[data-bt-category="bcs"] .bt-cover__wrapper::after{ content:"About BCS"; }
.bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid[data-bt-category="vacations"] .bt-cover__wrapper::after{ content:"Vacations"; }
.bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid .bt-cover__wrapper[data-bt-blog-label]::after{ content:attr(data-bt-blog-label); }

.bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid .bt-gen-teaser__info{
  display:flex !important;
  flex:1;
  flex-direction:column;
  padding:clamp(26px, 3vw, 38px);
}

.bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid .bt-gen-teaser__author-block{
  order:1 !important;
  display:block !important;
  margin:0 0 22px !important;
  padding:0 !important;
  border:0 !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid .bt-gen-teaser__author-block .pr-12,
.bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid .bt-gen-teaser__written-by,
.bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid .bt-gen-teaser__author{
  display:none !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid .uk-text-small{
  color:var(--bt-blog-ink) !important;
  font:600 11px/1 var(--bt-font-body) !important;
  letter-spacing:.24em !important;
  text-transform:uppercase !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid .uk-text-small div{
  display:none !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid .uk-text-small div:nth-child(2){
  display:block !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid .uk-text-small time{
  color:var(--bt-blog-ink) !important;
  font:inherit !important;
  text-decoration:none !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid .bt-heading__h3{
  order:2 !important;
  margin:0 0 24px !important;
  padding:0 !important;
  color:var(--bt-blog-ink) !important;
  font-family:var(--bt-font-heading) !important;
  font-size:clamp(18px, 1.25vw, 21px) !important;
  font-weight:700 !important;
  line-height:1.36 !important;
  letter-spacing:.055em !important;
  text-transform:uppercase !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
  writing-mode:horizontal-tb !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid .bt-heading__h3 a{
  color:var(--bt-blog-ink) !important;
  text-decoration:none !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid .bt-heading__h3 a:hover{
  color:var(--bt-blog-taupe) !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid .bt-gen-teaser__info > p{
  order:3 !important;
  display:-webkit-box;
  -webkit-line-clamp:4;
  -webkit-box-orient:vertical;
  overflow:hidden;
  margin:0 0 38px !important;
  color:var(--bt-blog-copy) !important;
  font-family:var(--bt-font-body) !important;
  font-size:15px !important;
  font-weight:400 !important;
  line-height:1.55 !important;
}

.bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid .bt-gen-teaser__info::after{
  order:4;
  content:"Read More \2192";
  display:inline-flex;
  align-items:center;
  width:fit-content;
  margin-top:auto;
  color:var(--bt-blog-ink);
  font-family:var(--bt-font-body);
  font-size:12px;
  font-weight:700;
  letter-spacing:.28em;
  line-height:1;
  text-transform:uppercase;
}

/* -----------------------------
   Responsive shortcode adapter
----------------------------- */
@media (max-width: 980px){
  .bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .bt-gen-teaser{
    grid-template-columns:1fr !important;
    min-height:0 !important;
  }

  .bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .bt-cover__wrapper{
    min-height:340px !important;
  }

  .bt-scope.bt-theme--luxury-blog .bt-blogPostsSection > .bt-container{
    width:min(760px, calc(100vw - (var(--bt-pad-x) * 2))) !important;
  }

  .bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid :where(.bt-card-slider, .js-card-slider, .bt-listing-teaser--vertical-wrapper, .grid, .grid--flexCells){
    grid-template-columns:repeat(2, minmax(0, 320px)) !important;
    gap:34px !important;
  }
}

@media (max-width: 680px){
  .bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .bt-gen-teaser__info{
    padding:42px var(--bt-pad-x) !important;
  }

  .bt-scope.bt-theme--luxury-blog .bt-blogFeaturedShortcode .bt-heading__h3{
    letter-spacing:.045em !important;
    font-size:clamp(28px, 8vw, 38px) !important;
  }

  .bt-scope.bt-theme--luxury-blog .bt-blogPostsSection{
    padding:42px 0 !important;
  }

  .bt-scope.bt-theme--luxury-blog .bt-blogPostsSection > .bt-container{
    width:min(420px, calc(100vw - (var(--bt-pad-x) * 2))) !important;
  }

  .bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid :where(.bt-card-slider, .js-card-slider, .bt-listing-teaser--vertical-wrapper, .grid, .grid--flexCells){
    grid-template-columns:minmax(0, 1fr) !important;
    gap:28px !important;
  }

  .bt-scope.bt-theme--luxury-blog .bt-blogShortcodeBlock--grid .bt-gen-teaser{
    min-height:0;
  }
}
