/* Quire: theme layer on top of the Quire foundation. CSS only. */
:root{ --quire-ui: var(--wp--custom--font-ui, system-ui, sans-serif); --quire-hw: var(--wp--custom--heading-weight, 600); --quire-card: var(--qre-surface-2); }
@supports (color: color-mix(in oklch, red, blue)) { :root{ --quire-card: color-mix(in oklch, var(--qre-ink) 3%, var(--qre-surface)); } }

/* Small labels */
.quire-kicker, .quire-kicker a, .is-style-kicker{ font-family:var(--quire-ui); font-size:.76rem; font-weight:600; letter-spacing:.09em; text-transform:uppercase; color:var(--qre-accent-ink); text-decoration:none; margin:0; }
.quire-deck, .is-style-deck, .quire-lede{ font-size:var(--wp--preset--font-size--medium); color:var(--qre-ink-soft); line-height:1.5; }
.quire-soft{ color:var(--qre-ink-soft); }
.wp-block-post-terms, .wp-block-post-date, .wp-block-post-author-name, .wp-block-query-pagination, .wp-block-categories, .wp-block-navigation{ font-family:var(--quire-ui); }

/* Header */
.quire-header{ border-bottom:1px solid var(--qre-line); }
.quire-header-row{ gap:var(--wp--preset--spacing--30); }
.quire-header .wp-block-site-title{ font-family:var(--wp--custom--font-display); font-weight:var(--quire-hw); font-size:var(--wp--preset--font-size--medium); letter-spacing:-.01em; margin:0; }
.quire-header .wp-block-site-title a{ color:var(--qre-ink); text-decoration:none; }
.quire-header-actions{ gap:var(--wp--preset--spacing--40); }
.quire-header .wp-block-navigation{ font-size:var(--wp--preset--font-size--small); }
.quire-header .wp-block-navigation a{ color:var(--qre-ink-soft); text-decoration:none; }
.quire-header .wp-block-navigation a:hover{ color:var(--qre-ink); }
.wp-block-navigation__responsive-container.is-menu-open{ padding:var(--wp--preset--spacing--50) var(--wp--preset--spacing--40); background:var(--qre-surface); color:var(--qre-ink); }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{ font-size:var(--wp--preset--font-size--large); padding-block:.35em; color:var(--qre-ink); }
@media (max-width:600px){ .quire-header .quire-header-cta{ display:none; } }

/* Home */
.quire-intro .quire-intro-title{ font-size:var(--wp--preset--font-size--display); max-width:16ch; margin-block:.3em .4em; }
.quire-lede{ max-width:36rem; }
.quire-section{ margin-top:var(--wp--preset--spacing--70); }
.quire-sec-head{ margin-bottom:var(--wp--preset--spacing--40); gap:var(--wp--preset--spacing--30); }
.quire-sec-head h2{ margin:0; }
.quire-sec-link{ margin:0; font-family:var(--quire-ui); font-size:var(--wp--preset--font-size--small); }
.quire-sec-link a, .quire-archive-link a, .quire-book-link a{ color:var(--qre-accent-ink); }

/* Grids with few items share the full width instead of leaving an empty column */
.quire-topics .wp-block-post-template.is-layout-grid{ grid-template-columns:repeat(auto-fit, minmax(min(15rem, 100%), 1fr)); }
.quire-steps.is-layout-grid{ grid-template-columns:repeat(auto-fit, minmax(min(14rem, 100%), 1fr)); }
.quire-siblings.is-layout-grid{ grid-template-columns:repeat(auto-fit, minmax(min(12rem, 100%), 1fr)); }

