/*
Theme Name: SynthAxis
Description: SynthAxis Solutions block theme with approved armored trilobite branding, editable core blocks and industrial editorial layouts.
Version: 0.4.0
Requires at least: 6.6
Requires PHP: 7.4
Author: SynthAxis Solutions LLC
Text Domain: synthaxis-p02
*/

/* PHP 7.4 is a syntax floor only. Use maintained compatible PHP for hosting. */
html { scroll-behavior: smooth; }
body { margin: 0; }
*, *::before, *::after { box-sizing: border-box; }
a { text-underline-offset: .25em; }
img { height: auto; max-width: 100%; }
.wp-site-blocks > * + *, .wp-block-post-content > .sax-section + .sax-section { margin-block-start: 0; }
.wp-block-group.has-graphite-background-color,
.wp-block-group.has-panel-background-color,
.wp-block-navigation__responsive-container.has-graphite-background-color { --sax-focus-color: #FF681F; }
.wp-block-group.has-paper-background-color { --sax-focus-color: #BA3D10; }
.wp-block-group.has-orange-background-color { --sax-focus-color: #15181B; }
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible,
.wp-block-navigation-item__content:focus-visible { outline: 3px solid var(--sax-focus-color, #BA3D10); outline-offset: 5px; }
.sax-header, .sax-footer { padding-inline: clamp(1.375rem, 5vw, 5.5rem); }
.sax-header { padding-block: 0 1rem; border-bottom: 1px solid #3b3e40; }
.sax-header-row { min-height: 85px; gap: 1.25rem; }
.sax-review-label { margin: 0 0 .8rem; padding: .4rem 0; text-align: center; font-size: .6875rem; letter-spacing: .08em; text-transform: uppercase; color: #c8c9ca; border-bottom: 1px solid #3b3e40; }
.sax-brand { margin: 0; flex: 0 0 auto; }
.sax-brand img { display: block; width: 230px; height: auto; }
.sax-brand a { display: inline-block; max-width: 100%; }
.sax-header .wp-block-navigation { font-size: .8125rem; }
.sax-header .wp-block-navigation__container { gap: 1.75rem; }
.sax-header .wp-block-navigation-item__content { padding-block: .7rem; }
.sax-header .wp-block-navigation-item__content:hover { color: #FF681F; }
.sax-header .wp-block-navigation__responsive-container.is-menu-open { padding: 2rem; }
.sax-header .wp-block-navigation__responsive-container-open,
.sax-header .wp-block-navigation__responsive-container-close { min-width: 44px; min-height: 44px; align-items: center; justify-content: center; }
.sax-skip-link { position: absolute; top: -200px; left: 1.375rem; z-index: 99; }
.sax-skip-link:focus-within { top: 1rem; }
.sax-skip-link a { display: block; padding: .8rem 1.2rem; background: #FF681F; color: #15181B; }
.sax-section { padding: clamp(3.75rem, 7vw, 6.25rem) clamp(1.375rem, 5vw, 5.5rem); }
.sax-section > * { max-width: 1440px; margin-inline: auto; }
.sax-section .wp-block-columns { gap: clamp(2rem, 5vw, 5.5rem); }
.sax-section .wp-block-column { min-width: 0; }
.sax-kicker { font: .75rem/1.5 Consolas, 'Courier New', monospace; letter-spacing: .09em; text-transform: uppercase; margin-bottom: 1.75rem; }
.sax-kicker::before { content: ''; display: inline-block; width: 22px; height: 2px; margin-right: .8rem; vertical-align: middle; background: #FF681F; }
.sax-section h2 { font-size: clamp(2.25rem, 4.5vw, 4rem); line-height: 1.08; letter-spacing: -.045em; font-weight: 500; }
.sax-section h3 { font-weight: 500; line-height: 1.1; letter-spacing: -.025em; }
.sax-hero { padding-top: clamp(2.5rem, 4vw, 4rem); padding-bottom: 0; }
.sax-hero .wp-block-columns { gap: 0; }
.sax-hero-title { font-size: clamp(3rem, 6.4vw, 6rem); line-height: 1.01; letter-spacing: -.045em; font-weight: 500; max-width: 13ch; margin-block: 1.5rem 2rem; }
.sax-hero-title em { color: #FF681F; }
.sax-lead { max-width: 40ch; font-size: 1.125rem; line-height: 1.65; margin-bottom: 2rem; }
.sax-hero .wp-block-buttons { gap: 1rem; }
.sax-hero-art { margin: 0; }
.sax-hero-art img { width: 100%; display: block; }
.sax-hero-art figcaption { font: .625rem/1.6 Consolas, 'Courier New', monospace; letter-spacing: .03em; text-transform: uppercase; color: #a9acae; margin: 0 1.5rem; }
.sax-baseline { margin-top: 2rem; margin-bottom: 0; padding: 1.5rem 0; border-top: 1px solid #3b3e40; color: #a9acae; font: .75rem/1.8 Consolas, 'Courier New', monospace; text-transform: uppercase; letter-spacing: .05em; }
.sax-section-intro { max-width: 46ch; color: #65696c; font-size: 1.0625rem; }
.sax-services > .wp-block-columns:first-child { margin-bottom: 3.5rem; }
.sax-services > .wp-block-columns:not(:first-child) { margin-block: 0; }
.sax-service { padding-block: 1.75rem; border-top: 1px solid #c7c8c4; }
.sax-service h3 { font-size: 1.4375rem; margin-block: 0 .75rem; }
.sax-service h3 a { text-decoration: none; }
.sax-service h3 a:hover { color: #BA3D10; text-decoration: underline; }
.sax-service p { font-size: .875rem; color: #65696c; max-width: 50ch; }
.sax-scope-note { border-top: 1px solid #c7c8c4; padding-top: 1.5rem; color: #65696c; font-size: .75rem; }
.sax-projects { background: #e6e4de; }
.sax-projects p:not(.sax-kicker) { color: #626668; }
.sax-project-art { margin: 0; background: #d9d7d1; }
.sax-project-art img { width: 100%; }
.sax-project-art figcaption { margin: 0; padding: .75rem 1rem; color: #35393b; font: .625rem/1.5 Consolas, 'Courier New', monospace; text-transform: uppercase; }
.sax-software { border-bottom: 1px solid #3b3e40; }
.sax-status { display: inline-block; padding: .4rem .65rem; border: 1px solid #66696b; text-transform: uppercase; font-size: .6875rem; letter-spacing: .08em; }
.sax-status::before { content: ''; display: inline-block; height: 6px; width: 6px; background: #FF681F; margin-right: .5rem; }
.sax-software-art { padding: 1.5rem; border: 1px solid #414548; background: #202326; margin: 0; }
.sax-software-art img { width: 85%; margin-inline: auto; }
.sax-software-art figcaption { font: .625rem/1.5 Consolas, 'Courier New', monospace; text-transform: uppercase; color: #a9acae; }
.sax-text-link a { display: inline-block; padding: .75rem 0; border-bottom: 1px solid currentColor; text-decoration: none; font-size: .875rem; }
.sax-text-link a:hover { color: #FF681F; }
.sax-projects .sax-text-link a:hover { color: #BA3D10; }
.sax-approach > .wp-block-columns { margin-top: 3rem; }
.sax-step { border-top: 1px solid #45484a; padding-top: 1.4rem; }
.sax-step-number { color: #FF681F; font: .75rem/1.5 Consolas, 'Courier New', monospace; text-transform: uppercase; letter-spacing: .06em; margin-bottom: 2rem; }
.sax-step h3 { font-size: 1.5rem; margin-bottom: 1.1rem; }
.sax-step p:not(.sax-step-number) { font-size: .875rem; max-width: 36ch; }
.sax-cta { padding-block: 4rem; }
.sax-cta .wp-block-columns { margin-block: 0; }
.sax-cta .wp-block-buttons { justify-content: flex-end; }
.sax-cta p { font-size: .9375rem; }
.sax-button-secondary .wp-block-button__link { background: transparent; color: inherit; border: 1px solid #66696b; }
.sax-footer { padding-block: 3.75rem 1.5rem; }
.sax-footer-row { gap: 3rem; padding-bottom: 2.5rem; }
.sax-footer p { font-size: .8125rem; }
.sax-footer .sax-brand img { width: 250px; }
.sax-footer .wp-block-navigation { font-size: .8125rem; }
.sax-footer-nav .wp-block-navigation__container { gap: 1.5rem; }
.sax-footer a { color: inherit; }
.sax-footer a:hover { color: #FF681F; }
.sax-footer-note { margin: 0; padding-top: 1.4rem; border-top: 1px solid #3b3e40; font-size: .6875rem!important; }
.sax-prose { padding: clamp(2rem, 6vw, 5rem) 1.375rem; }
.sax-prose > * { max-width: 760px; margin-inline: auto; }
.sax-prose > .alignwide { max-width: 1440px; }
.sax-prose > .alignfull { max-width: none; }
.sax-prose .wp-block-post-content > * + * { margin-block-start: 1.5rem; }
@media (max-width: 1100px) { .sax-header .wp-block-navigation__container { gap: 1rem; } .sax-brand img { width: 210px; } }
@media (max-width: 900px) {
 .sax-header .wp-block-navigation__responsive-container:not(.is-menu-open) { display: none; }
 .sax-header .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex; }
 .sax-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { gap: 1.25rem; }
}
@media (min-width: 901px) {
 .sax-header .wp-block-navigation__responsive-container-open:not(.always-shown) { display: none; }
 .sax-header .wp-block-navigation__responsive-container:not(.is-menu-open) { display: block; }
}
@media (max-width: 781px) {
 .sax-hero .wp-block-columns { gap: 1.75rem; }
 .sax-hero-title { font-size: clamp(3rem, 10vw, 4.75rem); }
 .sax-section .wp-block-columns { gap: 2rem; }
 .sax-services > .wp-block-columns:not(:first-child) { gap: 0; }
 .sax-hero-art img { max-height: 370px; object-fit: contain; }
 .sax-hero-art figcaption { margin-inline: 0; }
 .sax-project-art { max-width: 640px; }
 .sax-step-number { margin-bottom: 1.25rem; }
 .sax-cta .wp-block-buttons { justify-content: flex-start; }
 .sax-footer-row { display: block; }
 .sax-footer-nav { margin-top: 2rem; }
}
@media (max-width: 400px) { .sax-brand img { width: 185px; } .sax-header-row { gap: .75rem; } .sax-review-label { font-size: .5625rem; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
