/* Atlas RevOp / visual system */
:root {
  --paper:#f5f2eb;
  --ink:#242722;
  --muted:#66695f;
  --stone:#e9e5db;
  --line:#d5d2c8;
  --accent:#ae472e;
  --accent-light:#e1a48e;
  --dark:#252d28;
  --space:clamp(72px,8.5vw,132px);
  --gutter:clamp(22px,4.5vw,72px);
  --ease:cubic-bezier(.22,1,.36,1);
}
* {
  box-sizing:border-box;
}
html {
  scroll-behavior:smooth;
  scroll-padding-top:96px;
}
body {
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:Arial,Helvetica,sans-serif;
  font-size:17px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
button,input,textarea {
  font:inherit;
}
button,a {
  -webkit-tap-highlight-color:transparent;
}
a {
  color:inherit;
  text-decoration:none;
}
button {
  cursor:pointer;
}
img,svg {
  max-width:100%;
}
p,h1,h2,h3,figure {
  margin:0;
}
p+p {
  margin-top:22px;
}
h1,h2,h3 {
  font-weight:500;
  line-height:1.04;
  letter-spacing:-.055em;
}
h2 {
  font-size:clamp(42px,5.1vw,76px);
}
h3 {
  font-size:clamp(25px,2.6vw,38px);
  letter-spacing:-.04em;
}
p {
  text-wrap:pretty;
}
h1,h2,h3 {
  text-wrap:balance;
}
::selection {
  background:#ae472e;
  color:var(--paper);
}
:focus-visible {
  outline:3px solid var(--accent);
  outline-offset:5px;
}
.wrap {
  width:min(100% - var(--gutter)*2,1320px);
  margin-inline:auto;
}
.section {
  padding-block:var(--space);
}
.eyebrow,.meta {
  font-family:'Courier New',monospace;
  font-size:11px;
  font-weight:600;
  line-height:1.45;
  letter-spacing:.095em;
  text-transform:uppercase;
}
.eyebrow {
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:32px;
  color:var(--muted);
}
.serif {
  font-family:Georgia,'Times New Roman',serif;
  font-style:italic;
  font-weight:400;
  letter-spacing:-.065em;
}
.accent {
  color:var(--accent);
}
.dot {
  display:inline-block;
  width:7px;
  height:7px;
  background:var(--accent);
  border-radius:50%;
  flex-shrink:0;
}
.skip-link {
  position:fixed;
  z-index:1000;
  top:12px;
  left:12px;
  background:var(--ink);
  color:#fff;
  padding:12px 20px;
  transform:translateY(-150%);
}
.skip-link:focus {
  transform:none;
}
.button {
  min-height:54px;
  padding:15px 22px;
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:32px;
  background:var(--accent);
  color:#fff;
  border:1px solid var(--accent);
  font-size:14px;
  font-weight:600;
  line-height:1.4;
  transition:background .25s,transform .25s;
  max-width:100%;
}
.button span,.text-link span,.nav-cta span {
  display:inline-block;
  transition:transform .3s var(--ease);
}
.button:hover {
  background:#8f3823;
  border-color:#8f3823;
}
.button:hover span,.text-link:hover span,.nav-cta:hover span {
  transform:translate(3px,-3px);
}
.text-link {
  display:inline-flex;
  gap:20px;
  align-items:center;
  min-height:44px;
  font-size:14px;
  border-bottom:1px solid var(--ink);
  padding-block:8px;
}
.actions {
  display:flex;
  align-items:center;
  gap:26px;
  flex-wrap:wrap;
}
.fineprint {
  font-size:12px;
  color:var(--muted);
  margin-top:20px;
}
.large-copy {
  font-size:clamp(23px,2.4vw,32px);
  line-height:1.35;
  letter-spacing:-.03em;
}
.section-heading {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:64px;
  margin-bottom:70px;
}
.section-heading>p {
  max-width:340px;
  color:var(--muted);
}

/* Navigation */
.header {
  position:sticky;
  top:0;
  z-index:50;
  background:rgba(245,242,235,.97);
  border-bottom:1px solid var(--line);
}
.header-inner {
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:88px;
  gap:36px;
}
.brand {
  display:flex;
  align-items:center;
  gap:12px;
  flex-shrink:0;
  min-height:44px;
}
.brand svg {
  width:34px;
  height:34px;
}
.brand>span {
  font-size:36px;
  font-weight:600;
  line-height:.85;
  letter-spacing:-.07em;
}
.brand-sub {
  display:block;
  font-family:'Courier New',monospace;
  font-size:9px;
  letter-spacing:.3em;
  line-height:1;
  margin-top:8px;
  margin-left:2px;
}
#primary-nav {
  display:flex;
  align-items:center;
  gap:clamp(16px,2.2vw,34px);
}
#primary-nav>a {
  font-size:12px;
  min-height:44px;
  display:inline-flex;
  align-items:center;
  position:relative;
}
#primary-nav>a:not(.nav-cta):after {
  content:'';
  position:absolute;
  bottom:8px;
  left:0;
  width:100%;
  height:1px;
  background:var(--accent);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .3s;
}
#primary-nav>a:hover:after {
  transform:scaleX(1);
}
#primary-nav .nav-cta {
  border:1px solid var(--ink);
  padding:9px 17px;
  gap:24px;
  font-weight:600;
}
.menu-toggle {
  display:none;
}