/* Topic cards */
.quire-topics .wp-block-post-template{ gap:var(--wp--preset--spacing--30); }
.quire-topic{ height:100%; padding:var(--wp--preset--spacing--40); background:var(--quire-card); border:1px solid var(--qre-line); border-radius:var(--wp--custom--radius--base); transition:border-color .15s, transform .15s; }
.quire-topic:hover{ border-color:var(--qre-accent); transform:translateY(-2px); }
.quire-topic .wp-block-post-title{ font-size:var(--wp--preset--font-size--large); margin:0 0 .3em; }
.quire-topic .wp-block-post-title a{ color:var(--qre-ink); text-decoration:none; }
.quire-topic .wp-block-post-excerpt{ color:var(--qre-ink-soft); font-size:var(--wp--preset--font-size--small); margin:0; }
.quire-topic .wp-block-post-excerpt__excerpt{ margin:0; }
.quire-count{ font-family:var(--quire-ui); font-size:.8rem; font-weight:600; color:var(--qre-accent-ink); margin:.8em 0 0; }

/* Most read */
.quire-most{ counter-reset:quire-m; display:grid; grid-template-columns:repeat(auto-fit, minmax(min(19rem, 100%), 1fr)); column-gap:var(--wp--preset--spacing--60); }
.quire-most > li{ margin:0; counter-increment:quire-m; border-top:1px solid var(--qre-line); padding-block:var(--wp--preset--spacing--30); display:grid; grid-template-columns:2.4rem 1fr; gap:var(--wp--preset--spacing--20); }
.quire-most > li::before{ content:counter(quire-m); font-family:var(--wp--custom--font-display); font-weight:var(--quire-hw); font-size:var(--wp--preset--font-size--large); color:var(--qre-accent-ink); line-height:1; }
.quire-most-item .wp-block-post-title{ font-size:var(--wp--preset--font-size--medium); margin:0; line-height:1.25; }
.quire-most-item .wp-block-post-title a{ color:var(--qre-ink); text-decoration:none; }
.quire-most-item .wp-block-post-title a:hover{ color:var(--qre-accent-ink); }
.quire-most-topic{ font-size:var(--wp--preset--font-size--small); color:var(--qre-ink-soft); margin-top:.25em; }
.quire-most-topic a{ color:inherit; text-decoration:none; }

/* Newsletter */
.quire-newsletter{ margin-top:var(--wp--preset--spacing--70); background:var(--qre-accent-soft); border-radius:calc(var(--wp--custom--radius--base) * 1.5); padding:var(--wp--preset--spacing--60) var(--wp--preset--spacing--50); }
.quire-newsletter-inner{ align-items:center; gap:var(--wp--preset--spacing--50); }
.quire-newsletter h2{ margin:.2em 0 .3em; }
.quire-newsletter .quire-soft{ margin:0; }
.quire-newsletter .quire-core-subscribe, .quire-newsletter form{ display:flex; flex-wrap:wrap; gap:.5rem; }
.quire-newsletter input[type="email"]{ flex:1 1 13rem; padding:.5rem .8rem; font:inherit; }
.quire-newsletter .quire-kicker, .quire-archive-link a, .qre-takeaways > :first-child{ color:var(--qre-ink); }
.quire-archive-link{ font-family:var(--quire-ui); font-size:var(--wp--preset--font-size--small); margin:.8em 0 0; }

/* Books */
.quire-books{ gap:var(--wp--preset--spacing--50) var(--wp--preset--spacing--40); }
.quire-book{ max-width:14rem; }
.quire-cover{ color:var(--qre-on-accent); aspect-ratio:2 / 3; display:flex; flex-direction:column; justify-content:flex-end; padding:var(--wp--preset--spacing--30); border-radius:3px; box-shadow:0 10px 24px -14px rgb(0 0 0 / 50%); background:var(--qre-accent); }
.quire-cover-b{ background:var(--qre-ink); }
.quire-cover-c{ background:var(--qre-surface-2); box-shadow:inset 0 0 0 1px var(--qre-line), 0 10px 24px -14px rgb(0 0 0 / 50%); }
.quire-cover .quire-cover-title{ color:var(--qre-on-accent); font-size:var(--wp--preset--font-size--medium); line-height:1.15; margin:0; }
.quire-cover-b .quire-cover-title{ color:var(--qre-surface); }
.quire-cover-c .quire-cover-title{ color:var(--qre-ink); }
.quire-book-desc{ color:var(--qre-ink-soft); font-size:var(--wp--preset--font-size--small); margin:.8em 0 .3em; }
.quire-book-link{ font-family:var(--quire-ui); font-size:var(--wp--preset--font-size--small); margin:0; }

