/* Market Notes shared styles. Extracted unchanged from the per-page style blocks. */
/* Block 1: base, index, article, tags */
  .back-to-top{
    position: fixed; bottom: 96px; right: 28px; left: auto; z-index: 200;
    width: 46px; height: 46px; border-radius: 50%;
    background: #fff; border: 1px solid rgba(14,42,71,0.14);
    display: flex; align-items: center; justify-content: center;
    box-shadow: 0 4px 14px rgba(0,0,0,0.28), 0 0 0 3px rgba(255,255,255,0.35);
    opacity: 0; visibility: hidden; transform: translateY(8px);
    transition: opacity .25s ease, transform .25s ease, visibility .25s, box-shadow .2s ease;
  }
  .back-to-top svg path{ stroke: var(--navy-deep, #0E2A47); transition: stroke .2s ease; }
  .back-to-top:hover svg path, .back-to-top:focus-visible svg path{ stroke: var(--green, #1F9D63); }
  .back-to-top:focus-visible{ outline: 2px solid var(--green, #1F9D63); outline-offset: 3px; }
  .back-to-top.visible{ opacity: 1; visibility: visible; transform: translateY(0); }
  .footer-legal-group{ display: flex; flex-direction: column; align-items: center; gap: 8px; }
  .main-nav a.active{ color: #fff; border-bottom: 1px solid var(--green); padding-bottom: 4px; }

  .notes-index{ padding-top: 70px; padding-bottom: 20px; }
  .index-item{
    border-top: 1px solid var(--line);
    padding: 32px 0;
    display: grid;
    grid-template-columns: 1fr 260px;
    gap: 32px;
    align-items: start;
  }
  .index-item:last-child{ border-bottom: 1px solid var(--line); }
  .index-date{ color: var(--gray); font-size: 13.5px; margin-bottom: 10px; }
  .index-item h2{ font-size: 24px; color: var(--navy-deep); line-height: 1.3; margin: 0; }
  .index-excerpt{ color: var(--gray); margin-top: 12px; font-size: 15.5px; }
  .read-link{
    display: inline-block; margin-top: 16px; font-size: 14.5px;
    border-bottom: 1px solid var(--blue); color: var(--blue); padding-bottom: 2px;
  }
  .index-thumb{ border-radius: 4px; overflow: hidden; border: 1px solid var(--line); }
  .coming-soon{ padding: 26px 0; border-top: 1px solid var(--line); color: var(--gray); font-size: 14.5px; }

  .note-article{ padding: 60px 0 78px; border-top: 1px solid var(--line); margin-top: 10px; }
  .note-article .article-date{ color: var(--gray); font-size: 13.5px; }
  .note-article h1{ font-size: 32px; color: var(--navy-deep); margin: 10px 0 0; line-height: 1.2; }
  .note-kicker{ font-family: var(--serif); font-style: italic; color: var(--gray); margin-top: 14px; font-size: 16.5px; }
  .note-prose{ max-width: 720px; margin-top: 32px; }
  .note-prose h2{ font-size: 21px; color: var(--navy-deep); margin-top: 40px; margin-bottom: 12px; }
  .note-prose p{ font-size: 16px; color: var(--ink); margin: 0 0 18px; }
  .note-prose figure{ margin: 30px 0; }
  .note-prose figcaption{ font-size: 13.5px; color: var(--gray); margin-top: 8px; }

  .price-note{
    background: var(--paper-alt);
    border-left: 3px solid var(--gold);
    padding: 16px 20px;
    font-size: 14.5px;
    color: var(--ink);
    margin: 26px 0;
  }
  .takeaway{
    background: #fff;
    border-left: 4px solid var(--green);
    box-shadow: 0 2px 14px rgba(14,42,71,0.06);
    padding: 24px 28px;
    margin: 34px 0;
    font-size: 15.5px;
  }
  .takeaway strong{ font-family: var(--serif); color: var(--navy-deep); }
  .note-disclaimer{
    font-size: 13px; color: var(--gray);
    border-top: 1px solid var(--line);
    margin-top: 40px; padding-top: 16px;
  }

  img{ max-width: 100%; height: auto; }
  .note-prose figure img{ display: block; border-radius: 4px; }
  .index-thumb img{ display: block; width: 100%; }

  .tag-theme{
    display:inline-block;
    font-size:11px;
    letter-spacing:0.5px;
    padding:3px 9px;
    border-radius:3px;
    text-transform:uppercase;
    font-weight:700;
    margin-right:10px;
    vertical-align:middle;
    color:#fff;
  }
  .tag-pathway{ background:var(--navy-deep); }
  .tag-mindset{ background:var(--blue); }
  .tag-scaling{ background:var(--green); }
  .tag-compounding{ background:var(--navy-mid); }
  .tag-risk{ background:#B5523B; }
  .tag-special{
    display:inline-block;
    background:var(--gold);
    color:var(--navy-deep);
    font-size:11px;
    letter-spacing:0.5px;
    padding:3px 9px;
    border-radius:3px;
    text-transform:uppercase;
    font-weight:700;
    margin-right:10px;
    vertical-align:middle;
  }

  @media (max-width: 680px){
    .index-item{ grid-template-columns: 1fr; }
    .index-thumb{ order: -1; }
  }

/* Block 2: article page extras */
  .note-page{ padding-top: 56px; padding-bottom: 70px; }
  .note-page .note-article{ border-top: 0; padding-top: 0; margin-top: 0; }
  .note-back{ display: inline-block; font-size: 14.5px; color: var(--blue); border-bottom: 1px solid var(--blue); padding-bottom: 2px; margin-bottom: 26px; }
  .read-next{ max-width: 720px; margin-top: 10px; padding-top: 30px; border-top: 1px solid var(--line); }
  .read-next h2{ font-size: 21px; color: var(--navy-deep); margin: 0 0 16px; }
  .read-next ul{ list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 14px; }
  .read-next li a{ color: var(--navy-deep); font-weight: 600; }
  .read-next li span{ display: block; color: var(--gray); font-size: 13.5px; margin-top: 2px; }
  .note-cta{ max-width: 720px; margin-top: 34px; background: var(--paper-alt); border-left: 3px solid var(--green); padding: 18px 22px; font-size: 15px; }
  .note-cta a{ color: var(--blue); font-weight: 600; }

/* Block 3: cookie banner */
  #gm-cookie-banner {
    position: fixed; left: 0; right: 0; bottom: 0; z-index: 9999;
    background: var(--navy-deep, #0E2A47); color: #F7F5EF;
    font-family: var(--sans, Inter, sans-serif);
    box-shadow: 0 -2px 12px rgba(0,0,0,0.25);
    display: none;
  }
  #gm-cookie-banner.gm-show { display: block; }
  #gm-cookie-inner {
    max-width: 1000px; margin: 0 auto; padding: 16px 20px;
    display: flex; flex-wrap: wrap; align-items: center;
    justify-content: space-between; gap: 12px;
  }
  #gm-cookie-text { margin: 0; font-size: 14px; line-height: 1.5; flex: 1 1 420px; }
  #gm-cookie-text a { color: #A9822F; text-decoration: underline; }
  #gm-cookie-actions { display: flex; gap: 10px; flex: 0 0 auto; }
  #gm-cookie-actions button {
    font-family: inherit; font-size: 14px; font-weight: 600;
    padding: 9px 18px; border-radius: 4px; border: 1px solid #A9822F; cursor: pointer;
  }
  #gm-cookie-accept { background: #A9822F; color: var(--navy-deep, #0E2A47); }
  #gm-cookie-decline { background: transparent; color: #F7F5EF; }
  @media (max-width: 480px) { #gm-cookie-actions { width: 100%; justify-content: flex-end; } }

/* Header logo, same as the home page */
.site-header .brand{ display:flex; align-items:center; gap:12px; }
.brand-icon{ height:36px; width:auto; }
.brand-word{ height:30px; width:auto; }

/* Footer, same as the home page (scoped so older shared styles cannot leak in) */
.site-footer{ background:var(--navy-ink,#0A2038); color:#B9C6D4; padding:56px 0 28px; }
.site-footer .footer-inner{ display:grid; grid-template-columns:auto 1fr; gap:48px; align-items:start; justify-content:normal; flex-wrap:nowrap; }
.site-footer .brand-stack{ height:96px; width:auto; }
.site-footer .footer-cols{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:32px; }
.site-footer .footer-cols h4{ margin:0 0 12px; font-size:12px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--gold-soft,#D4AF5A); font-family:var(--sans,Inter,sans-serif); }
.site-footer .footer-cols a, .site-footer .footer-cols span{ display:block; font-size:14.5px; color:var(--on-dark,#CBD8E3); line-height:1.9; margin:0; }
.site-footer .footer-cols a:hover{ color:#fff; }
.site-footer .copyright{ margin-top:40px; padding-top:20px; border-top:1px solid var(--line-dark,rgba(255,255,255,.12)); font-size:13px; color:#7488A0; text-align:center; width:auto; }
@media (max-width:860px){ .site-footer .footer-inner{ grid-template-columns:1fr; gap:28px; } .site-footer .footer-cols{ grid-template-columns:1fr 1fr; } }
@media (max-width:600px){ .site-footer .footer-cols{ grid-template-columns:1fr; } }