/* Hero / connected pathway */
.hero {
  padding-top:36px;
}
.hero-top,.hero-bottom {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:24px;
}
.hero-top .eyebrow {
  margin:0;
}
.hero-meta {
  color:var(--muted);
  font-size:10px;
}
.hero-grid {
  display:grid;
  grid-template-columns:1.4fr 1fr;
  gap:7%;
  align-items:center;
  padding:60px 0 64px;
}
.hero h1 {
  font-size:clamp(64px,6.5vw,100px);
  line-height:.97;
  letter-spacing:-.065em;
  text-wrap:initial;
}
.hero-description {
  max-width:510px;
  font-size:18px;
  line-height:1.6;
  margin-top:30px;
  margin-bottom:28px;
}
.route-figure {
  margin-top:22px;
  align-self:center;
}
.figure-caption {
  display:flex;
  justify-content:space-between;
  gap:12px;
  border-top:1px solid var(--line);
  padding-top:18px;
  font-size:9px;
}
.route-svg {
  width:100%;
  display:block;
  margin:24px 0 4px;
}
.route-base {
  fill:none;
  stroke:#bfbcb1;
  stroke-width:1.5;
  stroke-dasharray:4 7;
}
.route-draw {
  fill:none;
  stroke:var(--accent);
  stroke-width:2;
  stroke-dasharray:1400;
  stroke-dashoffset:1400;
  animation:route-draw 2.2s var(--ease) .1s forwards;
}
.route-node circle {
  fill:var(--paper);
  stroke:var(--accent);
  stroke-width:2;
}
.route-node text {
  font-family:'Courier New',monospace;
  font-size:11px;
  letter-spacing:1px;
  fill:var(--muted);
}
.route-statement {
  font-family:Georgia,serif;
  font-style:italic;
  font-size:18px;
  fill:var(--ink);
}
.route-end {
  stroke:var(--accent);
  stroke-width:1;
  opacity:.55;
}
.route-figure figcaption {
  display:flex;
  align-items:center;
  gap:10px;
  font-size:12px;
  color:var(--muted);
}
.hero-bottom {
  padding:22px 0;
  border-top:1px solid var(--line);
}
.hero-bottom .meta {
  font-size:10px;
}
.scroll-link {
  font-size:12px;
  min-height:44px;
  display:flex;
  align-items:center;
  gap:26px;
}
.signal {
  background:var(--stone);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.signal-inner {
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:center;
  min-height:90px;
  font-size:15px;
}
.signal-inner .meta {
  font-size:10px;
  color:var(--muted);
  margin-right:24px;
}
.signal b {
  font-weight:400;
  color:#99998e;
}

/* Revenue leak story — sticky headline, layered progress */
.leaks {
  padding-bottom:0;
}
.leak-layout {
  display:grid;
  grid-template-columns:1.1fr 1fr;
  gap:9%;
  align-items:start;
}
.leak-intro {
  position:sticky;
  top:150px;
  padding-bottom:30px;
}
.leak-intro h2 {
  font-size:clamp(43px,4.7vw,69px);
  text-wrap:initial;
}
.leak-intro>p:not(.eyebrow):not(.meta) {
  max-width:350px;
  color:var(--muted);
  margin-top:30px;
}
.leak-progress {
  height:2px;
  max-width:300px;
  background:var(--line);
  margin-top:40px;
  position:relative;
}
.progress-fill {
  position:absolute;
  inset:0;
  background:var(--accent);
  transform:scaleX(.2);
  transform-origin:left;
  transition:transform .5s var(--ease);
}
.leak-counter {
  margin-top:15px;
  display:flex;
  gap:12px;
  color:var(--muted);
}
.leak-counter span {
  margin-left:auto;
  color:var(--accent);
}
.leak-counter {
  max-width:300px;
}
.leak-stages {
  padding-top:60px;
  padding-bottom:60px;
}
.leak-stage {
  background:var(--stone);
  border:1px solid var(--line);
  padding:36px;
  min-height:360px;
  margin-bottom:80px;
  position:relative;
  transition:transform .85s var(--ease),opacity .65s,background .5s,border-color .5s;
  transform-origin:center top;
}
.stage-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  margin-bottom:38px;
}
.stage-number {
  font-size:44px;
  letter-spacing:-.08em;
  color:#898a7f;
  font-weight:400;
  line-height:1;
}
.stage-head .meta {
  font-size:10px;
  color:var(--muted);
}
.leak-stage h3 {
  margin-bottom:20px;
}
.leak-stage>p {
  color:var(--muted);
  font-size:16px;
}
.stage-note {
  margin-top:30px;
  padding-top:20px;
  border-top:1px solid #cdc9bf;
  display:flex;
  gap:20px;
  font-size:12px;
}
.stage-note>span {
  color:var(--accent);
}
.leak-stage:last-child {
  background:var(--accent);
  color:white;
  margin-bottom:0;
  border-color:var(--accent);
}
.leak-stage:last-child p,.leak-stage:last-child .meta,.leak-stage:last-child .stage-number,.leak-stage:last-child .stage-note>span {
  color:#fff;
}
.leak-stage:last-child .stage-note {
  border-color:#cd806a;
}
.motion-enabled .leak-stage {
  opacity:.25;
  transform:translateY(65px) scale(.965);
}
.motion-enabled .leak-stage.is-active,.motion-enabled .leak-stage.is-past {
  opacity:1;
  transform:translateY(0) scale(1);
}
.motion-enabled .leak-stage.is-past {
  transform:translateY(-10px) scale(.98);
  opacity:.58;
}
.leak-conclusion {
  border-top:1px solid var(--line);
  padding:40px 0 60px;
  display:flex;
  gap:32px;
  align-items:center;
  justify-content:space-between;
}
.leak-conclusion .meta {
  max-width:110px;
  color:var(--muted);
}
.leak-conclusion>p {
  font-size:clamp(23px,2.5vw,36px);
  letter-spacing:-.04em;
  line-height:1.2;
}
.round-arrow {
  width:54px;
  height:54px;
  border:1px solid var(--line);
  border-radius:50%;
  display:grid;
  place-items:center;
  flex-shrink:0;
  transition:background .25s;
}
.round-arrow:hover {
  background:var(--stone);
}

/* Dark editorial transition */
.difference {
  background:var(--dark);
  color:var(--paper);
  position:relative;
}
.difference .eyebrow {
  color:#b9bdb3;
}
.difference-grid {
  display:grid;
  grid-template-columns:1.1fr 1fr;
  gap:9%;
}
.difference h2 {
  font-size:clamp(55px,7.1vw,104px);
}
.difference h2 .serif {
  color:var(--accent-light);
}
.difference-copy {
  padding-top:12px;
}
.difference-copy>p:not(.large-copy) {
  max-width:450px;
  color:#bfc3ba;
  margin-top:26px;
}
.difference-copy .text-link {
  margin-top:28px;
}
.light-link {
  border-color:#8d968c;
}
.principles {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  margin-top:90px;
  border-top:1px solid #4c554d;
}
.principles>div {
  padding:27px 24px 0 0;
}
.principles .meta {
  color:#a9b1a7;
  font-size:10px;
}
.principles p {
  margin-top:12px;
  font-size:20px;
  letter-spacing:-.025em;
}

/* System narrative */
.system-layout {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12%;
  align-items:start;
}
.system-map {
  position:sticky;
  top:130px;
  border:1px solid var(--line);
  background:var(--stone);
  padding:30px 36px;
}
.map-header {
  display:flex;
  justify-content:space-between;
  font-size:9px;
  color:var(--muted);
}
.map-track {
  margin:36px 0;
  position:relative;
}
.map-track:before,.map-fill {
  content:'';
  position:absolute;
  left:15px;
  top:24px;
  bottom:24px;
  width:1px;
  background:#babdb1;
}
.map-fill {
  background:var(--accent);
  transform-origin:top;
  transform:scaleY(0);
  transition:transform .55s var(--ease);
}
.map-node {
  display:flex;
  align-items:center;
  gap:26px;
  position:relative;
  padding:18px 0;
  color:#73776c;
  transition:color .35s,transform .45s var(--ease);
}
.map-node>span {
  width:32px;
  height:32px;
  border:1px solid #bfc2b7;
  border-radius:50%;
  background:var(--stone);
  display:grid;
  place-items:center;
  font-family:'Courier New',monospace;
  font-size:10px;
  transition:background .35s,border-color .35s,color .35s;
}
.map-node b {
  font-size:25px;
  font-weight:400;
  letter-spacing:-.04em;
}
.map-node i {
  margin-left:auto;
  width:5px;
  height:5px;
  border-radius:50%;
  background:currentColor;
  opacity:.3;
}
.map-node.is-active {
  color:var(--accent);
  transform:translateX(5px);
}
.map-node.is-active>span {
  background:var(--accent);
  border-color:var(--accent);
  color:white;
}
.map-node.is-active i {
  opacity:1;
}
.map-footer {
  display:flex;
  align-items:center;
  gap:20px;
  padding-top:22px;
  border-top:1px solid var(--line);
}
.map-footer svg {
  width:36px;
  height:36px;
  color:var(--accent);
}
.map-footer p {
  font-size:13px;
  line-height:1.4;
  color:var(--muted);
}
.system-step {
  padding:38px 0 60px;
  min-height:300px;
  border-top:1px solid var(--line);
}
.system-step .eyebrow {
  color:var(--accent);
  margin-bottom:22px;
}
.system-step>p:not(.eyebrow) {
  color:var(--muted);
  margin-top:24px;
  max-width:440px;
}
.system-flow {
  display:block;
  border-left:2px solid var(--accent);
  padding-left:14px;
  margin-top:28px;
  font-size:10px;
  color:var(--muted);
}