/* Start here */
.quire-steps{ counter-reset:quire-s; gap:var(--wp--preset--spacing--30); }
.quire-step{ counter-increment:quire-s; padding:var(--wp--preset--spacing--40); border:1px solid var(--qre-line); border-radius:var(--wp--custom--radius--base); }
.quire-step::before{ content:"Step " counter(quire-s); display:block; font-family:var(--quire-ui); font-size:.75rem; font-weight:600; letter-spacing:.08em; text-transform:uppercase; color:var(--qre-accent-ink); margin-bottom:.5rem; }
.quire-step h3{ font-size:var(--wp--preset--font-size--medium); margin:0 0 .3em; }
.quire-step h3 a{ color:var(--qre-ink); text-decoration:none; }
.quire-step p{ margin:0; font-size:var(--wp--preset--font-size--small); }

/* Article cards (blog, topics, search) */
.quire-chips ul, ul.quire-chips{ list-style:none; padding:0; margin:var(--wp--preset--spacing--30) 0 0; display:flex; flex-wrap:wrap; gap:.5rem; }
.quire-chips li a{ display:inline-flex; align-items:center; min-height:44px; padding:0 .9rem; border:1px solid var(--qre-line); border-radius:999px; color:var(--qre-ink); text-decoration:none; font-size:var(--wp--preset--font-size--small); }
.quire-chips li a:hover{ border-color:var(--qre-accent); color:var(--qre-accent-ink); }
.quire-cards{ gap:var(--wp--preset--spacing--40); }
.quire-card{ height:100%; padding-top:var(--wp--preset--spacing--30); border-top:2px solid var(--qre-ink); }
.quire-card .quire-card-title{ font-size:var(--wp--preset--font-size--medium); margin:.35em 0; line-height:1.25; }
.quire-card .quire-card-title a{ color:var(--qre-ink); text-decoration:none; }
.quire-card .quire-card-title a:hover{ color:var(--qre-accent-ink); }
.quire-card .wp-block-post-excerpt{ color:var(--qre-ink-soft); font-size:var(--wp--preset--font-size--small); }
.quire-card .wp-block-post-excerpt__excerpt{ margin:0; }

