.reflect-page{--reflect-line:rgba(238,228,207,.1);width:100%;padding:58px 0 0}
.reflect-hero{display:grid;grid-template-columns:1.08fr .92fr;gap:80px;align-items:center;padding:0 0 32px}
.reflect-hero h1{font-size:58px;margin:0 0 24px}
.reflect-hero p{font-size:16px;line-height:1.85;margin:0}
.reflect-dash{font-size:24px;margin-top:18px}
.reflect-quote{justify-self:center;margin-top:16px;min-width:min(520px,100%);max-width:520px;font-size:28.9px;line-height:1.25}
.reflect-quote p{font-size:28.9px;line-height:1.25;margin:0 0 22px}
.reflect-quote span{color:var(--muted);font-size:19.6px;line-height:1.62}
.reflect-filters{display:flex;align-items:center;flex-wrap:wrap;gap:18px;border-bottom:1px solid var(--line);padding:14px 0 18px;margin-bottom:28px;color:var(--muted);font-size:14px;position:sticky;top:var(--sticky-header-height);z-index:30;background:rgba(7,6,10,.9);backdrop-filter:blur(14px);transition:background .16s ease,box-shadow .16s ease,border-color .16s ease}
.reflect-filters.is-stuck{background:rgba(7,6,10,.98);border-bottom-color:rgba(238,228,207,.26);box-shadow:0 18px 34px rgba(0,0,0,.36),0 -1px 0 rgba(238,228,207,.12)}
.reflect-filters button{border:0;background:transparent;color:inherit;font:inherit;padding:0;cursor:pointer;white-space:nowrap}
.reflect-filters button:hover,.reflect-filters button.active{color:var(--accent)}
.reflect-filters span{opacity:.62}
.reflect-featured{display:grid;grid-template-columns:.42fr .58fr;aspect-ratio:3.33 / 1;border:1px solid var(--reflect-line);background:linear-gradient(180deg,var(--panel),transparent);overflow:hidden}
.reflect-featured[hidden],.reflect-card[hidden]{display:none}
.reflect-featured-copy{padding:36px 46px;position:relative;z-index:1}
.reflect-kicker{text-transform:uppercase;color:var(--accent);font-size:14px;margin-bottom:16px}
.reflect-featured h2,.reflect-list h2{margin:0;font-size:26px;font-weight:400;line-height:1.2}
.reflect-featured p{font-size:14px;line-height:1.7;max-width:390px;margin:22px 0 0}
.reflect-featured a,.reflect-card a,.reflect-all,.reflect-back,.reflect-post-nav a{color:var(--accent)}
.reflect-featured a{display:inline-block;margin-top:34px}
.reflect-featured-art{position:relative;margin:0;min-height:0;overflow:hidden}
.reflect-featured-art:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,6,10,.98) 0%,rgba(7,6,10,.78) 19%,rgba(7,6,10,.22) 46%,rgba(7,6,10,0) 72%);z-index:1;pointer-events:none}
.reflect-featured-art img{display:block;width:100%;height:100%;object-fit:cover;filter:brightness(.78) sepia(.08)}
.reflect-list{margin-top:40px}
.reflect-list h2{color:var(--accent);font-size:20px;margin-bottom:18px}
.reflect-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.reflect-more{display:flex;justify-content:center;margin:34px 0 8px}
.reflect-more-btn{border:1px solid var(--reflect-line);background:transparent;color:var(--accent);font:inherit;font-size:15px;padding:12px 26px;cursor:pointer;transition:background .16s ease,color .16s ease}
.reflect-more-btn:hover{background:var(--accent);color:var(--bg,#07060a)}
.reflect-more-btn[disabled]{opacity:.5;cursor:default}
.reflect-card{min-height:268px;border:1px solid var(--reflect-line);background:linear-gradient(180deg,var(--panel),transparent);padding:28px;position:relative}
.reflect-card h3{font-size:24px;font-weight:400;line-height:1.18;margin:0 0 16px}
.reflect-meta{color:var(--muted);font-size:14px;margin:0}
.reflect-meta span{padding:0 10px}
.reflect-card-dash{margin:16px 0 14px}
.reflect-card>p:not(.reflect-meta){font-size:15px;line-height:1.65;margin:0 0 42px}
.reflect-card a{position:absolute;left:28px;bottom:24px}
.reflect-all{display:block;width:max-content;margin:32px auto 0}
.reflect-post{--reflect-line:rgba(238,228,207,.1);padding:52px 0 0}
.reflect-back{display:inline-block;margin-bottom:54px;color:var(--text);font-size:15px}
.reflect-post-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:88px;align-items:start}
.reflect-post-meta{position:sticky;top:calc(var(--sticky-header-height) + 32px);display:grid;gap:18px;color:var(--muted);font-size:14px}
.reflect-post-meta span{display:block;text-transform:uppercase;margin-bottom:8px}
.reflect-post-meta strong{display:block;color:var(--text);font-size:16px;font-weight:400}
.reflect-post-meta i{font-style:normal;color:var(--text)}
.reflect-share{display:flex;gap:18px;font-size:14px}
.reflect-share a{color:var(--text);padding:0}
.reflect-article h1{font-size:clamp(44px,4vw,64px);line-height:1.08;margin:0 0 24px;max-width:none}
.reflect-post-dash{color:var(--accent);font-size:22px;margin:16px 0}
.reflect-article blockquote{margin:0 0 56px;font-style:italic;font-size:18px;line-height:1.6}
.reflect-article blockquote p{margin:0 0 16px}
.reflect-article blockquote cite{font-style:normal}
.reflect-article>p{font-size:17px;line-height:1.68;max-width:640px;margin:0 0 28px}
/* max-width:100% keeps images inside the column; a saved numeric width= wins.
   Only images WITHOUT an explicit width fall back to filling the column, so an
   editor-resized image renders at its chosen size on the public post. */
.reflect-article img{display:block;max-width:100%;margin:38px 0 32px;border:1px solid var(--reflect-line);filter:brightness(.88)}
.reflect-article img:not([width]){width:100%}
.reflect-article figure{margin:38px 0 32px}
.reflect-article figure img{margin:0 0 10px}
.reflect-article figcaption{color:var(--reflect-muted,#9a927f);font-size:14px;text-align:center}
.reflect-post-nav{display:grid;grid-template-columns:1fr 1fr;gap:32px;border-top:1px solid var(--reflect-line);padding-top:28px;margin-top:28px}
.reflect-post-nav a{display:grid;gap:6px;color:var(--text)}
.reflect-post-nav a:last-child{text-align:right}
.reflect-post-nav span{color:var(--accent)}
.reflect-post-nav strong{font-weight:400}

@media(max-width:1100px){
  .reflect-page,.reflect-post{padding-top:42px}
  .reflect-hero{grid-template-columns:1fr;gap:24px}
  .reflect-quote{justify-self:start;font-size:20.4px;white-space:normal}
  .reflect-quote p{font-size:20.4px}
  .reflect-featured{grid-template-columns:1fr;aspect-ratio:auto}
  .reflect-featured-art{margin:0 14px 14px;height:260px}
  .reflect-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .reflect-post-layout{grid-template-columns:1fr;gap:36px}
  .reflect-back{margin-bottom:32px}
  .reflect-post-meta{position:static;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;border-bottom:1px solid var(--line);padding-bottom:22px}
  .reflect-post-meta i{display:none}
}

@media(max-width:650px){
  .reflect-hero h1,.reflect-article h1{font-size:42px}
  .reflect-hero p{font-size:14px}
  .reflect-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;font-size:13px}
  .reflect-filters span{display:none}
  .reflect-filters button{text-align:left;white-space:normal}
  .reflect-featured-copy{padding:28px}
  .reflect-grid{grid-template-columns:1fr}
  .reflect-card{min-height:250px}
  .reflect-post-meta{grid-template-columns:1fr 1fr}
  .reflect-article blockquote,.reflect-article>p{font-size:15px}
  .reflect-post-nav{grid-template-columns:1fr}
  .reflect-post-nav a:last-child{text-align:left}
}