/* Supporting sections */
.process {
  background:var(--stone);
}
.process-grid {
  display:grid;
  grid-template-columns:repeat(4,1fr);
}
.process-item {
  border-top:1px solid #bfc2b6;
  padding:30px 26px 0 0;
}
.process-item:not(:first-child) {
  border-left:1px solid var(--line);
  padding-left:26px;
}
.process-number {
  font-family:Georgia,serif;
  font-style:italic;
  font-size:56px;
  color:#777d6e;
  line-height:1;
  display:block;
  margin-bottom:46px;
}
.process-item h3 {
  font-size:28px;
}
.process-label {
  font-size:13px;
  font-weight:600;
  margin-top:14px;
}
.process-item>p:last-child {
  font-size:14px;
  color:var(--muted);
  margin-top:14px;
}
.capability-layout {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12%;
}
.capability-intro>p:not(.eyebrow) {
  max-width:300px;
  margin-top:28px;
  color:var(--muted);
}
.capability-intro .text-link {
  margin-top:24px;
}
.service-row {
  border-top:1px solid var(--line);
  display:grid;
  grid-template-columns:35px 1fr;
  gap:22px;
  padding:28px 0;
}
.service-row>.meta {
  color:var(--muted);
  padding-top:2px;
}
.service-tag {
  display:block;
  font-size:9px;
  color:var(--accent);
  margin-bottom:12px;
}
.service-row h3 {
  font-size:25px;
}
.service-row p {
  font-size:15px;
  margin-top:14px;
  color:var(--muted);
}
.service-row:last-child {
  border-bottom:1px solid var(--line);
}
.outcomes {
  background:var(--dark);
  color:var(--paper);
}
.outcomes .eyebrow,.outcomes .section-heading>p {
  color:#bfc3ba;
}
.outcomes .serif {
  color:var(--accent-light);
}
.outcome-table {
  border-top:1px solid #62695e;
}
.outcome-table-head {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10%;
  padding:20px 0;
  color:#bfc3ba;
}
.outcome-row {
  position:relative;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10%;
  padding:28px 0;
  border-top:1px solid #465046;
}
.outcome-row p {
  font-size:clamp(19px,2.2vw,30px);
  letter-spacing:-.03em;
  line-height:1.3;
}
.outcome-row p:first-child {
  color:#aeb6ac;
}
.outcome-row>span {
  position:absolute;
  left:48%;
  top:27px;
  color:var(--accent-light);
  font-size:25px;
}
.measure-note {
  display:flex;
  justify-content:space-between;
  gap:30px;
  align-items:center;
  padding-top:35px;
  margin-top:15px;
  border-top:1px solid #62695e;
}
.measure-note .meta {
  font-size:9px;
  color:#bfc3ba;
}
.measure-note>p {
  font-size:12px;
  color:#bfc3ba;
}
.fit-layout,.faq-layout {
  display:grid;
  grid-template-columns:1.1fr 1fr;
  gap:9%;
}
.fit-copy {
  padding-top:40px;
}
.fit-copy ul {
  list-style:none;
  padding:0;
  margin:28px 0;
}
.fit-copy li {
  position:relative;
  border-top:1px solid var(--line);
  padding:17px 0 17px 24px;
  font-size:15px;
  color:var(--muted);
}
.fit-copy li:before {
  content:'↗';
  position:absolute;
  left:0;
  color:var(--accent);
}
.faq {
  padding-top:0;
}
.faq h2 {
  font-size:clamp(40px,4vw,58px);
}
.faq-item {
  border-top:1px solid var(--line);
}
.faq-item:last-child {
  border-bottom:1px solid var(--line);
}
.faq-item summary {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  cursor:pointer;
  list-style:none;
  padding:24px 0;
  font-size:16px;
  line-height:1.4;
  font-weight:500;
  min-height:72px;
}
.faq-item summary::-webkit-details-marker {
  display:none;
}
.faq-plus {
  width:16px;
  height:16px;
  position:relative;
  flex-shrink:0;
}
.faq-plus:before,.faq-plus:after {
  content:'';
  position:absolute;
  background:var(--accent);
  top:7px;
  left:0;
  width:16px;
  height:1px;
  transition:transform .25s;
}
.faq-plus:after {
  transform:rotate(90deg);
}
.faq-item[open] .faq-plus:after {
  transform:rotate(0);
}
.faq-answer p {
  color:var(--muted);
  font-size:15px;
  padding:0 30px 24px 0;
}
.faq-enhanced .faq-item .faq-answer {
  display:grid;
  grid-template-rows:0fr;
  transition:grid-template-rows .35s var(--ease);
}
.faq-enhanced .faq-item .faq-answer>div {
  overflow:hidden;
}
.faq-enhanced .faq-item.is-open .faq-answer {
  grid-template-rows:1fr;
}
.faq-enhanced .faq-item:not(.is-open) .faq-plus:after {
  transform:rotate(90deg);
}

/* Enquiry and footer */
.contact {
  background:var(--accent);
  color:var(--paper);
}
.contact-layout {
  display:grid;
  grid-template-columns:1.15fr 1fr;
  gap:12%;
}
.contact .eyebrow {
  color:#f6d3c5;
}
.contact h2 {
  font-size:clamp(47px,5.6vw,82px);
  text-wrap:initial;
}
.contact-copy>p:not(.eyebrow) {
  max-width:360px;
  margin-top:30px;
  color:#fff;
  line-height:1.65;
}
.contact-detail {
  border-top:1px solid #d58971;
  margin-top:50px;
  padding-top:24px;
  display:flex;
  justify-content:space-between;
  gap:24px;
  max-width:410px;
}
.contact-detail .meta {
  font-size:9px;
  max-width:130px;
}
.contact-detail>span:last-child {
  font-size:12px;
}
.form-panel {
  background:var(--paper);
  color:var(--ink);
  padding:34px 36px;
  align-self:start;
}
.form-heading {
  display:flex;
  justify-content:space-between;
  gap:20px;
  font-size:22px;
  letter-spacing:-.03em;
  margin-bottom:28px;
}
.field {
  margin-bottom:20px;
}
.field label {
  display:block;
  font-size:12px;
  font-weight:600;
  margin-bottom:7px;
}
.field input,.field textarea {
  width:100%;
  display:block;
  padding:10px 0;
  border:0;
  border-bottom:1px solid #a6ab9e;
  background:transparent;
  border-radius:0;
  color:var(--ink);
  font-size:16px;
  line-height:1.4;
}
.field textarea {
  resize:vertical;
  min-height:90px;
}
.field input:focus,.field textarea:focus {
  outline:0;
  border-color:var(--accent);
  box-shadow:0 2px 0 var(--accent);
}
.field [aria-invalid=true] {
  border-color:var(--accent);
}
.field-error {
  display:block;
  color:#942e20;
  font-size:12px;
  margin-top:7px;
}
.form-submit {
  width:100%;
  margin-top:3px;
}
.form-notice {
  font-size:10px;
  line-height:1.6;
  color:var(--muted);
  margin-top:16px;
}
.honeypot {
  position:absolute;
  left:-10000px;
  top:auto;
  width:1px;
  height:1px;
  overflow:hidden;
}
.form-status {
  padding:18px;
  border:1px solid var(--line);
  margin-bottom:22px;
  font-size:14px;
}
.form-status.error {
  border-color:var(--accent);
  color:#8b2e1e;
  background:#f4e1d9;
}
.form-status.success {
  border:0;
  padding:20px 0;
}
.form-status h3 {
  margin-top:18px;
  margin-bottom:20px;
}
.cream-button {
  background:var(--paper);
  border-color:var(--paper);
  color:var(--accent);
  margin-top:30px;
}
.cream-button:hover {
  background:var(--stone);
  border-color:var(--stone);
}
.footer {
  padding:60px 0 22px;
}
.footer-top {
  display:grid;
  grid-template-columns:1fr 1fr 1.2fr;
  gap:50px;
  padding-bottom:50px;
}
.footer-top .brand {
  align-self:start;
}
.footer-top>p {
  color:var(--muted);
  font-size:15px;
  line-height:1.5;
}
.footer-top nav {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px 24px;
  font-size:12px;
}
.footer-top nav a {
  min-height:32px;
  display:flex;
  align-items:center;
}
.footer a:hover {
  color:var(--accent);
}
.footer-bottom {
  border-top:1px solid var(--line);
  padding-top:20px;
  display:flex;
  justify-content:space-between;
  gap:20px;
  font-size:10px;
  color:var(--muted);
}
.footer-bottom>span:nth-child(2) {
  font-family:'Courier New',monospace;
  font-size:9px;
  letter-spacing:.08em;
}
.footer-bottom a {
  min-height:32px;
}