/* Article */
.quire-article-head .wp-block-post-title{ margin:.25em 0 .3em; }
.quire-byline{ gap:.35rem .5rem; font-family:var(--quire-ui); font-size:var(--wp--preset--font-size--small); color:var(--qre-ink-soft); padding-block:var(--wp--preset--spacing--30) var(--wp--preset--spacing--40); border-bottom:1px solid var(--qre-line); }
.quire-byline > *{ margin:0; }
.quire-byline a{ color:var(--qre-ink); }
.quire-updated-label{ margin:0; }
.quire-byline .wp-block-post-author-name::after{ content:"·"; margin-left:.5rem; color:var(--qre-line); }
.quire-body{ font-size:calc(var(--wp--preset--font-size--base) * 1.05); line-height:1.75; }
.quire-body h2{ margin-top:1.8em; }
.quire-takeaways{ border-left:3px solid var(--qre-accent); background:var(--quire-card); border-radius:0 var(--wp--custom--radius--base) var(--wp--custom--radius--base) 0; }
.wp-block-quote.is-style-pull{ border:0; padding:0; margin-block:var(--wp--preset--spacing--50); font-family:var(--wp--custom--font-display); font-weight:var(--quire-hw); font-size:var(--wp--preset--font-size--x-large); line-height:1.3; color:var(--qre-accent-ink); }
.wp-block-quote.is-style-pull p{ max-width:none; }
.wp-block-quote cite{ display:block; font-family:var(--quire-ui); font-size:var(--wp--preset--font-size--small); font-style:normal; color:var(--qre-ink-soft); }
.quire-part-of{ gap:.6rem; padding-block:var(--wp--preset--spacing--30); border-block:1px solid var(--qre-line); }
.quire-part-of .wp-block-post-terms a{ color:var(--qre-ink); font-weight:600; }
.quire-siblings{ gap:var(--wp--preset--spacing--30); margin-top:var(--wp--preset--spacing--20); }
.quire-sibling{ font-size:var(--wp--preset--font-size--base); margin:0; height:100%; }
.quire-sibling a{ display:block; height:100%; padding:var(--wp--preset--spacing--30); border:1px solid var(--qre-line); border-radius:var(--wp--custom--radius--base); color:var(--qre-ink); text-decoration:none; line-height:1.3; }
.quire-sibling a:hover{ border-color:var(--qre-accent); }
.quire-author-card{ padding:var(--wp--preset--spacing--40); background:var(--quire-card); border-radius:var(--wp--custom--radius--base); border-top:0; }
.quire-author-card .wp-block-avatar img{ border-radius:50%; }
.quire-author-intro{ gap:var(--wp--preset--spacing--40); }
.quire-author-intro .wp-block-avatar img{ border-radius:50%; }

/* Pillar */
.quire-pillar-meta{ gap:.3rem .9rem; font-family:var(--quire-ui); font-size:var(--wp--preset--font-size--small); color:var(--qre-ink-soft); }
.quire-pillar-meta > *{ margin:0; }
.quire-pillar-meta .quire-count{ font-size:inherit; margin:0; }
.quire-pillar-list{ counter-reset:quire-p; }
.quire-pillar-list > li{ margin:0; counter-increment:quire-p; display:grid; grid-template-columns:2.6rem 1fr; padding-block:var(--wp--preset--spacing--30); border-top:1px solid var(--qre-line); }
.quire-pillar-list > li::before{ content:counter(quire-p, decimal-leading-zero); font-family:var(--wp--custom--font-display); font-weight:var(--quire-hw); color:var(--qre-accent-ink); }
.quire-pillar-item .wp-block-post-title{ font-size:var(--wp--preset--font-size--medium); margin:0 0 .2em; }
.quire-pillar-item .wp-block-post-title a{ color:var(--qre-ink); text-decoration:none; }
.quire-pillar-item .wp-block-post-excerpt{ margin-top:.2em;  color:var(--qre-ink-soft); font-size:var(--wp--preset--font-size--small); }
.quire-pillar-item .wp-block-post-excerpt__excerpt{ margin:0; }

/* Group styles */
.wp-block-group.is-style-panel{ padding:var(--wp--preset--spacing--40); border:1px solid var(--qre-line); border-radius:var(--wp--custom--radius--base); }
.wp-block-group.is-style-band{ padding:var(--wp--preset--spacing--50); background:var(--qre-accent-soft); border-radius:var(--wp--custom--radius--base); }

/* Footer */
.quire-footer{ border-top:1px solid var(--qre-line); color:var(--qre-ink-soft); font-family:var(--quire-ui); font-size:var(--wp--preset--font-size--small); }
.quire-footer .wp-block-site-title{ font-family:var(--wp--custom--font-display); font-weight:var(--quire-hw); font-size:var(--wp--preset--font-size--medium); color:var(--qre-ink); margin:0; }
.quire-footer-tagline{ margin:.3em 0 0; max-width:28rem; }
.quire-footer-nav a{ color:var(--qre-ink-soft); text-decoration:none; }
.quire-footer-nav a:hover{ color:var(--qre-ink); }
.quire-footer-nav .wp-block-navigation-item__content{ min-height:44px; display:inline-flex; align-items:center; }
.quire-credit{ margin:var(--wp--preset--spacing--40) 0 0; }
.quire-credit a{ color:inherit; }
.wp-block-search__input{ min-height:44px; }

