/* Burn & Bury editorial layout */
:root {
  --bb-ink: #222;
  --bb-muted: #5b6470;
  --bb-line: #d9dee4;
  --bb-accent: #e23a3e;
}

.bb-home-title {
  max-width: 1180px;
  margin: 1.5rem auto 1rem;
  padding: 0 18px;
  color: var(--bb-ink);
  font-size: clamp(1.5rem, 3.6vw, 3.25rem);
  line-height: 1.2;
  text-align: center;
}

.bb-home-spotlight .featured_item img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.bb-home-spotlight .featured_title_over h2 {
  font-size: 20px;
  line-height: 1.25;
}

.bb-home-spotlight .featured_excerpt p {
  font-size: 13px;
  line-height: 18px;
}

.bb-preview-card .entry-image {
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: #eef1f4;
}

.bb-preview-card .entry-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.bb-preview-card .entry-title {
  min-height: 2.6em;
}

.bb-preview-copy {
  display: block;
  color: inherit;
  font: inherit;
  line-height: 1.5;
}

.bb-article-page .author-box .data-content {
  width: 100%;
  margin-left: 0;
}

.bb-editorial-picks .featured_image_sidebar {
  display: block;
  float: none;
  width: 100%;
  aspect-ratio: 350 / 185;
  overflow: hidden;
}

.bb-editorial-picks .featured_image_sidebar img {
  display: block;
  float: none;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.bb-editorial-picks .featured_title_over {
  padding: 14px;
}

.bb-editorial-picks .featured_posts_link {
  font-size: 18px;
  line-height: 1.25;
}

.bb-house-widget .bb-house-visual {
  display: block;
  clear: both;
  width: 100%;
  margin-bottom: 14px;
  overflow: hidden;
  border-radius: 3px;
  background: #1d222a;
}

.bb-house-widget .bb-house-visual img {
  display: block;
  width: 100%;
  height: auto;
}

.bb-house-widget p {
  margin: 0 0 12px;
  line-height: 1.55;
}

.bb-house-widget .bb-house-links {
  display: flex;
  gap: 18px;
  font-size: 14px;
  font-weight: 600;
}

.widget_categories .cat-item a {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}

.widget_categories .count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.7em;
  min-height: 1.7em;
  border-radius: 50%;
  background: #eef0f2;
  color: #4e5661;
  font-size: 0.8em;
  line-height: 1;
}

.bb-read-more {
  display: inline-flex;
  align-items: center;
  min-height: 2.5rem;
}

.bb-article-page .featured_image img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
}

.bb-article-content,
.bb-article-content p,
.bb-article-content > p:first-of-type {
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
}

.bb-article-content p {
  line-height: 1.75;
}

.bb-article-content img,
.bb-article-content figure {
  display: block !important;
  float: none !important;
  max-width: 100%;
  height: auto !important;
  margin: 1.5rem auto !important;
}

.bb-article-content figure {
  text-align: center;
}

.bb-article-content table {
  display: block;
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  border-collapse: collapse;
  -webkit-overflow-scrolling: touch;
}

.bb-article-content th,
.bb-article-content td {
  padding: 0.7rem;
  border: 1px solid var(--bb-line);
  text-align: left;
  vertical-align: top;
}

.bb-article-content ul,
.bb-article-content ol {
  margin: 1rem 0;
  padding-left: 1.5rem;
}

.bb-article-content li {
  margin: 0.35rem 0;
  line-height: 1.65;
}

.bb-article-content dl {
  display: grid;
  gap: 0.75rem;
  margin: 1.4rem 0;
}

.bb-article-content dl > div {
  padding: 1rem 1.1rem;
  border: 1px solid var(--bb-line);
  border-left: 4px solid var(--bb-accent);
  border-radius: 7px;
  background: #f8f9fb;
  box-shadow: 0 3px 12px rgba(34, 34, 34, 0.05);
}