/* Enhancement only: readable content without JavaScript */
.motion-enabled .reveal {
  opacity:0;
  transform:translateY(32px);
  transition:opacity .75s var(--ease) var(--delay,0ms),transform .9s var(--ease) var(--delay,0ms);
}
.motion-enabled .reveal.is-visible {
  opacity:1;
  transform:none;
}
@keyframes route-draw {
  to {
    stroke-dashoffset:0;
  }
}

/* Tablet */
@media(min-width:900px) and (max-height:760px) {
  .leak-intro {
    top:110px;
  }
  .system-map {
    top:110px;
    padding:24px;
  }
  .map-track {
    margin:22px 0;
  }
  .map-node {
    padding:10px 0;
  }
  .map-node b {
    font-size:23px;
  }
  .map-footer {
    padding-top:15px;
  }
}
@media(max-width:1100px) {
  #primary-nav {
    gap:16px;
  }
  #primary-nav>a {
    font-size:11px;
  }
  .header-inner {
    gap:20px;
  }
  .hero-grid {
    gap:5%;
    grid-template-columns:1.35fr 1fr;
  }
  .hero h1 {
    font-size:clamp(61px,7.1vw,85px);
  }
  .hero .actions {
    gap:18px;
  }
  .hero .button {
    gap:22px;
    font-size:13px;
  }
  .hero .text-link {
    font-size:12px;
  }
  .leak-layout,.difference-grid,.system-layout,.capability-layout,.contact-layout {
    gap:7%;
  }
  .leak-stage {
    padding:28px;
  }
  .leak-intro h2 {
    font-size:clamp(42px,4.7vw,55px);
  }
  .section-heading {
    gap:40px;
  }
  .system-map {
    padding:26px;
  }
  .form-panel {
    padding:30px;
  }
  .process-item {
    padding-right:18px;
  }
  .process-item:not(:first-child) {
    padding-left:18px;
  }
}

