/* SPA.BG editorial pages. Newspaper still supplies wp_head, wp_footer and content filters. */
body.spabg-editorial-page { background: #f8f9f4; }
body.spabg-editorial-page .td-header-wrap,
body.spabg-editorial-page .td-footer-wrapper,
body.spabg-editorial-page .td-footer-instagram-container { display: none !important; }
body.spabg-editorial-page .spa-site-header,
body.spabg-editorial-page .spa-site-footer,
body.spabg-editorial-page .spa-editorial {
  --spa-bg: #f8f9f4; --spa-white: #fff; --spa-soft: #e5f5ee;
  --spa-text: #173b36; --spa-muted: #526e67; --spa-teal: #087d70;
  --spa-line: #d9e7dd; --spa-coral: #f4a17d;
  box-sizing: border-box; color: var(--spa-text);
  font: 400 16px/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
body.spabg-editorial-page :is(.spa-site-header,.spa-site-footer,.spa-editorial) * { box-sizing: border-box; }
body.spabg-editorial-page :is(.spa-site-header,.spa-site-footer,.spa-editorial) a { text-decoration: none; }
body.spabg-editorial-page :is(.spa-site-header,.spa-site-footer,.spa-editorial) :is(a,button,summary):focus-visible { outline: 3px solid var(--spa-coral); outline-offset: 3px; }
body.spabg-editorial-page .spa-wrap { width: min(calc(100% - 64px),1160px); margin-inline: auto; }
body.spabg-editorial-page :is(.spa-site-header,.spa-site-footer,.spa-editorial) :is(h1,h2,h3,p,figure) { margin: 0; }
body.spabg-editorial-page .spa-site-header { position: relative; z-index: 3; background: var(--spa-white); border-bottom: 1px solid var(--spa-line); }
body.spabg-editorial-page .spa-header-inner { min-height: 76px; display: flex; align-items: center; gap: 26px; }
body.spabg-editorial-page .spa-logo { flex: none; display: flex; align-items: baseline; font-size: 27px; line-height: 1; font-weight: 850; letter-spacing: -.075em; color: var(--spa-text); }
body.spabg-editorial-page .spa-logo span { color: var(--spa-teal); }
body.spabg-editorial-page .spa-logo small { margin-left: 10px; color: var(--spa-muted); font-size: 11px; font-weight: 750; letter-spacing: .11em; text-transform: uppercase; }
body.spabg-editorial-page .spa-header-nav { display: flex; align-items: center; gap: 25px; margin-left: auto; }
body.spabg-editorial-page .spa-header-nav a { color: var(--spa-text); font-size: 16px; font-weight: 720; }
body.spabg-editorial-page .spa-header-nav a:hover { color: var(--spa-teal); }
body.spabg-editorial-page .spa-header-cta { flex: none; border-radius: 24px; background: var(--spa-soft); padding: 11px 16px; font-size: 16px; font-weight: 750; color: var(--spa-text); }
body.spabg-editorial-page .spa-menu-toggle { display: none; border: 0; border-radius: 10px; background: var(--spa-soft); min-width: 44px; min-height: 44px; color: var(--spa-text); font-size: 19px; }
body.spabg-editorial-page .spa-editorial { background: var(--spa-bg); min-height: 500px; }
body.spabg-editorial-page .spa-editorial h1,
body.spabg-editorial-page .spa-editorial h2,
body.spabg-editorial-page .spa-editorial h3 { color: var(--spa-text); font-family: inherit; }
body.spabg-editorial-page .spa-eyebrow { display: inline-block; margin-bottom: 15px; color: var(--spa-teal); font-size: 16px; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
body.spabg-editorial-page .spa-editorial img { display: block; max-width: 100%; }
body.spabg-editorial-page .spa-home-hero { background: linear-gradient(110deg,#e5f5ee 0%,#f8f9f4 74%); }
body.spabg-editorial-page .spa-home-hero-inner { display: grid; grid-template-columns: minmax(0,48%) minmax(0,52%); align-items: center; gap: 20px; min-height: 480px; padding-block: 53px 60px; }
body.spabg-editorial-page .spa-home-hero h1 { max-width: 550px; font-size: clamp(39px,5vw,64px); letter-spacing: -.055em; font-weight: 820; line-height: 1.07; }
body.spabg-editorial-page .spa-hero-copy > p { max-width: 510px; margin-top: 20px; color: var(--spa-muted); font-size: 18px; line-height: 1.55; }
body.spabg-editorial-page .spa-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 27px; }
body.spabg-editorial-page .spa-button { display: inline-flex; align-items: center; min-height: 48px; padding: 11px 19px; border-radius: 14px; font-size: 16px; font-weight: 760; }
body.spabg-editorial-page .spa-button-primary { background: var(--spa-teal); color: #fff; }
body.spabg-editorial-page .spa-button-light { background: var(--spa-white); border: 1px solid var(--spa-line); color: var(--spa-text); }
body.spabg-editorial-page .spa-hero-figure { position: relative; height: 405px; overflow: hidden; border-radius: 26px 26px 85px 26px; background: var(--spa-soft); }
body.spabg-editorial-page .spa-hero-figure img { width: 100%; height: 100%; object-fit: cover; }
body.spabg-editorial-page .spa-hero-figure figcaption { position: absolute; bottom: 17px; left: 17px; max-width: calc(100% - 34px); padding: 10px 15px; border-radius: 11px; background: rgba(18,53,48,.9); color: #fff; font-size: 16px; line-height: 1.35; }
body.spabg-editorial-page .spa-hero-figure figcaption strong { display: block; }
body.spabg-editorial-page .spa-hero-figure figcaption span { font-size: 16px; }
body.spabg-editorial-page .spa-section { padding-block: 66px; }
body.spabg-editorial-page .spa-articles,
body.spabg-editorial-page .spa-post-related { background: var(--spa-white); }
body.spabg-editorial-page .spa-section-title { margin-bottom: 25px; }
body.spabg-editorial-page .spa-section-title h2 { font-size: clamp(29px,3vw,40px); letter-spacing: -.035em; font-weight: 810; line-height: 1.16; }
body.spabg-editorial-page .spa-section-title p { margin-top: 10px; color: var(--spa-muted); font-size: 16px; }
body.spabg-editorial-page .spa-destination-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 18px; }
body.spabg-editorial-page .spa-place { overflow: hidden; border: 1px solid var(--spa-line); border-radius: 17px; background: var(--spa-white); }
body.spabg-editorial-page .spa-place a { display: block; color: var(--spa-text); }
body.spabg-editorial-page .spa-place-photo { height: 165px; background: var(--spa-soft); }
body.spabg-editorial-page .spa-place-photo img { width: 100%; height: 100%; object-fit: cover; }
body.spabg-editorial-page .spa-place-label { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 15px; }
body.spabg-editorial-page .spa-place h3 { font-size: 19px; font-weight: 780; line-height: 1.25; }
body.spabg-editorial-page .spa-place-label span { color: var(--spa-teal); font-size: 23px; }
body.spabg-editorial-page .spa-place a:hover h3 { color: var(--spa-teal); }
body.spabg-editorial-page .spa-photo-sources { margin-top: 22px; color: var(--spa-muted); font-size: 16px; }
body.spabg-editorial-page .spa-photo-sources summary { cursor: pointer; color: var(--spa-teal); font-size: 16px; font-weight: 760; }
body.spabg-editorial-page .spa-photo-sources ul { margin-top: 14px; padding-left: 23px; }
body.spabg-editorial-page .spa-photo-sources li { margin: 9px 0; }
body.spabg-editorial-page .spa-photo-sources li p { display: inline; font-size: 16px; }
body.spabg-editorial-page .spa-photo-sources a { color: var(--spa-teal); text-decoration: underline; }
body.spabg-editorial-page .spa-article-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
body.spabg-editorial-page .spa-article-card { overflow: hidden; border: 1px solid var(--spa-line); border-radius: 18px; background: var(--spa-bg); }
body.spabg-editorial-page .spa-article-card a { display: block; height: 100%; color: var(--spa-text); }
body.spabg-editorial-page .spa-article-photo { height: 182px; background: #e5f5ee; }
body.spabg-editorial-page .spa-article-photo img { width: 100%; height: 100%; object-fit: cover; }
body.spabg-editorial-page .spa-photo-empty { display: grid; place-items: center; background: linear-gradient(135deg,#e1f3e9,#d8e9ed); }
body.spabg-editorial-page .spa-photo-empty span { color: var(--spa-teal); font-size: 55px; }
body.spabg-editorial-page .spa-article-text { padding: 17px 19px 20px; }
body.spabg-editorial-page .spa-article-text small,
body.spabg-editorial-page .spa-hotel-body small { color: var(--spa-teal); font-size: 16px; font-weight: 750; }
body.spabg-editorial-page .spa-article-text h3 { margin-top: 6px; font-size: 20px; line-height: 1.3; font-weight: 790; }
body.spabg-editorial-page .spa-arrow { display: inline-block; margin-top: 15px; color: var(--spa-teal); font-size: 16px; font-weight: 790; }
body.spabg-editorial-page .spa-article-card a:hover h3 { color: var(--spa-teal); }
body.spabg-editorial-page .spa-home .spa-article-feature { grid-column: span 2; display: grid; }
body.spabg-editorial-page .spa-home .spa-article-feature a { display: grid; grid-template-columns: 55% 45%; }
body.spabg-editorial-page .spa-home .spa-article-feature .spa-article-photo { height: 100%; min-height: 244px; }
body.spabg-editorial-page .spa-home .spa-article-feature .spa-article-text { align-self: center; padding: 25px; }
body.spabg-editorial-page .spa-home .spa-article-feature h3 { font-size: 25px; }
body.spabg-editorial-page .spa-topic-list { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 24px; }
body.spabg-editorial-page .spa-topic-list a { display: inline-flex; align-items: center; min-height: 44px; padding: 8px 16px; border-radius: 22px; background: var(--spa-soft); color: var(--spa-text); font-size: 16px; font-weight: 720; }
body.spabg-editorial-page .spa-topics { background: var(--spa-white); }
body.spabg-editorial-page .spa-topic-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 26px 22px; }
body.spabg-editorial-page .spa-topic { padding: 17px 2px; border-top: 2px solid var(--spa-line); }
body.spabg-editorial-page .spa-topic h3 { font-size: 21px; line-height: 1.3; }
body.spabg-editorial-page .spa-topic ul { margin: 10px 0 0; padding: 0; list-style: none; }
body.spabg-editorial-page .spa-topic li { padding: 9px 0; border-bottom: 1px solid var(--spa-line); }
body.spabg-editorial-page .spa-topic li a { color: var(--spa-text); font-size: 16px; line-height: 1.4; }
body.spabg-editorial-page .spa-topic li a:hover { color: var(--spa-teal); }
body.spabg-editorial-page .spa-topic li span { color: var(--spa-teal); }
body.spabg-editorial-page .spa-topic .spa-topic-more { display: inline-block; margin-top: 12px; color: var(--spa-teal); font-size: 16px; font-weight: 760; }
body.spabg-editorial-page .spa-hotel-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 19px; }
body.spabg-editorial-page .spa-hotel-card { overflow: hidden; border: 1px solid var(--spa-line); border-radius: 18px; background: var(--spa-white); }
body.spabg-editorial-page .spa-hotel-image { height: 190px; background: var(--spa-soft); }
body.spabg-editorial-page .spa-hotel-image img { width: 100%; height: 100%; object-fit: cover; }
body.spabg-editorial-page .spa-hotel-body { padding: 19px; }
body.spabg-editorial-page .spa-hotel-body h3 { margin-top: 5px; font-size: 21px; line-height: 1.3; font-weight: 790; }
body.spabg-editorial-page .spa-hotel-body p:not(.hotel-photo-credit) { margin-top: 9px; color: var(--spa-muted); font-size: 16px; }
body.spabg-editorial-page .spa-hotel-body > a { display: inline-block; margin-top: 16px; color: var(--spa-teal); font-size: 16px; font-weight: 770; }
body.spabg-editorial-page .spa-hotel-body .hotel-photo-credit,
body.spabg-editorial-page .spa-hotel-body .hotel-disclosure { margin-top: 12px; color: var(--spa-muted); font-size: 16px; }
body.spabg-editorial-page .spa-hotel-body .hotel-photo-credit { margin-top: 9px; color: var(--spa-muted); font-size: 16px; }
body.spabg-editorial-page .spa-hotel-body :is(.hotel-photo-credit,.hotel-disclosure) a { color: var(--spa-teal); text-decoration: underline; }
body.spabg-editorial-page .spa-hotel-note { margin-top: 18px; color: var(--spa-muted); font-size: 16px; }
/* The ordinary post layout keeps the_content() intact. */
body.spabg-editorial-page .spa-breadcrumb { display: flex; flex-wrap: wrap; gap: 9px; align-items: center; padding-block: 21px 7px; color: var(--spa-muted); font-size: 16px; }
body.spabg-editorial-page .spa-breadcrumb a { color: var(--spa-teal); }
body.spabg-editorial-page .spa-post-header { padding-block: 41px 45px; background: linear-gradient(110deg,#e5f5ee,#f8f9f4 70%); }
body.spabg-editorial-page .spa-post-header-grid { display: grid; grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr); gap: 38px; align-items: center; }
body.spabg-editorial-page .spa-post-header-grid.spa-post-no-image { display: block; max-width: 850px; }
body.spabg-editorial-page .spa-post-header h1 { max-width: 580px; font-size: clamp(37px,4.6vw,61px); line-height: 1.09; letter-spacing: -.052em; font-weight: 820; }
body.spabg-editorial-page .spa-post-intro { max-width: 580px; margin-top: 19px !important; color: var(--spa-muted); font-size: 18px; }
body.spabg-editorial-page .spa-post-meta { display: flex; flex-wrap: wrap; gap: 7px 16px; margin-top: 22px; color: var(--spa-muted); font-size: 16px; }
body.spabg-editorial-page .spa-post-hero { overflow: hidden; height: 365px; border-radius: 25px 25px 68px 25px; background: var(--spa-soft); }
body.spabg-editorial-page .spa-post-hero img { width: 100%; height: 100%; object-fit: cover; }
body.spabg-editorial-page .spa-post-layout { display: grid; grid-template-columns: minmax(0,740px) minmax(200px,280px); justify-content: space-between; gap: 50px; padding-block: 52px 77px; }
body.spabg-editorial-page .spa-article-content { min-width: 0; color: var(--spa-text); font-size: 18px; line-height: 1.78; overflow-wrap: anywhere; }
body.spabg-editorial-page .spa-article-content :is(p,ul,ol,blockquote,figure,table,.wp-block-columns) { margin: 0 0 23px; }
body.spabg-editorial-page .spa-article-content :is(h2,h3,h4,h5) { margin: 37px 0 14px; scroll-margin-top: 20px; line-height: 1.23; font-weight: 790; }
body.spabg-editorial-page .spa-article-content h2 { font-size: clamp(29px,3vw,36px); }
body.spabg-editorial-page .spa-article-content h3 { font-size: clamp(24px,2.5vw,29px); }
body.spabg-editorial-page .spa-article-content :is(h4,h5) { font-size: 21px; }
body.spabg-editorial-page .spa-article-content :is(a,.wp-block-button__link) { color: var(--spa-teal); text-decoration: underline; text-underline-offset: 3px; }
body.spabg-editorial-page .spa-article-content :is(img,video,iframe) { max-width: 100%; height: auto; }
body.spabg-editorial-page .spa-article-content iframe { width: 100%; min-height: 300px; }
body.spabg-editorial-page .spa-article-content :is(ul,ol) { padding-left: 29px; }
body.spabg-editorial-page .spa-article-content :is(li,figcaption,td,th,blockquote) { font-size: max(16px,1em); }
body.spabg-editorial-page .spa-article-content :is(.wp-caption,.wp-block-image,figure) { max-width: 100%; }
body.spabg-editorial-page .spa-article-content :is(figcaption,.wp-caption-text) { margin-top: 7px; color: var(--spa-muted); font-size: 16px; line-height: 1.5; }
body.spabg-editorial-page .spa-article-content :is(blockquote,.wp-block-quote) { padding: 12px 23px; border-left: 4px solid var(--spa-teal); background: var(--spa-soft); }
body.spabg-editorial-page .spa-article-content :is(table,.wp-block-table) { display: block; max-width: 100%; overflow-x: auto; border-collapse: collapse; }
body.spabg-editorial-page .spa-article-content :is(th,td) { padding: 10px; border: 1px solid var(--spa-line); }
body.spabg-editorial-page .spa-article-content .ez-toc-container { max-width: 100%; }
body.spabg-editorial-page .spa-single.spa-has-generated-toc .spa-article-content #ez-toc-container { display: none !important; }
body.spabg-editorial-page .spa-article-end { margin-top: 38px; padding-top: 20px; border-top: 1px solid var(--spa-line); }
body.spabg-editorial-page .spa-article-end a { font-size: 16px; font-weight: 800; }
body.spabg-editorial-page .spa-aside-sticky { position: sticky; top: 18px; }
body.spabg-editorial-page .spa-post-toc { padding: 21px; border: 1px solid var(--spa-line); border-radius: 17px; background: var(--spa-white); }
body.spabg-editorial-page .spa-post-toc[hidden] { display: none; }
body.spabg-editorial-page .spa-post-toc summary { cursor: pointer; color: var(--spa-text); font-size: 16px; font-weight: 800; }
body.spabg-editorial-page .spa-post-toc nav { display: grid; gap: 2px; margin-top: 13px; padding-top: 10px; border-top: 1px solid var(--spa-line); }
body.spabg-editorial-page .spa-post-toc nav a { padding: 8px 0; color: var(--spa-muted); font-size: 16px; line-height: 1.35; }
body.spabg-editorial-page .spa-post-toc nav a:hover { color: var(--spa-teal); }
body.spabg-editorial-page .spa-aside-note { margin-top: 18px; padding: 22px; border-radius: 16px; background: var(--spa-soft); }
body.spabg-editorial-page .spa-aside-note strong { font-size: 19px; line-height: 1.25; }
body.spabg-editorial-page .spa-aside-note p { margin: 9px 0 12px; color: var(--spa-muted); font-size: 16px; }
body.spabg-editorial-page .spa-aside-note a { color: var(--spa-teal); font-size: 16px; font-weight: 780; }
body.spabg-editorial-page .spa-comments { padding-block: 36px 65px; }
body.spabg-editorial-page .spa-site-footer { padding: 43px 0 26px; background: #173c37; color: #e9f5ed; }
body.spabg-editorial-page .spa-footer-row { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 25px; }
body.spabg-editorial-page .spa-footer-row strong { color: #fff; font-size: 27px; letter-spacing: -.06em; }
body.spabg-editorial-page .spa-footer-row p { max-width: 380px; margin-top: 8px; color: #d0e3d9; font-size: 16px; }
body.spabg-editorial-page .spa-footer-row nav { display: flex; flex-wrap: wrap; gap: 16px 24px; align-items: flex-start; }
body.spabg-editorial-page .spa-footer-row a { color: #e9f5ed; font-size: 16px; }
body.spabg-editorial-page .spa-footer-bottom { margin-top: 28px; padding-top: 17px; border-top: 1px solid #43645b; color: #d0e3d9; font-size: 16px; }
@media (max-width: 940px) {
  body.spabg-editorial-page .spa-header-cta { display: none; }
  body.spabg-editorial-page .spa-destination-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  body.spabg-editorial-page .spa-topic-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  body.spabg-editorial-page .spa-post-layout { grid-template-columns: minmax(0,1fr); gap: 22px; }
  body.spabg-editorial-page .spa-article-aside { grid-row: 1; }
  body.spabg-editorial-page .spa-aside-sticky { position: static; }
  body.spabg-editorial-page .spa-aside-note { display: none; }
  body.spabg-editorial-page .spa-post-toc nav { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1px 16px; }
}
@media (max-width: 660px) {
  body.spabg-editorial-page .spa-wrap { width: min(calc(100% - 32px),1160px); }
  body.spabg-editorial-page .spa-header-inner { min-height: 66px; flex-wrap: wrap; gap: 0; }
  body.spabg-editorial-page .spa-logo { font-size: 25px; }
  body.spabg-editorial-page .spa-logo small { display: none; }
  body.spabg-editorial-page .spa-menu-toggle { display: block; margin-left: auto; }
  body.spabg-editorial-page .spa-header-nav { order: 3; display: none; width: 100%; margin: 0; padding: 12px 0 17px; border-top: 1px solid var(--spa-line); }
  body.spabg-editorial-page .spa-header-nav.spa-menu-open { display: grid; }
  body.spabg-editorial-page .spa-header-nav a { display: flex; align-items: center; min-height: 44px; border-bottom: 1px solid var(--spa-line); }
  body.spabg-editorial-page .spa-home-hero-inner { display: block; min-height: 0; padding-block: 42px; }
  body.spabg-editorial-page .spa-home-hero h1 { font-size: clamp(38px,10vw,53px); }
  body.spabg-editorial-page .spa-hero-copy > p { font-size: 16px; }
  body.spabg-editorial-page .spa-hero-figure { height: 260px; margin-top: 29px; border-radius: 20px 20px 55px 20px; }
  body.spabg-editorial-page .spa-section { padding-block: 51px; }
  body.spabg-editorial-page .spa-destination-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
  body.spabg-editorial-page .spa-place-photo { height: 128px; }
  body.spabg-editorial-page .spa-place-label { padding: 12px; }
  body.spabg-editorial-page .spa-place h3 { font-size: 17px; }
  body.spabg-editorial-page .spa-article-grid,
  body.spabg-editorial-page .spa-hotel-grid,
  body.spabg-editorial-page .spa-topic-grid { grid-template-columns: 1fr; }
  body.spabg-editorial-page .spa-home .spa-article-feature { grid-column: auto; }
  body.spabg-editorial-page .spa-home .spa-article-feature a { display: block; }
  body.spabg-editorial-page .spa-home .spa-article-feature .spa-article-photo { height: 182px; min-height: 0; }
  body.spabg-editorial-page .spa-home .spa-article-feature h3 { font-size: 20px; }
  body.spabg-editorial-page .spa-hotel-image { height: 210px; }
  body.spabg-editorial-page .spa-post-header { padding-block: 27px 35px; }
  body.spabg-editorial-page .spa-post-header-grid { display: block; }
  body.spabg-editorial-page .spa-post-header h1 { font-size: clamp(36px,9vw,49px); }
  body.spabg-editorial-page .spa-post-hero { height: 240px; margin-top: 25px; border-radius: 18px 18px 52px 18px; }
  body.spabg-editorial-page .spa-post-layout { padding-block: 30px 54px; }
  body.spabg-editorial-page .spa-post-toc nav { grid-template-columns: 1fr; }
  body.spabg-editorial-page .spa-article-content { font-size: 17px; line-height: 1.72; }
}