.bb-article-content dl dt {
  color: var(--bb-ink);
  font-size: 1.02rem;
  font-weight: 700;
  line-height: 1.35;
}

.bb-article-content dl dd {
  margin: 0.45rem 0 0;
  color: var(--bb-muted);
  line-height: 1.65;
}

.bb-article-content dl dd p {
  margin: 0;
}

.bb-contact-form {
  display: grid;
  gap: 1rem;
  max-width: 680px;
  margin: 1.5rem 0;
}

.bb-form-field label {
  display: block;
  margin-bottom: 0.35rem;
  color: var(--bb-ink);
  font-weight: 600;
}

.bb-form-field input,
.bb-form-field textarea {
  box-sizing: border-box;
  width: 100%;
  padding: 0.75rem;
  border: 1px solid #aeb7c1;
  border-radius: 3px;
  color: var(--bb-ink);
  background: #fff;
  font: inherit;
}

.bb-form-field textarea {
  min-height: 9rem;
  resize: vertical;
}

.bb-form-note,
.bb-form-status {
  margin: 0;
  color: var(--bb-muted);
  font-size: 0.95em;
}

.bb-form-status:empty {
  display: none;
}

@media (max-width: 600px) {
  .bb-home-title {
    padding: 0 14px;
  }
}

html, body { height: 100%; }
body { display: flex; flex-direction: column; min-height: 100vh; }
.thr_boxed_off, .thr_boxed_wrapper_off { display: flex; flex-direction: column; flex: 1 0 auto; width: 100%; }
.main_content_wrapper, .main_wrapper { flex: 1 0 auto; }
.footer_wrapper { margin-top: auto; flex-shrink: 0; }
#sticky_header:not(.header-is-sticky) { pointer-events: none !important; visibility: hidden !important; opacity: 0 !important; display: none !important; }
#sticky_header.header-is-sticky { pointer-events: auto !important; visibility: visible !important; opacity: 1 !important; display: block !important; }
@media (max-width: 950px) { .meta-share.meta-item, .soc_sharing { display: none !important; } }
.thr_post_num { display: none !important; }
#header .logo_wrapper { top: 5px; }
#header .logo_wrapper .brand-logo-img { display: block; width: auto; height: 78px; max-height: none; }
#header #nav > ul {
  display: flex;
  align-items: stretch;
  gap: 18px;
  float: none;
  height: 82px;
}
#header #nav > ul > li {
  display: flex;
  align-items: center;
  float: none;
  height: 82px;
  margin: 0;
}
#header #nav > ul > li > a {
  display: inline-flex;
  align-items: center;
  float: none;
  height: 82px;
  padding: 0;
  line-height: 1.2;
  white-space: nowrap;
}
#header #nav > ul > li.menu-item-has-children::after {
  float: none;
  align-self: center;
  margin: 0 0 0 5px;
  line-height: 1;
}
#header #nav > ul > li > .sub-menu {
  top: 100%;
  left: 0;
  width: 280px;
  min-width: 280px;
  max-width: calc(100vw - 32px);
  border-top: 2px solid var(--bb-accent);
  box-shadow: 0 12px 24px rgb(0 0 0 / 18%);
}
#header #nav > ul > li:nth-last-child(-n + 3) > .sub-menu {
  right: 0;
  left: auto;
}
#header #nav .sub-menu a {
  float: none;
  padding: 11px 16px;
  line-height: 1.35;
  text-transform: none;
}
#header #nav > ul > li:focus-within > .sub-menu {
  display: block;
  max-height: none;
}
#sticky_header .logo_wrapper { top: 0; max-height: none; }
#sticky_header .logo_wrapper .brand-logo-img {
  display: block;
  width: auto;
  height: 50px;
  max-height: none;
}
#sticky_header #nav > ul {
  display: flex;
  align-items: stretch;
  gap: 18px;
  float: none;
  height: 50px;
}
#sticky_header #nav > ul > li {
  display: flex;
  align-items: center;
  float: none;
  height: 50px;
  margin: 0;
}
#sticky_header #nav > ul > li > a {
  display: inline-flex;
  align-items: center;
  float: none;
  height: 50px;
  padding: 0;
  line-height: 1.2;
  white-space: nowrap;
}
#sticky_header #nav > ul > li.menu-item-has-children::after {
  float: none;
  align-self: center;
  margin: 0 0 0 5px;
  line-height: 1;
}
#sticky_header #nav > ul > li > .sub-menu {
  top: 100%;
  left: 0;
  width: 280px;
  min-width: 280px;
  max-width: calc(100vw - 32px);
  border-top: 2px solid var(--bb-accent);
  box-shadow: 0 12px 24px rgb(0 0 0 / 18%);
}
#sticky_header #nav > ul > li:nth-last-child(-n + 3) > .sub-menu {
  right: 0;
  left: auto;
}
#sticky_header #nav .sub-menu a {
  float: none;
  padding: 11px 16px;
  line-height: 1.35;
  text-transform: none;
}
#sticky_header #nav > ul > li:focus-within > .sub-menu {
  display: block;
  max-height: none;
}
@media (max-width: 950px) {
  #header .logo_wrapper .brand-logo-img { width: auto !important; height: 64px !important; max-height: none !important; }
  #sticky_header .logo_wrapper { top: 0 !important; }
  #sticky_header .logo_wrapper .brand-logo-img { width: auto !important; height: 50px !important; max-height: none !important; }
}
@media (min-width: 1241px) {
  #header .header-main > .content_wrapper { width: calc(100% - 48px); max-width: 1320px; }
  #sticky_header > .content_wrapper { width: calc(100% - 48px); max-width: 1320px; }
}
@media (min-width: 951px) and (max-width: 1240px) {
  #header #nav { display: none; }
  #sticky_header #nav { display: none; }
  #header .nav-btn { display: block; }
  #sticky_header .nav-btn { display: block; top: 9px; }
  #header .header-main { height: 60px !important; text-align: center; }
  #sticky_header { text-align: center; }
  #sticky_header .logo_wrapper { position: relative; display: inline-block; top: 0 !important; left: 0 !important; width: 150px; margin: 0 auto; }
  #header .logo_wrapper { position: relative; display: inline-block; top: 0 !important; left: 0 !important; width: 220px; margin: 0 auto; }
  #header .logo_wrapper .brand-logo-img { width: auto; height: 64px; }
}
.bb-editorial-caption { display: block; margin-top: 6px; color: #777; font-size: 13px; font-style: italic; text-align: center; }
.bb-editorial-note { margin: 24px 0; padding: 0; border: 0; background: transparent; color: inherit; }
.bb-editorial-note h4 { margin: 0 0 .5em; color: inherit; font: inherit; font-weight: 600; letter-spacing: normal; text-transform: none; }
.bb-editorial-note p { margin: 0; color: inherit; font: inherit; line-height: inherit; }
.bb-faq { margin-top: 30px; padding-top: 20px; border-top: 2px solid #eaeaea; }
.bb-faq__item { margin-bottom: 12px; border: 1px solid #e2e6ea; border-radius: 3px; background: #fff; }
.bb-faq__item summary { position: relative; padding: 14px 18px; color: #222; font-family: 'PT Sans Narrow', 'Roboto Condensed', sans-serif; font-size: 18px; font-weight: 700; cursor: pointer; list-style: none; }
.bb-faq__item summary::-webkit-details-marker { display: none; }
.bb-faq__item summary::after { position: absolute; top: 10px; right: 18px; color: #d95328; font-size: 20px; content: '+'; }
.bb-faq__item[open] summary::after { content: '-'; }
.bb-faq__content { padding: 0 18px 16px; color: #444; font-size: 15px; line-height: 1.7; }