/* Intentional mobile sequence; no fragile pinning */
@media(max-width:899px) {
  :root {
    --gutter:28px;
    --space:84px;
  }
  .header-inner {
    min-height:76px;
  }
  .brand>span {
    font-size:31px;
  }
  .brand svg {
    width:30px;
  }
  .menu-toggle {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    background:none;
    border:1px solid var(--line);
    padding:10px 14px;
    min-height:44px;
    color:var(--ink);
    font-size:12px;
  }
  .menu-icon {
    width:17px;
    height:12px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
  }
  .menu-icon i {
    display:block;
    height:1px;
    background:var(--ink);
    width:100%;
    transition:transform .25s;
  }
  .menu-toggle[aria-expanded=true] .menu-icon i:first-child {
    transform:translateY(5.5px) rotate(45deg);
  }
  .menu-toggle[aria-expanded=true] .menu-icon i:last-child {
    transform:translateY(-5.5px) rotate(-45deg);
  }
  #primary-nav {
    display:none;
    position:absolute;
    top:100%;
    left:0;
    right:0;
    padding:22px var(--gutter) 28px;
    background:var(--paper);
    border-bottom:1px solid var(--line);
    max-height:calc(100dvh - 76px);
    overflow-y:auto;
  }
  #primary-nav.is-open {
    display:flex;
    align-items:stretch;
    flex-direction:column;
    gap:0;
  }
  #primary-nav>a {
    font-size:17px;
    padding:12px 0;
    min-height:48px;
    border-bottom:1px solid var(--line);
  }
  #primary-nav .nav-cta {
    margin-top:20px;
    justify-content:space-between;
    padding:13px 18px;
    background:var(--ink);
    color:var(--paper);
  }
  .hero-meta {
    display:none;
  }
  .hero-grid {
    padding:45px 0;
    grid-template-columns:1.2fr 1fr;
    gap:30px;
  }
  .hero h1 {
    font-size:clamp(50px,7vw,69px);
  }
  .hero-description {
    font-size:16px;
    margin-top:26px;
  }
  .hero .actions {
    gap:14px;
  }
  .hero .button {
    font-size:12px;
    padding:14px 16px;
    gap:16px;
  }
  .route-node text {
    font-size:12px;
  }
  .hero-bottom .meta {
    max-width:200px;
  }
  .signal-inner {
    flex-wrap:wrap;
    justify-content:flex-start;
    gap:14px 22px;
    padding-block:24px;
    min-height:0;
    font-size:13px;
  }
  .signal-inner .meta {
    flex-basis:100%;
    margin-right:0;
  }
  .signal b {
    display:none;
  }
  .leak-layout {
    grid-template-columns:1fr 1fr;
    gap:35px;
  }
  .leak-intro {
    top:110px;
  }
  .leak-intro h2 {
    font-size:39px;
  }
  .leak-stage {
    padding:25px;
    min-height:350px;
    margin-bottom:48px;
  }
  .stage-head {
    gap:12px;
    margin-bottom:30px;
  }
  .stage-head .meta {
    font-size:9px;
  }
  .leak-stage h3 {
    font-size:28px;
  }
  .leak-stage>p {
    font-size:14px;
  }
  .stage-note {
    font-size:11px;
  }
  .leak-conclusion {
    gap:20px;
  }
  .leak-conclusion .meta {
    font-size:9px;
  }
  .leak-conclusion>p {
    font-size:25px;
  }
  .difference-grid {
    grid-template-columns:1fr 1fr;
    gap:40px;
  }
  .difference h2 {
    font-size:64px;
  }
  .difference-copy>p:not(.large-copy) {
    font-size:15px;
  }
  .principles {
    margin-top:60px;
  }
  .principles p {
    font-size:17px;
  }
  .section-heading {
    gap:35px;
    margin-bottom:48px;
  }
  .section-heading>p {
    max-width:270px;
    font-size:15px;
  }
  .system-layout {
    gap:40px;
  }
  .system-map {
    top:110px;
    padding:22px;
  }
  .map-node {
    gap:16px;
  }
  .map-node b {
    font-size:22px;
  }
  .map-header {
    font-size:8px;
  }
  .system-step h3 {
    font-size:29px;
  }
  .system-step>p:not(.eyebrow) {
    font-size:15px;
  }
  .process-grid {
    grid-template-columns:repeat(2,1fr);
    gap:38px 0;
  }
  .process-item:nth-child(3) {
    border-left:0;
    padding-left:0;
  }
  .process-number {
    margin-bottom:24px;
  }
  .capability-layout {
    gap:40px;
  }
  .capability-intro h2 {
    font-size:42px;
  }
  .service-row {
    grid-template-columns:20px 1fr;
    gap:14px;
  }
  .service-row h3 {
    font-size:23px;
  }
  .fit-layout,.faq-layout {
    gap:40px;
  }
  .fit h2 {
    font-size:42px;
  }
  .faq h2 {
    font-size:36px;
  }
  .contact-layout {
    gap:40px;
  }
  .contact h2 {
    font-size:51px;
  }
  .form-panel {
    padding:26px;
  }
  .contact-detail {
    flex-direction:column;
  }
  .footer-top {
    gap:30px;
  }
  .footer-bottom>span:nth-child(2) {
    display:none;
  }
}
@media(max-width:639px) {
  :root {
    --gutter:22px;
    --space:68px;
  }
  html {
    scroll-padding-top:90px;
  }
  .hero {
    padding-top:26px;
  }
  .eyebrow {
    font-size:10px;
    margin-bottom:26px;
  }
  .hero-top .eyebrow {
    font-size:9px;
  }
  .hero-grid {
    display:block;
    padding:35px 0 30px;
  }
  .hero h1 {
    font-size:clamp(53px,12.6vw,78px);
  }
  .hero-description {
    max-width:370px;
    font-size:16px;
    margin-top:27px;
  }
  .hero .button {
    font-size:13px;
    gap:25px;
  }
  .hero .actions {
    gap:14px 22px;
  }
  .fineprint {
    font-size:10px;
    max-width:310px;
  }
  .route-figure {
    margin:40px 0 0;
    border:1px solid var(--line);
    padding:16px;
    background:var(--stone);
  }
  .figure-caption {
    border-top:0;
    padding:0;
    font-size:8px;
  }
  .route-svg {
    max-height:320px;
    margin:16px auto 12px;
    overflow:visible;
  }
  .route-figure figcaption {
    font-size:10px;
  }
  .hero-bottom {
    padding:16px 0;
  }
  .hero-bottom .meta {
    font-size:8px;
    max-width:130px;
  }
  .scroll-link {
    font-size:10px;
    gap:12px;
  }
  .signal-inner {
    font-size:12px;
    gap:14px 24px;
    padding-block:22px;
  }
  .signal-inner .meta {
    font-size:9px;
  }
  .leak-layout {
    display:block;
  }
  .leak-intro {
    position:static;
    padding-bottom:0;
  }
  .leak-intro h2 {
    font-size:clamp(41px,10vw,55px);
  }
  .leak-intro>p:not(.eyebrow):not(.meta) {
    font-size:15px;
    margin-top:24px;
  }
  .leak-progress,.leak-counter {
    display:none;
  }
  .leak-stages {
    padding:35px 0 40px;
  }
  .leak-stage {
    min-height:0;
    padding:27px 25px;
    margin-bottom:18px;
  }
  .stage-head {
    margin-bottom:28px;
  }
  .stage-number {
    font-size:38px;
  }
  .leak-stage h3 {
    font-size:31px;
  }
  .leak-stage>p {
    font-size:15px;
  }
  .stage-note {
    margin-top:25px;
  }
  .motion-enabled .leak-stage {
    transform:translateY(32px);
    opacity:.3;
  }
  .motion-enabled .leak-stage.is-past {
    opacity:1;
    transform:none;
  }
  .leak-conclusion {
    padding:28px 0 38px;
    flex-wrap:wrap;
    gap:16px;
  }
  .leak-conclusion .meta {
    max-width:100%;
    flex-basis:100%;
  }
  .leak-conclusion>p {
    font-size:25px;
    max-width:calc(100% - 64px);
  }
  .round-arrow {
    width:44px;
    height:44px;
  }
  .difference-grid {
    display:block;
  }
  .difference h2 {
    font-size:clamp(59px,13vw,80px);
  }
  .difference-copy {
    margin-top:38px;
    padding:0;
  }
  .large-copy {
    font-size:26px;
  }
  .difference-copy>p:not(.large-copy) {
    font-size:16px;
  }
  .principles {
    grid-template-columns:1fr;
    margin-top:40px;
    border:0;
  }
  .principles>div {
    border-top:1px solid #4c554d;
    padding:20px 0;
  }
  .principles p {
    font-size:18px;
    margin-top:7px;
  }
  .section-heading {
    display:block;
    margin-bottom:38px;
  }
  .section-heading>p {
    margin-top:25px;
    max-width:340px;
    font-size:15px;
  }
  h2 {
    font-size:clamp(40px,10vw,57px);
  }
  .system-layout {
    display:block;
  }
  .system-map {
    display:none;
  }
  .system-step {
    min-height:0;
    padding:30px 0 34px;
  }
  .system-step h3 {
    max-width:320px;
    font-size:31px;
  }
  .system-step>p:not(.eyebrow) {
    margin-top:20px;
    font-size:15px;
  }
  .system-flow {
    margin-top:23px;
    font-size:9px;
  }
  .system-step:last-child {
    padding-bottom:0;
  }
  .process-grid {
    gap:30px 0;
  }
  .process-item {
    padding:24px 16px 0 0;
  }
  .process-item:not(:first-child) {
    padding-left:16px;
  }
  .process-item:nth-child(3) {
    padding-left:0;
  }
  .process-number {
    font-size:42px;
  }
  .process-item h3 {
    font-size:24px;
  }
  .process-label {
    font-size:11px;
    line-height:1.4;
  }
  .process-item>p:last-child {
    font-size:13px;
    line-height:1.55;
  }
  .capability-layout {
    display:block;
  }
  .capability-intro h2 {
    font-size:45px;
  }
  .capability-intro .text-link {
    margin-top:20px;
  }
  .service-list {
    margin-top:38px;
  }
  .service-row {
    padding:25px 0;
    grid-template-columns:25px 1fr;
    gap:15px;
  }
  .service-row h3 {
    font-size:25px;
  }
  .service-row p {
    font-size:15px;
  }
  .outcomes .section-heading {
    margin-bottom:30px;
  }
  .outcome-table-head {
    gap:12%;
    font-size:9px;
  }
  .outcome-row {
    gap:12%;
    padding:24px 0;
  }
  .outcome-row p {
    font-size:19px;
    line-height:1.35;
  }
  .outcome-row>span {
    left:47%;
    top:24px;
    font-size:18px;
  }
  .measure-note {
    display:block;
    padding-top:26px;
  }
  .measure-note p {
    margin-top:14px;
    font-size:11px;
    line-height:1.8;
  }
  .fit-layout,.faq-layout {
    display:block;
  }
  .fit h2 {
    font-size:44px;
  }
  .fit-copy {
    padding-top:34px;
  }
  .fit-copy li {
    font-size:15px;
  }
  .faq-list {
    margin-top:34px;
  }
  .faq h2 {
    font-size:41px;
  }
  .faq-item summary {
    font-size:15px;
    padding:22px 0;
  }
  .faq-answer p {
    font-size:14px;
    padding-right:10px;
  }
  .contact-layout {
    display:block;
  }
  .contact h2 {
    font-size:clamp(48px,11.6vw,68px);
  }
  .contact-copy>p:not(.eyebrow) {
    font-size:16px;
  }
  .contact-detail {
    flex-direction:row;
    margin-top:32px;
    padding-top:22px;
    max-width:100%;
  }
  .form-panel {
    margin-top:35px;
    padding:26px 23px;
  }
  .form-heading {
    font-size:21px;
  }
  .form-notice {
    font-size:11px;
  }
  .footer {
    padding-top:38px;
  }
  .footer-top {
    grid-template-columns:1fr 1fr;
    gap:26px 16px;
    padding-bottom:30px;
  }
  .footer-top>p {
    font-size:12px;
    justify-self:end;
    max-width:145px;
  }
  .footer-top nav {
    grid-column:1/-1;
    gap:8px 26px;
    padding-top:8px;
  }
  .footer-top nav a {
    min-height:36px;
  }
  .footer-bottom {
    font-size:9px;
  }
  .motion-enabled .reveal {
    transform:translateY(22px);
  }
}
@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto;
  }
  *,*:before,*:after {
    animation:none!important;
    transition:none!important;
  }
  .route-draw {
    stroke-dashoffset:0;
  }
  .motion-enabled .reveal,.motion-enabled .leak-stage {
    opacity:1!important;
    transform:none!important;
  }
  .leak-intro,.system-map {
    position:static;
  }
  .map-node.is-active {
    transform:none;
  }
}
@media print {
  .header,.route-figure,.menu-toggle,.contact,.hero-bottom {
    display:none;
  }
  .section {
    padding:30px 0;
  }
  .leak-intro,.system-map {
    position:static;
  }
  .motion-enabled .reveal,.motion-enabled .leak-stage {
    opacity:1;
    transform:none;
  }
  body {
    background:#fff;
    color:#000;
  }
  .difference,.outcomes {
    background:#fff;
    color:#000;
  }
  .difference p,.outcomes p {
    color:#444!important;
  }
  .wrap {
    width:100%;
  }
  .faq-answer {
    display:block!important;
  }
  .faq-item {
    break-inside:avoid;
  }
}