/* Savant: masthead logo, brand details */
.sv-logo{ display:block; line-height:0; color:var(--qre-ink); text-decoration:none; }
.sv-logo img{ display:block; width:auto; max-width:100%; }
.sv-logo-head img{ height:46px; }
.sv-logo-foot img{ height:96px; }
@media (max-width:600px){ .sv-logo-head img{ height:34px; } .sv-logo-foot img{ height:78px; } }
.quire-header-row{ align-items:center; }
.quire-header .wp-block-navigation{ font-weight:500; }
.wp-element-button, .wp-block-button__link{ font-family:var(--quire-ui); font-weight:600; letter-spacing:.01em; border-radius:var(--wp--custom--radius--base); }
.quire-footer-nav{ align-self:flex-end; }
.quire-credit{ font-size:.8rem; }
/* Reading: serif body, sans for interface */
.quire-body, .wp-block-post-content{ font-family:var(--wp--preset--font-family--newsreader); }
.quire-body{ font-size:1.2rem; line-height:1.65; }
.wp-block-post-content h2{ font-size:clamp(1.55rem, 1.3rem + 1vw, 2rem); }
.wp-block-post-content h3{ font-size:clamp(1.2rem, 1.1rem + .5vw, 1.4rem); }
.quire-deck, .quire-lede{ font-style:italic; }
/* The short answer box at the top of a section essay */
.sv-answer{ border-left:3px solid var(--qre-ink); background:var(--quire-card); padding:var(--wp--preset--spacing--40); margin-block:var(--wp--preset--spacing--40) var(--wp--preset--spacing--50); border-radius:0 var(--wp--custom--radius--base) var(--wp--custom--radius--base) 0; }
.sv-answer p{ margin:0; max-width:none; }
.sv-answer strong{ font-family:var(--quire-ui); font-size:.8rem; letter-spacing:.08em; text-transform:uppercase; margin-right:.4em; }
/* Links to articles not yet published read as plain text */
.sv-soon{ color:inherit; }
/* Sponsored label */
.sv-sponsored{ display:inline-block; font-family:var(--quire-ui); font-size:.72rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; border:1px solid currentColor; padding:.2em .6em; margin-bottom:.6rem; }
/* Home sections */
.sv-home-sections .wp-block-column{ border-top:2px solid var(--qre-ink); padding-top:var(--wp--preset--spacing--30); }
.sv-home-sections h3{ font-size:var(--wp--preset--font-size--large); margin:.2em 0 .35em; }
.sv-home-sections h3 a{ color:var(--qre-ink); text-decoration:none; }
.sv-home-sections h3 a:hover{ text-decoration:underline; text-underline-offset:.15em; }
.sv-home-sections p{ color:var(--qre-ink-soft); font-size:1.05rem; margin:0; }
.quire-intro .quire-intro-title{ max-width:20ch; }
.sv-logo-foot img{ height:64px; }
@media (max-width:600px){ .sv-logo-foot img{ height:54px; } }
.quire-footer-tagline{ font-family:var(--wp--preset--font-family--newsreader); font-style:italic; font-size:1.05rem; margin-top:.8rem; }
.quire-header-cta .wp-block-button__link{ padding:.6rem 1.1rem; font-size:.95rem; }
.sv-profile-body{ max-width:42rem; }
.sv-signature{ font-style:italic; margin-top:2rem; }
@media (prefers-color-scheme: dark){
  html:not(.qre-no-dark):not([data-theme="light"]){ --qre-accent:#ECEAE4; --qre-accent-ink:#ECEAE4; --qre-on-accent:#111516; --qre-accent-soft:#22262a; }
}
