/* Individual Templates posts only. Events and Home Decor singles keep Flatsome defaults. */
.bc-template-single-wrapper{padding:24px 0 48px;background:#fbfaf6;color:#29332a}
.bc-template-single-wrapper .row{max-width:1240px;margin-left:auto;margin-right:auto}
.bc-template-single-wrapper .bc-template-single-main{min-width:0}
.bc-template-single-entry{--bc-template-forest:#214a31;--bc-template-leaf:#3e7951;--bc-template-border:#e2e7df;color:#29332a}
.bc-template-single-entry *{box-sizing:border-box}
.bc-template-single-breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin:0 0 22px;color:#858b80;font-size:12px;line-height:1.6}
.bc-template-single-breadcrumbs a{color:#526b56;text-decoration:none}.bc-template-single-breadcrumbs a:hover{color:#214a31;text-decoration:underline}.bc-template-single-breadcrumbs span[aria-current=page]{max-width:52%;overflow:hidden;color:#6b7468;text-overflow:ellipsis;white-space:nowrap}
.bc-template-single-header{margin:0 0 25px;padding:0 0 22px;border-bottom:1px solid #e2e7df}.bc-template-single-topline{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:13px}.bc-template-single-category{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border:1px solid #dce6d9;border-radius:999px;background:#edf3ea;color:#315b3e;font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.bc-template-single-category span{color:#b98c43}.bc-template-single-type{color:#7b8377;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.bc-template-single-header h1{max-width:900px;margin:0 0 13px;color:#1b291f;font-family:Georgia,'Times New Roman',serif;font-size:clamp(32px,4vw,48px);font-weight:600;letter-spacing:-.04em;line-height:1.08}.bc-template-single-intro{max-width:760px;margin:0 0 15px;color:#626b60;font-size:15px;line-height:1.8}.bc-template-single-meta{display:flex;flex-wrap:wrap;align-items:center;gap:9px;color:#82877d;font-size:11px}
.bc-template-single-eyebrow{display:flex;align-items:center;gap:8px;margin:0 0 11px;color:#697764;font-size:9px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.bc-template-single-eyebrow>span{display:inline-block;width:19px;height:2px;background:#c69a4d}.bc-template-single-files{margin:0 0 30px}.bc-template-single-files-heading{margin:0 0 17px}.bc-template-single-files-heading h2{margin:0 0 8px;color:#1c2b20;font-family:Georgia,'Times New Roman',serif;font-size:clamp(25px,2.7vw,33px);font-weight:600;letter-spacing:-.03em;line-height:1.15}.bc-template-single-files-heading>p:last-child{margin:0;color:#697165;font-size:13px;line-height:1.7}
.bc-template-single-files-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:stretch}.bc-template-file-card{display:flex;min-width:0;flex-direction:column;overflow:hidden;border:1px solid #e1e7de;border-radius:16px;background:#fff;box-shadow:0 7px 22px rgba(35,54,39,.07);transition:transform .2s ease,box-shadow .2s ease}.bc-template-file-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(35,54,39,.11)}
.bc-template-file-preview{position:relative;display:flex;width:100%;height:280px;min-height:280px;flex:0 0 280px;align-items:center;justify-content:center;overflow:hidden;padding:18px;background:linear-gradient(145deg,#eff2ee,#e7ece6);border-bottom:1px solid #e2e7df}.bc-template-file-image-link{display:flex;width:100%;height:100%;min-height:0;align-items:center;justify-content:center;text-decoration:none!important}.bc-template-file-preview-image{display:block;width:auto!important;height:auto!important;max-width:100%;max-height:100%;object-fit:contain;border:1px solid rgba(255,255,255,.85);background:#fff;box-shadow:0 12px 26px rgba(23,37,27,.15);transition:transform .2s ease}.bc-template-file-image-link:hover .bc-template-file-preview-image{transform:scale(1.025)}.bc-template-file-preview-label{position:absolute;top:14px;left:14px;padding:6px 9px;border:1px solid rgba(255,255,255,.8);border-radius:999px;background:rgba(255,255,255,.92);color:#315b3e;font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;box-shadow:0 3px 10px rgba(20,40,26,.06)}
.bc-template-file-placeholder{display:flex;width:min(78%,270px);min-height:270px;flex-direction:column;justify-content:center;gap:12px;padding:30px;border:1px solid #e2e4dd;background:#fff;box-shadow:0 12px 26px rgba(23,37,27,.13)}.bc-template-file-placeholder span{margin-bottom:10px;color:#315b3e;font-size:24px;font-weight:800;letter-spacing:.1em}.bc-template-file-placeholder i{display:block;width:100%;height:6px;border-radius:5px;background:#e8ebe5}.bc-template-file-placeholder i:nth-of-type(2){width:78%}.bc-template-file-placeholder i:nth-of-type(3){width:92%}.bc-template-file-placeholder i:nth-of-type(4){width:65%}
.bc-template-file-body{display:flex;flex:1;flex-direction:column;padding:18px}.bc-template-file-name-meta{display:flex;min-width:0;min-height:49px;flex-direction:column;gap:6px;margin:0 0 13px;padding:0 0 12px;border-bottom:1px solid #e8ece5}.bc-template-file-name-meta small{color:#8a9086;font-size:8px;font-weight:800;letter-spacing:.13em;line-height:1.3}.bc-template-file-name-meta strong{display:-webkit-box;overflow:hidden;color:#273b2b;font-size:12px;font-weight:800;line-height:1.45;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:2}.bc-template-file-details{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:9px;margin:0 0 15px}.bc-template-file-details>div{display:flex;min-width:0;min-height:76px;flex-direction:column;align-items:flex-start;gap:6px;padding:12px;border:1px solid #e1e7de;border-radius:10px;background:#f7f9f5}.bc-template-file-details small{color:#8a9086;font-size:8px;font-weight:800;letter-spacing:.13em;line-height:1.3}.bc-template-file-details strong{color:#315b3e;font-size:11px;font-weight:800;line-height:1.4;overflow-wrap:anywhere}.bc-template-file-details span{color:#858b80;font-size:10px}.bc-template-file-no-download{margin:0 0 12px;color:#747d70;font-size:12px;line-height:1.6}.bc-template-single-shortcode-grid{margin:22px 0 28px}.bc-template-single-shortcode-grid:first-child{margin-top:0}
.bc-template-single-download-button{display:flex;min-height:48px;align-items:center;justify-content:center;gap:10px;margin-top:auto;padding:12px 15px;border:1px solid #2e6b45;border-radius:9px;background:#397b50;color:#fff!important;font-size:12px;font-weight:800;text-align:center;text-decoration:none!important;box-shadow:0 7px 16px rgba(24,60,45,.13);transition:transform .2s ease,background .2s ease,box-shadow .2s ease}.bc-template-single-download-button>span:first-child{font-size:20px;line-height:1}.bc-template-single-download-arrow{margin-left:auto;font-size:16px}.bc-template-single-download-button:hover{transform:translateY(-2px);background:#285e3c;color:#fff!important;box-shadow:0 10px 20px rgba(24,60,45,.2)}
.bc-template-single-download-layout{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:20px;align-items:stretch;margin:0 0 34px}.bc-template-single-preview-panel,.bc-template-single-file-card{overflow:hidden;border:1px solid #e2e7df;border-radius:16px;background:#fff;box-shadow:0 7px 22px rgba(35,54,39,.055)}.bc-template-single-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;border-bottom:1px solid #e5e9e1;background:#fff;color:#4d5d4e;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.bc-template-single-preview-number{display:grid;width:28px;height:28px;place-items:center;border-radius:50%;background:#edf1ec;color:#365941;font-size:10px;letter-spacing:0}.bc-template-single-preview-stage{display:flex;min-height:280px;align-items:center;justify-content:center;padding:22px;background:linear-gradient(145deg,#eff2ee,#e7ece6)}.bc-template-single-preview-image{display:block;max-width:100%;width:auto;max-height:430px;height:auto;object-fit:contain;border:1px solid rgba(255,255,255,.8);background:#fff;box-shadow:0 12px 26px rgba(23,37,27,.15)}.bc-template-single-file-card{display:flex;flex-direction:column;padding:clamp(20px,2.3vw,30px);background:linear-gradient(155deg,#fffefa 0%,#f8faf6 100%)}.bc-template-single-file-card h2,.bc-template-single-content-heading h2{margin:0 0 11px;color:#1c2b20;font-family:Georgia,'Times New Roman',serif;font-size:clamp(24px,2.6vw,32px);font-weight:600;letter-spacing:-.03em;line-height:1.15}.bc-template-single-file-details--missing p{margin:0;color:#737c70;font-size:12px;line-height:1.7}.bc-template-single-file-icon{display:grid;width:44px;height:48px;flex:0 0 44px;place-items:center;border:1px solid #dce6d9;border-radius:9px;background:#edf3ea;color:#315b3e;font-size:25px}.bc-template-single-filename-row{display:flex;min-width:0;align-items:center;gap:12px;padding:0 0 14px;border-bottom:1px solid #e9ece6}.bc-template-single-file-name-wrap{display:flex;min-width:0;flex-direction:column;gap:5px}.bc-template-single-file-name-wrap small,.bc-template-single-file-specs small{color:#8a9086;font-size:8px;font-weight:800;letter-spacing:.13em;line-height:1.3}.bc-template-single-file-name-wrap strong{overflow-wrap:anywhere;color:#27362a;font-size:12px;font-weight:750;line-height:1.45}.bc-template-single-file-specs{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:12px;padding-top:14px}.bc-template-single-file-specs>div{display:flex;min-width:0;flex-direction:column;align-items:flex-start;gap:6px}.bc-template-single-file-specs strong{color:#315b3e;font-size:12px;font-weight:800;line-height:1.4;overflow-wrap:anywhere}.bc-template-single-file-specs>div>span{color:#858b80;font-size:10px}.bc-template-single-trust-note{display:flex;align-items:flex-start;gap:8px;margin-top:15px;color:#7d8578;font-size:10px;line-height:1.6}.bc-template-single-trust-note span{display:grid;width:17px;height:17px;flex:0 0 17px;place-items:center;border-radius:50%;background:#e7efe4;color:#315b3e;font-size:10px;font-weight:900}
.bc-template-single-article-content{margin:0 0 28px;padding:clamp(20px,3vw,32px);border:1px solid #e7e9e2;border-radius:16px;background:#fff;box-shadow:0 6px 20px rgba(35,54,39,.035)}.bc-template-single-content-heading{margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #e8ebe5}.bc-template-single-content-heading .bc-template-single-eyebrow{margin-bottom:8px}.bc-template-single-content p{color:#596457;font-size:14px;line-height:1.85}.bc-template-single-content h2,.bc-template-single-content h3,.bc-template-single-content h4{color:#203d2a}.bc-template-single-content img{max-width:100%;height:auto;border-radius:8px}.bc-template-single-footer{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:20px 0;color:#7d8578;font-size:11px}.bc-template-single-footer a{color:#315b3e;text-decoration:none}.bc-template-single-footer a:hover{text-decoration:underline}
/* Sidebar matches the same cream/forest-green visual style on template posts only. */
.bc-template-single-wrapper .bc-template-single-sidebar{min-width:0;padding-top:42px}.bc-template-single-wrapper .bc-template-single-sidebar #secondary{display:flex;flex-direction:column;gap:16px;width:100%;padding:0;border:0;background:transparent;box-shadow:none}.bc-template-single-wrapper .bc-template-single-sidebar .widget{margin:0;padding:18px 18px 17px;border:1px solid #e2e7df;border-radius:15px;background:#fff;box-shadow:0 6px 18px rgba(35,54,39,.055)}.bc-template-single-wrapper .bc-template-single-sidebar .widget:last-child{margin-bottom:0}.bc-template-single-wrapper .bc-template-single-sidebar .widget-title,.bc-template-single-wrapper .bc-template-single-sidebar .widget>h3,.bc-template-single-wrapper .bc-template-single-sidebar .widget>h4{display:block;margin:0 0 13px;padding:0;border:0;color:#214a31;font-family:Georgia,'Times New Roman',serif;font-size:20px;font-weight:700;line-height:1.25;letter-spacing:-.02em;text-transform:none}.bc-template-single-wrapper .bc-template-single-sidebar .is-divider{display:none}.bc-template-single-wrapper .bc-template-single-sidebar input[type=search],.bc-template-single-wrapper .bc-template-single-sidebar input[type=text],.bc-template-single-wrapper .bc-template-single-sidebar .search-field{width:100%;min-height:42px;margin:0;padding:10px 12px;border:1px solid #dfe5dc;border-radius:9px;background:#f7f9f5;color:#334335;font-size:12px;box-shadow:none}.bc-template-single-wrapper .bc-template-single-sidebar button,.bc-template-single-wrapper .bc-template-single-sidebar input[type=submit]{min-height:39px;margin-top:8px;padding:9px 13px;border:1px solid #2e6b45;border-radius:8px;background:#397b50;color:#fff;font-size:11px;font-weight:800;letter-spacing:.02em}.bc-template-single-wrapper .bc-template-single-sidebar ul{margin:0;padding:0;list-style:none}.bc-template-single-wrapper .bc-template-single-sidebar li{margin:0;padding:9px 0;border-bottom:1px solid #edf0eb;color:#566255;font-size:12px;line-height:1.5}.bc-template-single-wrapper .bc-template-single-sidebar li:first-child{padding-top:0}.bc-template-single-wrapper .bc-template-single-sidebar li:last-child{padding-bottom:0;border-bottom:0}.bc-template-single-wrapper .bc-template-single-sidebar a{color:#365940;text-decoration:none}.bc-template-single-wrapper .bc-template-single-sidebar a:hover{color:#1d4933;text-decoration:underline}.bc-template-single-wrapper .bc-template-single-sidebar .tagcloud{display:flex;flex-wrap:wrap;gap:7px}.bc-template-single-wrapper .bc-template-single-sidebar .tagcloud a,.bc-template-single-wrapper .bc-template-single-sidebar .cat-item a{display:inline-flex;align-items:center;padding:5px 8px;border:1px solid #e0e9dc;border-radius:7px;background:#edf3ea;color:#426348;font-size:10px!important;line-height:1.3}.bc-template-single-wrapper .bc-template-single-sidebar .cat-item{display:inline-block;margin:0 5px 6px 0;padding:0;border:0}.bc-template-single-wrapper .bc-template-single-sidebar .cat-item .children{padding:7px 0 0 8px}.bc-template-single-wrapper .bc-template-single-sidebar .cat-item .children .cat-item{margin-bottom:4px}.bc-template-single-wrapper .bc-template-single-sidebar .recentcomments{font-size:11px}.bc-template-single-wrapper .bc-template-single-sidebar img{max-width:100%;height:auto;border-radius:8px}
@media(max-width:849px){.bc-template-single-wrapper{padding:16px 0 35px}.bc-template-single-wrapper .bc-template-single-sidebar{padding-top:12px}.bc-template-single-files-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.bc-template-file-preview{height:250px;min-height:250px;flex-basis:250px;padding:16px}.bc-template-file-body{padding:14px}.bc-template-single-wrapper .bc-template-single-sidebar .widget{padding:16px}}
@media(max-width:549px){.bc-template-single-wrapper .row{margin-left:0;margin-right:0}.bc-template-single-wrapper .bc-template-single-main,.bc-template-single-wrapper .bc-template-single-sidebar{padding-left:15px;padding-right:15px}.bc-template-single-files-grid{grid-template-columns:1fr;gap:15px}.bc-template-file-preview{height:280px;min-height:280px;flex-basis:280px}.bc-template-file-body{padding:16px}.bc-template-file-details{grid-template-columns:minmax(0,1fr) minmax(0,.85fr)}.bc-template-single-header h1{font-size:33px}.bc-template-single-download-layout{grid-template-columns:1fr}.bc-template-single-wrapper .bc-template-single-sidebar{padding-top:8px}}
@media(prefers-reduced-motion:reduce){.bc-template-file-card,.bc-template-file-preview-image,.bc-template-single-download-button{transition:none}}


/* 2.4.0 template-only fixes requested for the single Template posts. */
body.single-post.bc-template-post .page-title,
body.single-post.bc-template-post .page-title-wrapper,
body.single-post.bc-template-post .blog-header,
body.single-post.bc-template-post .blog-featured-title,
body.single-post.bc-template-post .post-header,
body.single-post.bc-template-post .entry-header:not(.bc-template-single-header),
body.single-post.bc-template-post .page-title-inner { display:none !important; }
body.single-post.bc-template-post p.bc-template-single-intro:empty { display:none !important; }
.bc-template-single-wrapper .row { max-width:1380px; }
.bc-template-single-wrapper .bc-template-single-main { width:77%; max-width:77%; flex:0 0 77%; }
.bc-template-single-wrapper .bc-template-single-sidebar { width:23%; max-width:23%; flex:0 0 23%; }
.bc-template-single-header { margin-bottom:22px; }
.bc-template-single-header h1 { margin-bottom:10px; }
.bc-template-single-intro { display:none !important; }
.bc-template-single-sidebar .bc-template-latest-posts ul { margin:0; padding:0; list-style:none; }
.bc-template-single-sidebar .bc-template-latest-posts li { margin:0; padding:10px 0; border-bottom:1px solid #edf0eb; }
.bc-template-single-sidebar .bc-template-latest-posts li:first-child { padding-top:0; }
.bc-template-single-sidebar .bc-template-latest-posts li:last-child { padding-bottom:0; border-bottom:0; }
.bc-template-single-sidebar .bc-template-latest-post-link { display:grid; grid-template-columns:68px minmax(0,1fr); gap:11px; align-items:center; color:#294b32; font-size:14px; font-weight:750; line-height:1.4; text-decoration:none; }
.bc-template-single-sidebar .bc-template-latest-post-link:hover { color:#1b3825; text-decoration:none; }
.bc-template-single-sidebar .bc-template-latest-post-thumb { display:block; width:68px; height:68px; overflow:hidden; border-radius:8px; background:#edf1ec; }
.bc-template-single-sidebar .bc-template-latest-post-thumb img { display:block; width:100%; height:100%; object-fit:cover; }
.bc-template-single-sidebar .bc-template-latest-post-placeholder { display:grid; width:100%; height:100%; place-items:center; background:#eaf0e7; color:#3e7951; font-family:Georgia,'Times New Roman',serif; font-size:20px; font-weight:700; }
.bc-template-single-sidebar .bc-template-latest-post-copy { display:flex; min-width:0; flex-direction:column; gap:5px; }
.bc-template-single-sidebar .bc-template-latest-post-copy strong { color:inherit; font-size:14px; font-weight:750; line-height:1.4; }
.bc-template-single-sidebar .bc-template-latest-post-copy small { color:#858b80; font-size:10px; font-weight:500; line-height:1.3; }
.bc-template-single-sidebar .widget_recent_entries li a,
.bc-template-single-sidebar .widget_recent_posts li a,
.bc-template-single-sidebar .widget_recent-posts li a,
.bc-template-single-sidebar .widget_flatsome_recent_posts li a,
.bc-template-single-sidebar .recent-posts a,
.bc-template-single-sidebar .recent-blog-posts a { font-size:14px; font-weight:700; line-height:1.5; }
.bc-template-single-sidebar .widget_recent_entries .post-date,
.bc-template-single-sidebar .widget_recent_posts .post-date,
.bc-template-single-sidebar .widget_recent-posts .post-date { display:block; margin-top:3px; color:#858b80; font-size:10px; font-weight:500; }
@media (max-width: 849px) {
  .bc-template-single-wrapper .row { max-width:100%; }
  .bc-template-single-wrapper .bc-template-single-main { width:100%; max-width:100%; flex:0 0 100%; }
  .bc-template-single-wrapper .bc-template-single-sidebar { width:100%; max-width:100%; flex:0 0 100%; }
  .bc-template-single-wrapper .bc-template-single-sidebar { padding-top:16px; }
}


/* 2.5.0: use the first Collection Popup image when template posts lack featured images. */
.bc-template-single-sidebar .bc-template-latest-post-thumb--collection { background:#f4f6f2; border:1px solid #e4e9e1; padding:3px; }
.bc-template-single-sidebar .bc-template-latest-post-thumb--collection img { object-fit:contain; padding:0; }
/* The custom Recent Posts widget above contains only Template posts. Hide Flatsome's generic recent-post widget here so non-template articles do not appear in this sidebar. */
.bc-template-single-sidebar #secondary .widget_recent_entries,
.bc-template-single-sidebar #secondary .widget_recent_posts,
.bc-template-single-sidebar #secondary .widget_recent-posts,
.bc-template-single-sidebar #secondary .widget_flatsome_recent_posts,
.bc-template-single-sidebar #secondary .recent-posts,
.bc-template-single-sidebar #secondary .recent-blog-posts { display:none !important; }


/* 2.7.0: widen the Template-only sidebar cards without changing the main content column. */
@media (min-width: 850px) {
  .bc-template-single-wrapper .bc-template-single-sidebar > .bc-template-latest-posts,
  .bc-template-single-wrapper .bc-template-single-sidebar #secondary .widget {
    width: calc(100% + 24px);
    max-width: none;
    margin-right: -24px;
  }
}
.bc-template-single-sidebar .bc-template-latest-post-link {
  grid-template-columns: 68px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
}
.bc-template-single-sidebar .bc-template-latest-post-copy strong {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  font-size: 13px;
  line-height: 1.38;
  overflow-wrap: anywhere;
}
.bc-template-single-sidebar .bc-template-latest-post-copy small {
  margin-top: 2px;
  font-size: 10px;
}
@media (max-width: 549px) {
  /* Remove double side padding on the sidebar only; the left/main column is untouched. */
  .bc-template-single-wrapper .bc-template-single-sidebar {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  .bc-template-single-wrapper .bc-template-single-sidebar > .bc-template-latest-posts,
  .bc-template-single-wrapper .bc-template-single-sidebar #secondary .widget {
    width: 100%;
    max-width: 100%;
    margin-right: 0;
  }
  .bc-template-single-sidebar .bc-template-latest-post-link {
    grid-template-columns: 68px minmax(0, 1fr);
    gap: 12px;
  }
}


/* 2.7.0: Template sidebar order is Search -> ad slot -> Template Recent Posts -> ad slot. */
.bc-template-single-wrapper .bc-template-sidebar-stack {
  display: flex;
  flex-direction: column;
  gap: 18px;
  min-width: 0;
}
.bc-template-single-wrapper .bc-template-sidebar-search {
  width: 100%;
  min-width: 0;
  padding: 12px;
  border: 1px solid #e1e8dd;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 7px 22px rgba(34, 53, 35, .055);
}
.bc-template-sidebar-search .searchform,
.bc-template-sidebar-search form[role="search"] {
  display: flex;
  align-items: stretch;
  gap: 7px;
  margin: 0;
  width: 100%;
}
.bc-template-sidebar-search .searchform .flex-row,
.bc-template-sidebar-search form[role="search"] .flex-row {
  width: 100%;
}
.bc-template-sidebar-search input[type="search"],
.bc-template-sidebar-search input[type="text"] {
  width: 100%;
  min-width: 0;
  height: 42px;
  margin: 0;
  padding: 0 12px;
  border: 1px solid #e0e7dc;
  border-radius: 9px;
  background: #fbfcf9;
  color: #263d2b;
  box-shadow: none;
  font-size: 13px;
}
.bc-template-sidebar-search button,
.bc-template-sidebar-search input[type="submit"] {
  min-width: 42px;
  height: 42px;
  margin: 0;
  padding: 0 12px;
  border: 0;
  border-radius: 9px;
  background: #3f7951;
  color: #fff;
  box-shadow: none;
}
.bc-template-sidebar-search button:hover,
.bc-template-sidebar-search input[type="submit"]:hover {
  background: #2e603d;
  color: #fff;
}
.bc-template-sidebar-search label { width: 100%; margin: 0; }
.bc-template-sidebar-search .screen-reader-text { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.bc-template-single-wrapper .bc-template-ad-region {
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: 100%;
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}
.bc-template-single-wrapper .bc-template-ad-region .widget,
.bc-template-single-wrapper .bc-template-ad-region .bc-template-ad-widget {
  width: 100%;
  min-width: 0;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.bc-template-single-wrapper .bc-template-ad-region .widget-title { display: none !important; }
.bc-template-single-wrapper .bc-template-ad-region-empty,
.bc-template-single-wrapper .bc-template-empty-ad-widget { display: none !important; }
.bc-template-single-wrapper .bc-template-ad-region iframe,
.bc-template-single-wrapper .bc-template-ad-region img,
.bc-template-single-wrapper .bc-template-ad-region ins,
.bc-template-single-wrapper .bc-template-ad-region .adsbygoogle { max-width: 100%; }
@media (max-width: 549px) {
  .bc-template-single-wrapper .bc-template-sidebar-stack { gap: 15px; }
  .bc-template-single-wrapper .bc-template-sidebar-search { padding: 10px; }
}

/* 2.8.0: Preview Template button and accessible in-page document viewer. */
.bc-template-single-files-grid .bc-template-preview-button,
.bc-template-single-download-layout .bc-template-preview-button {
  display:flex; width:100%; min-height:46px; align-items:center; justify-content:center; gap:9px;
  margin:16px 0 10px; padding:11px 15px; border:1px solid #397b50; border-radius:9px;
  background:#fff; color:#2f6d43; font-size:13px; font-weight:800; line-height:1.3;
  text-align:center; cursor:pointer; box-shadow:0 4px 12px rgba(24,60,45,.06);
  transition:background .18s ease, color .18s ease, transform .18s ease, box-shadow .18s ease;
}
.bc-template-single-files-grid .bc-template-preview-button:hover,
.bc-template-single-download-layout .bc-template-preview-button:hover {
  background:#edf4eb; color:#214f31; transform:translateY(-1px); box-shadow:0 7px 16px rgba(24,60,45,.1);
}
.bc-template-single-files-grid .bc-template-preview-button span,
.bc-template-single-download-layout .bc-template-preview-button span { font-size:17px; line-height:1; }
.bc-template-single-files-grid .bc-template-preview-button + .bc-template-single-download-button,
.bc-template-single-download-layout .bc-template-preview-button + .bc-template-single-download-button { margin-top:0; }
body.bc-template-preview-open { overflow:hidden; }
.bc-template-preview-modal { position:fixed; inset:0; z-index:999999; display:none; align-items:center; justify-content:center; padding:20px; }
.bc-template-preview-modal.is-open { display:flex; }
.bc-template-preview-backdrop { position:absolute; inset:0; background:rgba(16,27,21,.72); backdrop-filter:blur(4px); }
.bc-template-preview-dialog { position:relative; z-index:1; display:flex; flex-direction:column; width:min(1040px, calc(100vw - 32px)); max-height:calc(100vh - 36px); overflow:hidden; border:1px solid #e1e8de; border-radius:18px; background:#fffefa; box-shadow:0 24px 80px rgba(0,0,0,.28); outline:none; }
.bc-template-preview-modal-header { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; padding:20px 24px 17px; border-bottom:1px solid #e7ebe3; background:linear-gradient(120deg,#fffefa,#f4f7f1); }
.bc-template-preview-kicker { margin:0 0 6px; color:#4e7955; font-size:10px; font-weight:850; letter-spacing:.16em; }
.bc-template-preview-modal-header h2 { margin:0; color:#1c2b20; font-family:Georgia,'Times New Roman',serif; font-size:clamp(21px,3vw,29px); line-height:1.2; overflow-wrap:anywhere; }
.bc-template-preview-subtitle { margin:5px 0 0; color:#737d70; font-size:12px; }
.bc-template-preview-close { display:grid; flex:0 0 40px; width:40px; height:40px; place-items:center; border:1px solid #dce5d8; border-radius:50%; background:#fff; color:#294d32; font-size:29px; line-height:1; cursor:pointer; }
.bc-template-preview-close:hover { background:#edf3ea; }
.bc-template-preview-viewer { position:relative; min-height:280px; flex:1 1 auto; overflow:auto; background:#e9eee8; }
.bc-template-preview-iframe { display:block; width:100%; height:min(68vh, 720px); min-height:320px; border:0; background:#fff; }
.bc-template-preview-iframe[hidden], .bc-template-preview-image-view[hidden] { display:none!important; }
.bc-template-preview-image-view { display:flex; min-height:300px; max-height:68vh; align-items:center; justify-content:center; padding:22px; }
.bc-template-preview-image-view img { display:block; max-width:100%; max-height:64vh; width:auto; height:auto; object-fit:contain; border:1px solid #fff; background:#fff; box-shadow:0 10px 28px rgba(27,44,31,.16); }
.bc-template-preview-modal-footer { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px 20px; padding:13px 20px; border-top:1px solid #e7ebe3; background:#fff; }
.bc-template-preview-note { flex:1 1 300px; margin:0; color:#737d70; font-size:11px; line-height:1.55; }
.bc-template-preview-fallback { flex:1 1 100%; padding:10px 12px; border:1px solid #e2e8df; border-radius:9px; background:#f8faf6; }
.bc-template-preview-fallback[hidden] { display:none!important; }
.bc-template-preview-fallback summary { color:#315b3e; font-size:12px; font-weight:750; cursor:pointer; }
.bc-template-preview-fallback img { display:block; max-width:100%; max-height:360px; width:auto; height:auto; margin:12px auto 0; object-fit:contain; }
.bc-template-preview-open-original { display:inline-flex; align-items:center; justify-content:center; gap:7px; min-height:38px; padding:9px 13px; border-radius:8px; background:#315f3e; color:#fff!important; font-size:12px; font-weight:750; text-decoration:none!important; }
.bc-template-preview-open-original:hover { background:#244d31; }
@media(max-width:600px) {
  .bc-template-preview-modal { padding:8px; }
  .bc-template-preview-dialog { width:100%; max-height:calc(100vh - 16px); border-radius:13px; }
  .bc-template-preview-modal-header { padding:15px 15px 13px; gap:12px; }
  .bc-template-preview-modal .bc-template-preview-modal-header > button.bc-template-preview-close,
  .bc-template-preview-modal button.bc-template-preview-close { flex:0 0 40px !important; width:40px !important; min-width:40px !important; max-width:40px !important; height:40px !important; min-height:40px !important; max-height:40px !important; }
  .bc-template-preview-close > span { font-size:26px !important; }
  .bc-template-preview-iframe { height:65vh; min-height:260px; }
  .bc-template-preview-modal-footer { padding:12px; }
  .bc-template-preview-open-original { width:100%; }
}
@media(prefers-reduced-motion:reduce) {
  .bc-template-single-files-grid .bc-template-preview-button,
  .bc-template-single-download-layout .bc-template-preview-button { transition:none; }
}


/* 2.9.3: force the preview close control to remain a true circle despite Flatsome button styles. */
.bc-template-preview-modal .bc-template-preview-modal-header > button.bc-template-preview-close,
.bc-template-preview-modal button.bc-template-preview-close {
  appearance: none !important;
  -webkit-appearance: none !important;
  box-sizing: border-box !important;
  display: flex !important;
  flex: 0 0 44px !important;
  align-items: center !important;
  justify-content: center !important;
  width: 44px !important;
  min-width: 44px !important;
  max-width: 44px !important;
  height: 44px !important;
  min-height: 44px !important;
  max-height: 44px !important;
  aspect-ratio: 1 / 1 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid #dce5d8 !important;
  border-radius: 50% !important;
  background: #fff !important;
  color: #294d32 !important;
  font-family: Arial, sans-serif !important;
  font-size: 28px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1 !important;
  text-align: center !important;
  text-transform: none !important;
  box-shadow: 0 2px 8px rgba(35,54,39,.06) !important;
  overflow: hidden !important;
  cursor: pointer !important;
}
.bc-template-preview-modal .bc-template-preview-modal-header > button.bc-template-preview-close:hover,
.bc-template-preview-modal button.bc-template-preview-close:hover {
  background: #edf3ea !important;
  border-color: #c8d8c2 !important;
}
.bc-template-preview-close > span {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  font-family: Arial, sans-serif !important;
  font-size: 28px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  text-align: center !important;
  transform: none !important;
}
.bc-template-preview-actions { display:flex; flex:0 0 auto; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:9px; }
.bc-template-preview-download { display:inline-flex; align-items:center; justify-content:center; gap:7px; min-height:40px; padding:10px 15px; border:1px solid #315f3e; border-radius:8px; background:#397b50; color:#fff!important; font-size:12px; font-weight:800; line-height:1.2; text-decoration:none!important; }
.bc-template-preview-download:hover { background:#285e3b; color:#fff!important; }
.bc-template-preview-download[hidden] { display:none!important; }
.bc-template-preview-actions .bc-template-preview-open-original { min-height:40px; }
@media(max-width:600px) {
  .bc-template-preview-actions { width:100%; display:grid; grid-template-columns:1fr; }
  .bc-template-preview-actions .bc-template-preview-download,
  .bc-template-preview-actions .bc-template-preview-open-original { width:100%; }
}

/* 2.9.2: related-template carousel with larger full-image previews, strong controls, and responsive cards. */
.bc-template-related { display:block; width:calc(100% - 40px); max-width:1500px; margin:42px auto 30px; padding:27px 0 10px; border-top:1px solid #e2e7df; color:#29332a; clear:both; }
.bc-template-related--full-width { box-sizing:border-box; }
.bc-template-related-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:18px; margin:0 0 20px; }
.bc-template-related-kicker { margin:0 0 7px; color:#648066; font-size:10px; font-weight:850; letter-spacing:.16em; }
.bc-template-related-heading h2 { margin:0; color:#1c2b20; font-family:Georgia,'Times New Roman',serif; font-size:clamp(28px,3vw,38px); font-weight:700; line-height:1.12; }
.bc-template-related-controls { display:flex!important; flex:0 0 auto; align-items:center; gap:10px; }
.bc-template-related-controls button { appearance:none!important; -webkit-appearance:none!important; box-sizing:border-box!important; display:inline-flex!important; flex:0 0 46px!important; align-items:center!important; justify-content:center!important; width:46px!important; min-width:46px!important; max-width:46px!important; height:46px!important; min-height:46px!important; max-height:46px!important; margin:0!important; padding:0!important; border:1px solid #d5e0d1!important; border-radius:50%!important; background:#fffefa!important; color:#274a37!important; font-family:Arial,sans-serif!important; font-size:0!important; font-weight:500!important; line-height:1!important; text-align:center!important; box-shadow:0 5px 15px rgba(35,54,39,.09)!important; cursor:pointer!important; transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease!important; }
.bc-template-related-controls button span { display:block!important; width:100%!important; height:100%!important; padding:0!important; margin:0!important; color:inherit!important; font-family:Arial,sans-serif!important; font-size:22px!important; font-weight:400!important; line-height:44px!important; text-align:center!important; transform:none!important; }
.bc-template-related-controls button:hover { background:#274a37!important; border-color:#274a37!important; color:#fffefa!important; transform:translateY(-1px)!important; box-shadow:0 8px 18px rgba(35,54,39,.15)!important; }
.bc-template-related-controls button:focus-visible { outline:3px solid #d9ad63!important; outline-offset:3px!important; }
.bc-template-related-viewport { width:100%; overflow-x:auto; overflow-y:hidden; scroll-snap-type:x mandatory; scroll-behavior:smooth; scrollbar-width:none; -ms-overflow-style:none; padding:2px 1px 12px; overscroll-behavior-x:contain; }
.bc-template-related-viewport::-webkit-scrollbar { display:none; width:0; height:0; }
.bc-template-related-track { display:flex; align-items:stretch; gap:20px; width:100%; }
.bc-template-related-card { display:flex; flex:0 0 calc((100% - 40px)/3); min-width:0; flex-direction:column; overflow:hidden; border:1px solid #e0e7dd; border-radius:15px; background:#fff; box-shadow:0 5px 17px rgba(34,53,35,.055); scroll-snap-align:start; }
.bc-template-related-media { position:relative; display:flex!important; flex:0 0 auto!important; align-items:center!important; justify-content:center!important; width:100%!important; height:240px!important; min-height:240px!important; max-height:240px!important; margin:0!important; padding:0!important; overflow:hidden!important; background:#edf1eb!important; text-decoration:none!important; }
.bc-template-related-media > img.bc-template-related-image { display:block!important; flex:0 0 100%!important; width:100%!important; min-width:100%!important; max-width:100%!important; height:100%!important; min-height:100%!important; max-height:100%!important; margin:0!important; padding:0!important; object-fit:contain!important; object-position:center center!important; background:#edf1eb!important; }
.bc-template-related-placeholder { display:grid!important; flex:0 0 100%!important; width:100%!important; height:100%!important; place-items:center!important; background:linear-gradient(145deg,#f1f4ef,#e4ebe1)!important; color:#477454!important; }
.bc-template-related-placeholder svg { display:block; width:64px; height:64px; }
.bc-template-related-card-body { display:flex; flex:1; flex-direction:column; align-items:flex-start; padding:14px 16px 16px; }
.bc-template-related-category { display:inline-flex; margin:0 0 9px; padding:5px 8px; border-radius:5px; background:#edf3ea; color:#426348; font-size:9px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.bc-template-related-card h3 { margin:0 0 10px; font-size:15px; font-weight:750; line-height:1.4; }
.bc-template-related-card h3 a { display:-webkit-box; overflow:hidden; color:#253d2b; text-decoration:none; -webkit-box-orient:vertical; -webkit-line-clamp:3; }
.bc-template-related-card h3 a:hover { color:#3f7951; }
.bc-template-related-card-body > p { margin:auto 0 0; color:#838b80; font-size:11px; line-height:1.4; }
@media(max-width:849px) {
  .bc-template-related { margin-top:30px; }
  .bc-template-related-track { gap:16px; }
  .bc-template-related-card { flex-basis:calc((100% - 16px)/2); }
  .bc-template-related-media { height:210px!important; min-height:210px!important; max-height:210px!important; }
}
@media(max-width:600px) {
  .bc-template-related { width:calc(100% - 30px); margin-top:25px; padding-top:20px; }
  .bc-template-related-heading { align-items:center; gap:12px; }
  .bc-template-related-heading h2 { font-size:28px; }
  .bc-template-related-controls { gap:7px; }
  .bc-template-related-controls button { flex-basis:40px!important; width:40px!important; min-width:40px!important; max-width:40px!important; height:40px!important; min-height:40px!important; max-height:40px!important; }
  .bc-template-related-controls button span { font-size:20px!important; line-height:38px!important; }
  .bc-template-related-track { gap:14px; }
  .bc-template-related-card { flex-basis:86%; }
  .bc-template-related-media { height:220px!important; min-height:220px!important; max-height:220px!important; }
  .bc-template-related-card h3 { font-size:15px; }
}
@media(prefers-reduced-motion:reduce) {
  .bc-template-related-viewport { scroll-behavior:auto; }
  .bc-template-related-controls button { transition:none!important; }
}