/* No-JavaScript navigation remains accessible. */
@media(max-width:899px) {
  html:not(.nav-enhanced) .header-inner {
    flex-wrap:wrap;
    padding-block:16px;
  }
  html:not(.nav-enhanced) .menu-toggle {
    display:none;
  }
  html:not(.nav-enhanced) #primary-nav {
    display:flex;
    position:static;
    flex-wrap:wrap;
    max-height:none;
    border:0;
    padding:0;
    gap:8px 20px;
    width:100%;
  }
  html:not(.nav-enhanced) #primary-nav>a {
    font-size:12px;
  }
  html:not(.nav-enhanced) .header {
    position:static;
  }
}
@media(max-width:639px) {
  .hero-ending {
    display:inline-block;
    font-size:.84em;
    white-space:nowrap;
  }
}
@media(max-width:639px) {
  .contact h2 .serif {
    display:inline-block;
    font-size:.84em;
    white-space:nowrap;
  }
}

/* Motion-only patch: connected full-section surfaces. Existing layout is retained. */
.story-surface {
  position:relative;
  z-index:var(--story-layer);
  transform:translate3d(0,var(--story-y,0px),0);
  background-color:var(--paper);
  isolation:isolate;
}
.story-surface.difference,.story-surface.outcomes { background-color:var(--dark); }
.story-surface.process { background-color:var(--stone); }
.story-surface::after {
  content:""; position:absolute; inset:0; pointer-events:none;
  background:var(--ink); opacity:var(--story-depth,0); z-index:5;
}
.story-surface h2 { translate:0 var(--story-title-y,0px); }
.story-surface .section-heading>p,.story-surface .difference-copy {
  translate:0 var(--story-copy-y,0px);
}
.story-tail { position:relative; z-index:7; background-color:var(--paper); }
.story-rail {
  position:fixed; inset:0 0 auto; height:3px; z-index:1000;
  pointer-events:none; opacity:0; background:var(--line);
  transition:opacity .2s;
}
.story-rail.is-running { opacity:1; }
.story-rail span { display:block; height:100%; background:var(--accent); transform:scaleX(0); transform-origin:left; }
@media(prefers-reduced-motion:reduce),print {
  .story-surface { transform:none!important; }
  .story-surface h2,.story-surface .section-heading>p,.story-surface .difference-copy { translate:none!important; }
  .story-surface::after,.story-rail { display:none!important; }
}
/* Contain transformed/inline-SVG overflow without creating a sticky scroll container. */
html,body { overflow-x:clip; }

/* ==========================================================
   Atlas RevOp / interior page system
   ========================================================== */
#primary-nav>a[aria-current="page"]:after{transform:scaleX(1)}
.inner-page main{overflow:clip}
.inner-hero{padding-top:clamp(58px,7vw,110px);padding-bottom:clamp(76px,8vw,126px);border-bottom:1px solid var(--line)}
.inner-hero-grid{display:grid;grid-template-columns:minmax(0,1.16fr) minmax(340px,.84fr);gap:clamp(54px,8vw,126px);align-items:end}
.inner-hero h1{font-size:clamp(62px,8.5vw,130px);max-width:920px;letter-spacing:-.075em;line-height:.87}
.inner-hero h1 .serif{font-style:italic;font-weight:400}
.inner-lede{max-width:650px;font-size:clamp(18px,1.55vw,23px);line-height:1.48;color:var(--muted);margin-top:34px}
.inner-hero .actions{margin-top:36px}
.inner-hero-figure{align-self:stretch;display:flex;flex-direction:column;justify-content:flex-end}
.signal-panel{position:relative;min-height:420px;border:1px solid var(--ink);padding:clamp(26px,3vw,42px);display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;background:linear-gradient(transparent,rgba(233,229,219,.35))}
.signal-panel:before,.signal-panel:after{content:"";position:absolute;pointer-events:none;border:1px solid var(--line);border-radius:50%}
.signal-panel:before{width:310px;height:310px;right:-84px;top:-72px}
.signal-panel:after{width:190px;height:190px;right:-24px;top:-12px}
.signal-orbit{position:absolute;width:9px;height:9px;border-radius:50%;background:var(--accent);right:84px;top:72px;box-shadow:0 0 0 8px rgba(174,71,46,.09)}
.signal-panel>p{margin-bottom:28px;color:var(--muted)}
.signal-line{display:grid;grid-template-columns:44px 1fr;gap:18px;align-items:center;padding:15px 0;border-top:1px solid var(--line)}
.signal-line span{font-family:'Courier New',monospace;font-size:10px;color:var(--accent);letter-spacing:.08em}
.signal-line b{font-size:17px;font-weight:500;letter-spacing:-.025em}
.figure-note{font-size:12px;display:flex;gap:9px;align-items:center;margin-top:14px;color:var(--muted)}

