:root {
	--quarry-accent: #F8C300;
	--quarry-accent-alt: #FF6A2C;
	--quarry-ink: #0E1014;
	--quarry-paper: #F4F2EE;
}
*, *::before, *::after { box-sizing: border-box; }
body { margin: 0; background: var(--quarry-paper); color: var(--quarry-ink); font-family: var(--wp--preset--font-family--sans, sans-serif); -webkit-font-smoothing: antialiased; }
img, svg, video { max-width: 100%; height: auto; display: block; }
.quarry-skip { position: absolute; left: -9999px; background: var(--quarry-accent); color: var(--quarry-ink); padding: 0.65rem 1rem; font-weight: 700; z-index: 9999; }
.quarry-skip:focus { left: 1rem; top: 1rem; }
.quarry-site-header { background: #FFFFFF; border-bottom: 2px solid var(--quarry-ink); }
.quarry-header-main { padding-left: var(--wp--preset--spacing--40, 1rem); padding-right: var(--wp--preset--spacing--40, 1rem); }
.is-dark { color: #FFFFFF; }
.is-dark a { color: var(--quarry-accent); }
.wp-block-button.is-style-quarry-hard .wp-block-button__link { background: var(--quarry-accent) !important; color: var(--quarry-ink) !important; border-radius: 0; box-shadow: 4px 4px 0 var(--quarry-ink); transition: transform 0.15s ease, box-shadow 0.15s ease; }
.wp-block-button.is-style-quarry-hard .wp-block-button__link:hover { transform: translate(-2px, -2px); box-shadow: 6px 6px 0 var(--quarry-ink); }
.wp-block-button.is-style-quarry-outline .wp-block-button__link { background: transparent !important; color: var(--quarry-ink) !important; border: 2px solid var(--quarry-ink); border-radius: 0; }
.wp-block-button.is-style-quarry-ember .wp-block-button__link { background: var(--quarry-accent-alt) !important; color: #FFFFFF !important; border-radius: 0; }
.wp-block-group.is-style-quarry-card { background: #FFFFFF; border: 2px solid var(--quarry-ink); }
.wp-block-group.is-style-quarry-blueprint { background: #0E1014; color: #FFFFFF; background-image: linear-gradient(rgba(248,195,0,0.04) 1px, transparent 1px), linear-gradient(90deg, rgba(248,195,0,0.04) 1px, transparent 1px); background-size: 24px 24px; }
.wp-block-heading.is-style-quarry-stencil { font-family: var(--wp--preset--font-family--display, sans-serif); text-transform: uppercase; -webkit-text-stroke: 2px var(--quarry-ink); color: transparent; }
.wp-block-heading.is-style-quarry-mark { background: var(--quarry-accent); color: var(--quarry-ink); display: inline-block; padding: 0.15rem 0.5rem; }
.wp-block-separator.is-style-quarry-hazard { height: 12px !important; background: repeating-linear-gradient(45deg, var(--quarry-accent) 0 12px, var(--quarry-ink) 12px 24px) !important; border: none !important; }
.wp-block-image.is-style-quarry-mono img { filter: grayscale(1) contrast(1.1); }
.wp-block-quote.is-style-quarry-stamp { border: 2px solid var(--quarry-ink); padding: 1.25rem 1.5rem; background: var(--quarry-paper); font-family: var(--wp--preset--font-family--display, sans-serif); text-transform: uppercase; }
.wp-block-navigation .wp-block-navigation-item__content { color: var(--quarry-ink); font-weight: 600; text-transform: uppercase; letter-spacing: 0.08em; font-size: 0.85rem; }
.wp-block-navigation .wp-block-navigation-item__content:hover { color: var(--quarry-accent-alt); }

/* === WordPress standard accessibility / alignment / gallery / caption classes === */
.screen-reader-text { border: 0; clip: rect(1px,1px,1px,1px); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; word-wrap: normal !important; }
.screen-reader-text:focus { background-color: #f1f1f1; border-radius: 3px; box-shadow: 0 0 2px 2px rgba(0,0,0,.6); clip: auto !important; clip-path: none; color: #21759b; display: block; font-size: 14px; font-weight: 700; height: auto; left: 5px; line-height: normal; padding: 15px 23px 14px; text-decoration: none; top: 5px; width: auto; z-index: 100000; }
.alignleft  { float: left;  margin-right: 1.5em; }
.alignright { float: right; margin-left:  1.5em; }
.aligncenter { display: block; margin-left: auto; margin-right: auto; }
.alignwide { max-width: 100vw; }
.alignfull { max-width: 100vw; }
.sticky { display: block; }
.wp-caption { max-width: 100%; }
.wp-caption-text { font-size: 0.9em; text-align: center; }
.gallery-caption { font-size: 0.85em; }
.bypostauthor { display: block; }
