@charset "UTF-8";
/*
Theme Name: Stewart Brand 2026
Theme URI: https://sb.org
Author: Automattic Special Projects
Author URI: https://wpspecialprojects.com
Description: Block theme for stewartbrand.org built 1:1 from the Figma "Stewart Brand – Website Redesign" dev handoff (July 2026). Dark single-palette design set in Mona Sans and iA Writer Mono/Duo, with Long Now five-digit years.
Requires at least: 6.7
Tested up to: 7.0
Requires PHP: 8.1
Version: 1.0.1
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: stewart-brand-2026
Tags: block-theme, dark, one-column, custom-colors, editor-style
*/
/* ----- Global rules (designer's "Global CSS" card, verbatim intent) ----- */
body {
  text-rendering: geometricprecision;
  -webkit-font-smoothing: antialiased;
}
/* On :root rather than *, so it inherits. A declaration on every element
   beats an inherited one, which made this impossible to override from a
   container -- setting text-wrap on a wrapper did nothing for its children.
   Inherited, any text-wrap further down the tree wins. */
:root {
  text-wrap: pretty;
}
html {
  scroll-behavior: smooth;
  /* Stop iOS Safari inflating text in landscape. */
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}
::selection {
  background: var(--wp--preset--color--contrast);
  color: var(--wp--preset--color--base);
}
/* ----- Links: dotted underline at rest, highlight on hover -----
   The underline has zero specificity (:where) so any block rule wins. The
   hover highlight does not, so it beats per-block link colours. Links that
   underline on hover instead of highlighting are listed in $link-no-highlight. */
/* Links that wrap an image rather than text (logo, footer badges): no*/
/* underline, no highlight.*/
:where(a:not(.wp-element-button, a:has(> img, > svg, > picture, > video))) {
  text-decoration-line: underline;
  text-decoration-style: dotted;
  text-decoration-thickness: 1px;
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
  text-underline-offset: var(--wp--custom--link--underline-offset);
}
:where(a:has(> img, > svg, > picture, > video)) {
  text-decoration-line: none;
}
a:not(.wp-element-button, .wp-block-site-title a, .wp-block-navigation a, .wp-block-post-title a, .wp-block-heading a, .wp-block-post-navigation-link a, p.is-style-menu-link a, #wp-skip-link, sup a, .photo-ring__slot, .wp-block-query-pagination-previous, .wp-block-query-pagination-next, a:has(> img, > svg, > picture, > video)):hover {
  text-decoration-line: none;
  background-color: var(--wp--preset--color--contrast);
  color: var(--wp--preset--color--base);
}
.wp-block-navigation a,
.wp-block-post-title a {
  text-decoration-style: dotted;
  text-decoration-thickness: 1px;
}
:focus-visible {
  outline: 1px solid var(--wp--preset--color--contrast);
  outline-offset: 3px;
}
/* ----- Skip link: core prints it before .wp-site-blocks, pointing at the
   template's <main id="content">. Hidden until keyboard focus; then shown
   top-left in the site's style rather than core's grey box. (The header parts
   used to add a second one, which doubled the tab stop.) ----- */
#wp-skip-link:focus {
  top: 0;
  left: 0;
  margin: 0; /* core's screen-reader-text sets -1px */
  padding: 8px 16px;
  background-color: var(--wp--preset--color--contrast);
  color: var(--wp--custom--color--ink);
  font-family: var(--wp--preset--font-family--mono);
  font-size: var(--wp--preset--font-size--body);
  line-height: 1.6;
  text-decoration: none;
}
/* ----- Large screens: page column caps at 1440px over a black canvas ----- */
@media (min-width: 1440px) {
  body {
    background-color: var(--wp--preset--color--black, #000);
  }
  body > .wp-site-blocks {
    max-width: var(--wp--custom--layout--page-max);
    margin-left: auto;
    margin-right: auto;
    background-color: var(--wp--preset--color--base);
  }
  /* The 404 is a starfield with the earth in it; it runs edge to edge. */
  body.error404 > .wp-site-blocks {
    max-width: none;
  }
}
/* ----- Dashed rules: 1px-on/3px-off background layers instead of CSS dashed
   borders, which browsers dash unevenly. Classes replace the block border
   attribute on templates/patterns; layers are the theme.json rule tokens. ----- */
.has-rule-top {
  background: var(--wp--custom--rule--top);
}
.has-rule-bottom {
  background: var(--wp--custom--rule--bottom);
}
.has-rule-top.has-rule-bottom {
  background: var(--wp--custom--rule--top), var(--wp--custom--rule--bottom);
}
/*# sourceMappingURL=style.css.map */