.page-kicker{font-family:'Courier New',monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.editorial-split{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(60px,10vw,170px);align-items:start}
.editorial-split .display-copy{font-size:clamp(45px,5.9vw,88px);line-height:.95;letter-spacing:-.065em;max-width:770px}
.editorial-split .body-stack{max-width:650px;padding-top:12px}
.editorial-split .body-stack>p:first-child{font-size:clamp(23px,2.35vw,34px);line-height:1.2;letter-spacing:-.045em;color:var(--ink)}
.editorial-split .body-stack>p:not(:first-child){color:var(--muted)}

.rule-list{margin-top:42px;border-top:1px solid var(--ink)}
.rule-row{display:grid;grid-template-columns:52px minmax(180px,.72fr) 1.35fr;gap:28px;padding:26px 0;border-bottom:1px solid var(--line);align-items:start}
.rule-row>span{font-family:'Courier New',monospace;font-size:10px;color:var(--accent);padding-top:5px}
.rule-row h3{font-size:clamp(24px,2.2vw,34px);margin:0}
.rule-row p{color:var(--muted);margin:0;max-width:660px}

.dark-editorial{background:var(--dark);color:var(--paper);position:relative;overflow:hidden}
.dark-editorial:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(245,242,235,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(245,242,235,.035) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to right,black,transparent 88%)}
.dark-editorial .wrap{position:relative;z-index:1}
.dark-editorial .eyebrow,.dark-editorial .page-kicker{color:var(--accent-light)}
.dark-editorial .section-heading>p,.dark-editorial .muted-light{color:#c6c8c2}
.dark-editorial .serif{color:var(--accent-light)}

.sequence{counter-reset:sequence;display:grid;grid-template-columns:repeat(12,1fr);margin-top:64px;border-top:1px solid rgba(245,242,235,.22)}
.sequence-item{counter-increment:sequence;grid-column:span 6;padding:40px clamp(12px,3vw,46px) 44px 0;border-bottom:1px solid rgba(245,242,235,.16);min-height:260px;position:relative}
.sequence-item:nth-child(even){padding-left:clamp(26px,4vw,64px);border-left:1px solid rgba(245,242,235,.16)}
.sequence-item:before{content:"0" counter(sequence);font-family:'Courier New',monospace;color:var(--accent-light);font-size:11px;letter-spacing:.12em}
.sequence-item h3{margin-top:42px;font-size:clamp(28px,3vw,46px)}
.sequence-item p{max-width:520px;color:#c6c8c2;margin-top:15px}

.framework{display:grid;grid-template-columns:290px minmax(0,1fr);gap:clamp(46px,8vw,120px);align-items:start}
.framework-index{position:sticky;top:132px;border-top:1px solid var(--ink)}
.framework-index a{display:flex;justify-content:space-between;gap:20px;padding:17px 0;border-bottom:1px solid var(--line);font-size:13px;color:var(--muted)}
.framework-index a span{font-family:'Courier New',monospace;font-size:10px;color:var(--accent)}
.framework-stack{border-top:1px solid var(--ink)}
.framework-card{display:grid;grid-template-columns:90px .75fr 1.2fr;gap:clamp(20px,4vw,70px);padding:clamp(38px,5vw,74px) 0;border-bottom:1px solid var(--line);align-items:start}
.framework-card .num{font-family:'Courier New',monospace;color:var(--accent);font-size:11px}
.framework-card h3{font-size:clamp(34px,4vw,61px)}
.framework-card .framework-copy>p{font-size:18px;color:var(--muted);max-width:620px}
.framework-card .micro-flow{display:inline-flex;margin-top:26px;border:1px solid var(--line);padding:10px 12px;font-family:'Courier New',monospace;font-size:10px;letter-spacing:.08em;color:var(--muted)}

.matrix{border-top:1px solid var(--ink)}
.matrix-head,.matrix-row{display:grid;grid-template-columns:1.1fr .85fr 1.35fr;gap:34px;align-items:start}
.matrix-head{padding:14px 0;color:var(--muted);font-family:'Courier New',monospace;font-size:10px;letter-spacing:.12em}
.matrix-row{padding:30px 0;border-top:1px solid var(--line)}
.matrix-row h3{font-size:clamp(25px,2.5vw,37px)}
.matrix-row .matrix-label{font-family:'Courier New',monospace;font-size:10px;color:var(--accent);letter-spacing:.1em;text-transform:uppercase;padding-top:8px}
.matrix-row p{color:var(--muted);margin:0}

.tension-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink);border-left:1px solid var(--line)}
.tension-card{padding:clamp(28px,3vw,44px);min-height:340px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between}
.tension-card .page-kicker{color:var(--accent)}
.tension-card h3{font-size:clamp(30px,3.25vw,49px);margin-top:50px}
.tension-card p{color:var(--muted);margin-top:20px}

.quote-panel{display:grid;grid-template-columns:.7fr 1.3fr;gap:clamp(50px,9vw,140px);align-items:end}
.quote-panel blockquote{font-size:clamp(42px,6vw,88px);line-height:.95;letter-spacing:-.065em;margin:0;max-width:980px}
.quote-panel blockquote em{font-family:Georgia,'Times New Roman',serif;font-weight:400;color:var(--accent);font-style:italic}
.quote-panel .quote-aside{max-width:330px;color:var(--muted)}

.closing-cta{border-top:1px solid var(--line);padding-block:clamp(84px,10vw,150px)}
.closing-cta-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:clamp(40px,7vw,100px);align-items:end}
.closing-cta h2{font-size:clamp(56px,8vw,118px);line-height:.88;letter-spacing:-.075em}
.closing-cta .cta-side{padding-bottom:10px}
.closing-cta .cta-side p{color:var(--muted);max-width:420px;margin-bottom:28px}

.process-timeline{border-top:1px solid var(--ink)}
.timeline-row{display:grid;grid-template-columns:130px minmax(240px,.8fr) 1.2fr;gap:clamp(24px,6vw,90px);padding:clamp(42px,5vw,70px) 0;border-bottom:1px solid var(--line);align-items:start}
.timeline-row .stage-num{font-family:'Courier New',monospace;color:var(--accent);font-size:11px;letter-spacing:.1em}
.timeline-row h3{font-size:clamp(33px,4vw,60px)}
.timeline-row .timeline-copy{max-width:650px}
.timeline-row .timeline-copy>p:first-child{font-size:20px;color:var(--ink);margin-bottom:16px}
.timeline-row .timeline-copy>p:not(:first-child){color:var(--muted)}

.operating-principles{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(245,242,235,.22);border-left:1px solid rgba(245,242,235,.14)}
.operating-principle{min-height:310px;padding:34px;border-right:1px solid rgba(245,242,235,.14);border-bottom:1px solid rgba(245,242,235,.14)}
.operating-principle span{font-family:'Courier New',monospace;color:var(--accent-light);font-size:10px}
.operating-principle h3{font-size:clamp(27px,2.6vw,40px);margin-top:70px}
.operating-principle p{color:#c6c8c2;font-size:15px;margin-top:18px}

.contact-page .inner-hero{padding-bottom:70px}
.contact-direct{display:grid;grid-template-columns:minmax(0,.82fr) minmax(420px,1.18fr);gap:clamp(58px,10vw,150px);align-items:start}
.contact-context{position:sticky;top:130px}
.contact-context h2{font-size:clamp(44px,5.6vw,80px)}
.contact-context>p{color:var(--muted);max-width:540px;margin-top:25px}
.contact-context .contact-checks{margin-top:44px;border-top:1px solid var(--ink)}
.contact-checks div{display:grid;grid-template-columns:34px 1fr;gap:16px;padding:17px 0;border-bottom:1px solid var(--line);font-size:14px}
.contact-checks span{font-family:'Courier New',monospace;color:var(--accent);font-size:10px;padding-top:4px}
.contact-page .form-panel{background:var(--stone);padding:clamp(30px,4vw,58px)}
.contact-page .field input,.contact-page .field textarea{background:transparent}

.micro-nav{display:flex;flex-wrap:wrap;gap:10px;margin-top:34px}
.micro-nav a{border:1px solid var(--line);padding:8px 12px;font-family:'Courier New',monospace;font-size:10px;letter-spacing:.07em;color:var(--muted)}

@media(max-width:1180px){
  .inner-hero-grid{grid-template-columns:1.2fr .8fr;gap:50px}.inner-hero h1{font-size:clamp(62px,8vw,100px)}
  .operating-principles{grid-template-columns:repeat(2,1fr)}
  .framework{grid-template-columns:230px minmax(0,1fr)}
}
@media(max-width:1020px){
  .inner-hero-grid,.editorial-split,.quote-panel,.closing-cta-grid,.contact-direct{grid-template-columns:1fr}
  .inner-hero-figure{max-width:720px}.signal-panel{min-height:330px}
  .framework{grid-template-columns:1fr}.framework-index{position:static;display:flex;gap:10px;overflow:auto;border:0;padding-bottom:12px}.framework-index a{white-space:nowrap;border:1px solid var(--line);padding:10px 12px}.framework-index a span{display:none}
  .tension-grid{grid-template-columns:1fr 1fr}.contact-context{position:static}
  .sequence-item{grid-column:span 12}.sequence-item:nth-child(even){padding-left:0;border-left:0}
}
@media(max-width:760px){
  .inner-hero{padding-top:48px}.inner-hero h1{font-size:clamp(53px,16vw,78px)}.inner-lede{font-size:18px}.signal-panel{min-height:300px}
  .rule-row,.framework-card,.matrix-head,.matrix-row,.timeline-row{grid-template-columns:1fr}.rule-row{gap:12px}.rule-row>span{padding:0}.framework-card{gap:15px}.framework-card .num{margin-bottom:5px}.matrix-head{display:none}.matrix-row{gap:10px}.timeline-row{gap:12px}
  .tension-grid{grid-template-columns:1fr}.tension-card{min-height:270px}.operating-principles{grid-template-columns:1fr}.operating-principle{min-height:250px}
  .quote-panel blockquote{font-size:clamp(42px,13vw,67px)}.closing-cta h2{font-size:clamp(52px,15vw,78px)}
  .contact-page .form-panel{margin-inline:calc(var(--gutter) * -.25)}
}
@media(prefers-reduced-motion:reduce){.signal-orbit{animation:none!important}}

/* ==========================================================
   Final production polish / interior page signatures
   Each page keeps the Atlas system but gets a distinct visual rhythm.
   ========================================================== */
.inner-page{--page-accent:var(--accent);--page-tint:rgba(174,71,46,.055)}
.inner-page .inner-hero{position:relative;isolation:isolate;background:
  radial-gradient(circle at 78% 18%,var(--page-tint),transparent 28%),
  linear-gradient(180deg,rgba(255,255,255,.16),transparent 60%)}
.inner-page .inner-hero:before{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background-image:
  linear-gradient(rgba(36,39,34,.032) 1px,transparent 1px),
  linear-gradient(90deg,rgba(36,39,34,.032) 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(to bottom,black,transparent 82%)}
.inner-page .signal-panel{background-color:rgba(255,255,255,.16);box-shadow:0 26px 80px rgba(36,39,34,.055)}
.inner-page .signal-panel:before,.inner-page .signal-panel:after{transition:transform .8s var(--ease),opacity .8s var(--ease)}
.inner-page .signal-panel:hover:before{transform:translate(-14px,12px) scale(1.04)}
.inner-page .signal-panel:hover:after{transform:translate(10px,-8px) scale(.96)}
.inner-page .signal-line{position:relative;transition:padding-left .35s var(--ease),background .35s}
.inner-page .signal-line:after{content:"";position:absolute;left:0;bottom:-1px;width:0;height:1px;background:var(--page-accent);transition:width .45s var(--ease)}
.inner-page .signal-line:hover{padding-left:9px;background:rgba(255,255,255,.2)}
.inner-page .signal-line:hover:after{width:100%}

/* page 01: leak / fracture */
.page-fix{--page-tint:rgba(174,71,46,.085)}
.page-fix .signal-panel{background-image:linear-gradient(135deg,transparent 0 44%,rgba(174,71,46,.08) 44% 45%,transparent 45% 100%)}
.page-fix .signal-panel:after{border-radius:0;width:220px;height:1px;right:-8px;top:78px;transform:rotate(-23deg);border:0;background:var(--accent);opacity:.55}

/* page 02: connected system / grid */
.page-system{--page-tint:rgba(80,105,91,.09)}
.page-system .signal-panel{background-image:linear-gradient(rgba(36,39,34,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(36,39,34,.055) 1px,transparent 1px);background-size:36px 36px}
.page-system .signal-orbit{box-shadow:0 0 0 9px rgba(174,71,46,.08),0 0 0 22px rgba(174,71,46,.035)}

/* page 03: process / directional path */
.page-process{--page-tint:rgba(128,92,54,.075)}
.page-process .signal-panel:before{width:420px;height:420px;right:-220px;top:-160px;border-radius:0;transform:rotate(36deg)}
.page-process .signal-panel:after{width:290px;height:290px;right:-155px;top:-75px;border-radius:0;transform:rotate(36deg)}

/* page 04: capabilities / modules */
.page-capabilities{--page-tint:rgba(89,92,126,.075)}
.page-capabilities .signal-panel{background-image:linear-gradient(90deg,transparent 49.7%,rgba(36,39,34,.07) 50%,transparent 50.3%),linear-gradient(transparent 49.7%,rgba(36,39,34,.07) 50%,transparent 50.3%)}
.page-capabilities .signal-panel:before,.page-capabilities .signal-panel:after{border-radius:0}

/* page 05: outcomes / target */
.page-outcomes{--page-tint:rgba(74,108,96,.075)}
.page-outcomes .signal-panel:before{width:360px;height:360px;right:-120px;top:-92px}
.page-outcomes .signal-panel:after{width:240px;height:240px;right:-60px;top:-32px;box-shadow:0 0 0 44px rgba(36,39,34,.018)}

/* page 06: why atlas / compass */
.page-why{--page-tint:rgba(105,83,65,.07)}
.page-why .signal-panel{background-image:linear-gradient(45deg,transparent 49.85%,rgba(36,39,34,.06) 50%,transparent 50.15%),linear-gradient(-45deg,transparent 49.85%,rgba(36,39,34,.06) 50%,transparent 50.15%)}
.page-why .signal-panel:before{width:330px;height:330px;right:-95px;top:-82px}

/* page 07: contact / coordinate field */
.page-contact{--page-tint:rgba(174,71,46,.06)}
.page-contact .signal-panel{background-image:radial-gradient(circle,rgba(36,39,34,.12) 1px,transparent 1.2px);background-size:26px 26px}
.page-contact .form-panel{box-shadow:0 30px 90px rgba(36,39,34,.07);border:1px solid rgba(36,39,34,.08)}

/* Editorial hover polish */
.framework-card,.timeline-row,.rule-row,.matrix-row,.sequence-item,.tension-card,.operating-principle{transition:background .35s var(--ease),transform .35s var(--ease)}
.framework-card:hover,.timeline-row:hover,.rule-row:hover,.matrix-row:hover{background:rgba(255,255,255,.24)}
.tension-card:hover{background:rgba(255,255,255,.22);transform:translateY(-2px)}
.dark-editorial .sequence-item:hover,.dark-editorial .operating-principle:hover{background:rgba(255,255,255,.035)}

/* Active nav marker */
#primary-nav>a[aria-current="page"]{color:var(--accent);font-weight:700}

@media(max-width:760px){
  .inner-page .inner-hero:before{background-size:40px 40px}
  .inner-page .signal-panel:hover:before,.inner-page .signal-panel:hover:after{transform:none}
  .inner-page .signal-line:hover{padding-left:0}
}
