/* AC35 — experience-level polish. Browser-native, no generated visual target. */
:root{
  --ac35-ink:#0a1b1e;
  --ac35-ink-soft:#13272a;
  --ac35-paper:#fbf8f2;
  --ac35-paper-deep:#f4eee5;
  --ac35-brass:#a77746;
  --ac35-brass-light:#cfab78;
  --ac35-line:rgba(10,27,30,.14);
  --ac35-line-strong:rgba(10,27,30,.24);
  --ac35-shadow:0 22px 70px rgba(14,24,25,.08);
}

/* Brand chrome: product feels intentional before the first question. */
body.acx-product-page .site-header{
  position:relative;
  background:rgba(251,248,242,.965);
  border-bottom:1px solid rgba(10,27,30,.11);
  box-shadow:0 10px 30px rgba(10,27,30,.028);
}
body.acx-product-page .site-header:before{
  content:"";position:absolute;left:0;right:0;top:0;height:2px;
  background:linear-gradient(90deg,transparent 0,rgba(167,119,70,.55) 18%,rgba(167,119,70,.2) 48%,transparent 86%);
}
body.acx-product-page .site-header__inner{max-width:1418px;min-height:82px}
body.acx-product-page .site-brand__wordmark strong{letter-spacing:.018em}
body.acx-product-page .site-header__cta{padding-left:22px;padding-right:20px;box-shadow:0 6px 18px rgba(10,27,30,.08)}

/* Full product canvas: keep the legal journey above the fold, footer below it. */
.acx-product{
  position:relative;
  min-height:calc(100vh - 82px);
  background:
    radial-gradient(circle at 69% 13%,rgba(188,145,91,.105),transparent 29%),
    radial-gradient(circle at 43% 77%,rgba(188,145,91,.038),transparent 27%),
    linear-gradient(180deg,#fcfaf6 0%,#f7f1e8 100%);
}
.acx-product:before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.42;
  background:
    linear-gradient(90deg,transparent 0 19.8%,rgba(10,27,30,.018) 19.9% 20%,transparent 20.1% 100%),
    repeating-linear-gradient(0deg,rgba(10,27,30,.012) 0 1px,transparent 1px 7px);
  mix-blend-mode:multiply;
}
.acx-frame{
  position:relative;z-index:1;max-width:1448px;
  grid-template-columns:316px minmax(0,1fr);
  min-height:calc(100vh - 82px);
  border-color:rgba(10,27,30,.14);
  box-shadow:var(--ac35-shadow);
}

/* Case rail: more like a dossier spine, less like a generic dark sidebar. */
.acx-case-rail{
  min-height:calc(100vh - 82px);
  padding:46px 38px 34px;
  background:
    radial-gradient(circle at 28% 88%,rgba(207,171,120,.07),transparent 28%),
    linear-gradient(162deg,#0c181a 0%,#112225 64%,#0c1719 100%);
}
.acx-case-rail:before{height:340px;right:-88px;bottom:-115px;border-color:rgba(207,171,120,.22)}
.acx-case-rail:after{left:-62px;bottom:98px;width:256px;height:256px;border-color:rgba(255,255,255,.045)}
.acx-case-rail h1{font-size:42px;line-height:.98;max-width:235px;letter-spacing:-.045em}
.acx-rail-back{margin-bottom:70px;font-size:11px;letter-spacing:.04em}
.acx-rail-eyebrow{margin-bottom:15px;font-size:9px;letter-spacing:.22em}
.acx-rail-lead{max-width:228px;font-size:12.5px;line-height:1.72;color:rgba(255,255,255,.64)}
.acx-rail-rule{width:58px;margin-bottom:30px;background:linear-gradient(90deg,var(--ac35-brass-light),rgba(207,171,120,.15))}
.acx-live-file{gap:10px}
.acx-live-file-header{padding-bottom:12px;margin-bottom:2px;border-bottom:1px solid rgba(255,255,255,.11)}
.acx-live-file-header span{font-size:7px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.42)}
.acx-live-file-header strong{font:500 18px var(--acx-serif);color:#d6b580}
.acx-live-row{position:relative;padding:10px 0 11px;border-bottom:1px solid rgba(255,255,255,.085)}
.acx-live-row.is-latest{background:linear-gradient(90deg,rgba(207,171,120,.09),transparent);margin-left:-12px;margin-right:-12px;padding-left:12px;padding-right:12px}
.acx-live-row.is-latest:before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:2px;background:#cda871}
.acx-live-row dd{font-size:10.5px}
.acx-rail-trust{padding-top:32px;max-width:228px;font-size:9.5px;line-height:1.55}
.acx-case-rail{position:relative}
@media(min-width:1101px){.acx-case-rail{position:sticky;top:82px;align-self:start}}

/* Matter map: architectural and calm, not a software stepper. */
.acx-stage{background:rgba(251,248,242,.84)}
.acx-journey{
  padding:17px 46px 15px;
  border-bottom:1px solid rgba(10,27,30,.13);
  background:rgba(255,253,249,.56);
}
.acx-journey-meta{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.acx-journey-meta span{font-size:7px;letter-spacing:.22em;text-transform:uppercase;color:#866647;font-weight:700}
.acx-journey-meta strong{font:500 10px var(--acx-sans);letter-spacing:.14em;color:#9f7b55}
.acx-journey-track{position:relative;display:grid;grid-template-columns:repeat(5,1fr);gap:0}
.acx-journey-track:before{left:14px;right:14px;top:15px;height:1px;background:linear-gradient(90deg,rgba(167,119,70,.52),rgba(10,27,30,.13) 28%,rgba(10,27,30,.13))}
.acx-journey-item{min-height:42px;gap:10px;padding-right:12px}
.acx-journey-item:after{top:0;left:38px;font-size:6px;letter-spacing:.13em}
.acx-journey-item em{font-size:7px;letter-spacing:.13em;margin-top:11px}
.acx-journey-glyph{width:31px;height:31px;border-color:rgba(10,27,30,.15);box-shadow:0 4px 14px rgba(10,27,30,.028)}
.acx-journey-item.is-active .acx-journey-glyph{box-shadow:0 0 0 5px rgba(167,119,70,.07),0 8px 20px rgba(10,27,30,.08)}

/* Workspace hierarchy: larger reading scale + stronger editorial composition. */
.acx-workspace{min-height:720px}
.acx-question-layout{
  position:relative;
  grid-template-columns:minmax(0,1fr) 318px;
  gap:50px;
  padding:56px 54px 58px;
  min-height:710px;
}
.acx-question-layout:before{
  content:attr(data-stage);position:absolute;right:338px;top:27px;
  font:500 104px/1 var(--acx-serif);letter-spacing:-.06em;color:rgba(167,119,70,.045);pointer-events:none;
}
.acx-main-question{max-width:760px}
.acx-stage-mark{margin-bottom:20px;font-size:8px;letter-spacing:.20em}
.acx-stage-glyph{width:25px;height:25px;border-color:rgba(167,119,70,.34);box-shadow:0 5px 16px rgba(167,119,70,.05)}
.acx-main-question h2{font-size:53px;line-height:.99;max-width:750px;margin-bottom:18px}
.acx-question-intro{font-size:14px;line-height:1.7;max-width:650px;margin-bottom:36px;color:#637174}
.acx-decision-caption{padding:0 0 10px;border-bottom:0;margin-bottom:0;font-size:7px;letter-spacing:.17em}
.acx-decision-caption strong{font-size:6.5px;letter-spacing:.15em;color:#9d744c}

/* Answer rail: give each row typographic presence without turning it into a card. */
.acx-choice-list{border-top:1px solid var(--ac35-line-strong);border-bottom:1px solid var(--ac35-line-strong)}
.acx-choice{position:relative;min-height:61px;padding:14px 6px 14px 0;border-top:1px solid rgba(10,27,30,.16)}
.acx-choice:first-child{border-top:0}
.acx-choice:before{content:"";position:absolute;left:-1px;top:12px;bottom:12px;width:2px;background:transparent;transition:background .18s ease,transform .18s ease}
.acx-choice:hover:before,.acx-choice:focus-visible:before{background:var(--ac35-brass);transform:scaleY(1.08)}
.acx-choice:hover,.acx-choice:focus-visible{background:linear-gradient(90deg,rgba(167,119,70,.075),rgba(167,119,70,.014) 60%,transparent);padding-left:9px}
.acx-choice-label{font-size:18px;line-height:1.28;letter-spacing:-.018em}
.acx-choice-index{font-size:6.5px;color:#a77a50}
.acx-choice-glyph{width:33px;height:33px;border-color:rgba(10,27,30,.13);background:rgba(255,253,249,.76);box-shadow:0 5px 14px rgba(10,27,30,.025)}
.acx-choice-arrow{width:27px;height:27px;border-color:rgba(167,119,70,.22);display:grid;place-items:center}
.acx-nav{margin-top:21px;border-top:0}
.acx-nav button{font-size:9px;letter-spacing:.02em}

/* Legal context becomes a deliberate editorial margin. */
.acx-context{position:relative;padding:7px 0 0 31px;border-left:1px solid rgba(10,27,30,.15)}
.acx-context:before{content:"";position:absolute;left:-1px;top:0;width:1px;height:86px;background:linear-gradient(180deg,var(--ac35-brass),transparent)}
.acx-context-kicker{margin-bottom:18px}
.acx-context-kicker>span{font-size:7px;letter-spacing:.19em}
.acx-context-kicker>b{font:500 24px var(--acx-serif);color:#b6936c;opacity:.9}
.acx-context h3{font-size:29px;line-height:1.06;margin-bottom:18px}
.acx-context p{font-size:12.5px;line-height:1.74;margin-bottom:22px;color:#647174}
.acx-context-note{position:relative;padding:20px 0 0 26px;font-size:10.5px;line-height:1.62;border-top:1px solid rgba(10,27,30,.14)}
.acx-context-note strong{font-size:8px;letter-spacing:.14em;margin-bottom:9px}
.acx-signature{margin-top:42px;font-size:15px;color:#8b7158}
@media(min-width:1101px){.acx-context{position:sticky;top:122px}}

/* Document stage: make the document itself a visual moment. */
.acx-document-aperture{
  position:relative;
  grid-template-columns:158px minmax(0,1fr);
  gap:30px;
  margin:8px 0 30px;
  padding:26px 24px 26px 14px;
  border:1px solid rgba(10,27,30,.12);
  background:
    linear-gradient(135deg,rgba(167,119,70,.055),transparent 40%),
    rgba(255,253,249,.56);
  box-shadow:0 18px 42px rgba(10,27,30,.035);
}
.acx-document-aperture:before,.acx-document-aperture:after{content:"";position:absolute;width:18px;height:18px;border-color:rgba(167,119,70,.48)}
.acx-document-aperture:before{left:-1px;top:-1px;border-left:1px solid;border-top:1px solid}
.acx-document-aperture:after{right:-1px;bottom:-1px;border-right:1px solid;border-bottom:1px solid}
.acx-doc-visual{position:relative;display:grid;place-items:center;min-height:148px}
.acx-doc-visual:before{content:"DOSAR";position:absolute;left:-3px;top:7px;font:700 6px var(--acx-sans);letter-spacing:.23em;color:#a77a50;writing-mode:vertical-rl;transform:rotate(180deg)}
.acx-doc-stack{width:104px;height:132px}
.acx-doc-stack span{box-shadow:0 12px 30px rgba(10,27,30,.07)}
.acx-doc-stack span:nth-child(3){font-size:11px;line-height:1.35;background:linear-gradient(180deg,#fffdf9,#f8f1e6)}
.acx-doc-copy strong{font-size:21px;margin-bottom:8px}
.acx-doc-copy>span{font-size:11.5px;line-height:1.65}
.acx-doc-targets{margin-top:14px;display:flex;flex-wrap:wrap;gap:7px}
.acx-doc-targets span{font:600 6px var(--acx-sans);letter-spacing:.12em;text-transform:uppercase;padding:6px 9px;border:1px solid rgba(167,119,70,.18);background:#fffaf1;color:#7b664f}

/* Result: closer to a professional matter sheet than a SaaS confirmation page. */
.acx-result-layout{padding:50px 54px 56px;min-height:710px}
.acx-result-head{position:relative;grid-template-columns:minmax(0,1fr) 286px;gap:46px;padding-bottom:34px}
.acx-result-head:after{content:"AC";position:absolute;right:322px;top:-9px;font:500 84px var(--acx-serif);color:rgba(167,119,70,.045);letter-spacing:-.06em}
.acx-status{font-size:7px;letter-spacing:.18em;margin-bottom:16px}
.acx-result-head h2{font-size:47px;line-height:1.01;max-width:760px;margin-bottom:15px}
.acx-result-head p{font-size:12.5px;line-height:1.72}
.acx-result-seal{position:relative;padding:4px 0 0 58px;border-left:0;font-size:10.5px;line-height:1.62}
.acx-result-seal:before{content:"";position:absolute;left:0;top:0;bottom:0;width:1px;background:linear-gradient(180deg,var(--ac35-brass),rgba(10,27,30,.11))}
.acx-seal-icon{left:18px;top:5px;width:26px;height:26px;background:rgba(167,119,70,.045)}
.acx-result-seal strong{font-size:18px;margin-bottom:7px}
.acx-result-route{margin-top:0;background:rgba(255,253,249,.66);border-bottom:1px solid rgba(10,27,30,.15);border-top:0}
.acx-result-route span{padding-top:14px;padding-bottom:14px}
.acx-result-body{background:rgba(255,253,249,.25)}
.acx-ledger,.acx-next{padding-top:31px;padding-bottom:33px}
.acx-ledger-row{padding-top:11px;padding-bottom:11px}
.acx-ledger dd{font-size:14px}
.acx-next-columns strong{font-size:17px}
.acx-next li{font-size:10.5px;line-height:1.55}
.acx-result-cta{margin-top:0;padding-top:27px;align-items:center}
.acx-result-cta-copy strong{font-size:22px}
.acx-result-cta-copy span{font-size:10px;line-height:1.55}
.acx-primary{min-height:44px;padding:13px 22px;background:linear-gradient(180deg,#102427,#0c1b1e);box-shadow:0 10px 26px rgba(10,27,30,.12)}
.acx-primary:hover{box-shadow:0 14px 34px rgba(10,27,30,.17)}

/* Principles: quieter, less component-y. */
.acx-system-strip{position:relative;z-index:2;max-width:1448px;margin:0 auto;background:#f9f4eb;border-left:1px solid var(--ac35-line);border-right:1px solid var(--ac35-line);border-top:1px solid var(--ac35-line)}
.acx-system-strip div{padding:17px 20px;column-gap:12px;background:transparent}
.acx-system-strip strong{font-size:8.5px;letter-spacing:.01em}
.acx-system-strip span:not(.acx-strip-glyph){font-size:8.5px;line-height:1.5;color:#6b7779}
.acx-strip-glyph{width:24px;height:24px;border-color:rgba(167,119,70,.22);background:rgba(255,251,244,.62)}

/* Product footer: deliberate dark close, visually connected to the dossier rail. */
body.acx-product-page .site-footer{
  background:linear-gradient(160deg,#0d191b,#132326 72%,#0c1719);
  color:rgba(255,255,255,.68);
  border-top:1px solid rgba(207,171,120,.18);
  padding-top:46px;
}
body.acx-product-page .site-footer__brand,body.acx-product-page .site-footer nav h2{color:#f6efe4}
body.acx-product-page .site-footer p,body.acx-product-page .site-footer a{color:rgba(255,255,255,.62)}
body.acx-product-page .site-footer a:hover{color:#e0bc87}
body.acx-product-page .site-footer__legal{border-top-color:rgba(255,255,255,.10);color:rgba(255,255,255,.44)}
body.acx-product-page .site-footer__monogram .site-brand__monogram-a{color:#f3ece1}
body.acx-product-page .site-footer__monogram .site-brand__monogram-c{color:#c99a61}

/* Responsive corrections: preserve hierarchy rather than shrink everything mechanically. */
@media(max-width:1100px){
  .acx-frame{grid-template-columns:236px minmax(0,1fr)}
  .acx-case-rail{padding:31px 24px 26px}.acx-case-rail h1{font-size:32px}.acx-rail-back{margin-bottom:40px}
  .acx-question-layout{grid-template-columns:minmax(0,1fr) 232px;gap:30px;padding:42px 30px 46px;min-height:650px}
  .acx-main-question h2{font-size:42px}.acx-choice-label{font-size:15.5px}.acx-context h3{font-size:23px}.acx-context p{font-size:10.5px}
  .acx-result-layout{padding:38px 30px 44px}.acx-result-head{grid-template-columns:1fr 215px;gap:30px}.acx-result-head h2{font-size:37px}
  .acx-document-aperture{grid-template-columns:126px 1fr;gap:22px;padding:20px 16px}.acx-doc-stack{width:86px;height:110px}
}
@media(max-width:820px){
  body.acx-product-page .site-header__inner{min-height:70px}
  .acx-product,.acx-frame{min-height:auto}
  .acx-case-rail{position:relative;top:auto;padding:16px 22px 14px}
  .acx-case-rail h1{font-size:24px;line-height:1}.acx-rail-back{margin-bottom:11px}.acx-rail-eyebrow{font-size:6.5px}
  .acx-live-file{padding-top:9px}
  .acx-journey{padding:11px 20px 10px}.acx-journey-meta{margin-bottom:7px}.acx-journey-track{height:27px}.acx-journey-track:before{top:11px}.acx-journey-glyph{width:24px;height:24px}
  .acx-question-layout{display:block;padding:31px 22px 40px;min-height:0}.acx-main-question h2{font-size:39px}.acx-question-intro{font-size:12px}
  .acx-choice{min-height:56px}.acx-choice-label{font-size:15.5px}
  .acx-context{position:relative;top:auto;margin-top:31px;padding:24px 0 0;border-left:0;border-top:1px solid rgba(10,27,30,.15)}.acx-context:before{left:0;top:-1px;width:72px;height:1px;background:var(--ac35-brass)}
  .acx-document-aperture{grid-template-columns:116px 1fr;padding:18px 15px}.acx-doc-copy strong{font-size:18px}
  .acx-result-layout{padding:31px 22px 40px;min-height:0}.acx-result-head{display:block}.acx-result-head:after{display:none}.acx-result-seal{margin-top:22px;padding:18px 0 0 48px;border-top:1px solid rgba(10,27,30,.14)}.acx-result-seal:before{top:18px;bottom:auto;width:38px;height:1px}.acx-seal-icon{left:0;top:28px}
  body.acx-product-page .site-footer{padding-top:32px}
}
@media(max-width:520px){
  .acx-case-rail{padding:14px 18px 12px}.acx-case-rail h1{font-size:22px}
  .acx-journey{padding-left:18px;padding-right:18px}
  .acx-question-layout{padding:27px 18px 35px}.acx-main-question h2{font-size:35px}.acx-question-intro{font-size:11px;margin-bottom:23px}
  .acx-choice{grid-template-columns:20px 31px minmax(0,1fr) 25px;min-height:54px}.acx-choice-label{font-size:14.7px}.acx-choice-glyph{width:28px;height:28px}
  .acx-context h3{font-size:23px}.acx-context p{font-size:10.5px}
  .acx-document-aperture{grid-template-columns:88px 1fr;gap:15px;padding:15px 12px}.acx-doc-stack{width:62px;height:82px}.acx-doc-copy strong{font-size:16px}.acx-doc-targets span{font-size:5.5px;padding:4px 6px}
  .acx-result-layout{padding:27px 18px 35px}.acx-result-head h2{font-size:33px}.acx-result-cta-copy strong{font-size:19px}
  .acx-system-strip{grid-template-columns:1fr 1fr!important}.acx-system-strip div{padding:13px 12px}
}

/* AC35 corrective pass — mobile first viewport + footer legibility. */
body.acx-product-page .site-footer .site-footer__brand,
body.acx-product-page .site-footer .site-footer__brand span,
body.acx-product-page .site-footer .site-footer__identity>p,
body.acx-product-page .site-footer .site-footer__contact a,
body.acx-product-page .site-footer .site-footer__social a,
body.acx-product-page .site-footer nav a,
body.acx-product-page .site-footer nav h2,
body.acx-product-page .site-footer__legal p{color:rgba(255,255,255,.70)!important}
body.acx-product-page .site-footer .site-footer__brand{color:#f5eee3!important}
body.acx-product-page .site-footer nav h2{color:#d8b37e!important}
body.acx-product-page .site-footer__identity>p{max-width:300px}

@media(max-width:820px){
  .acx-case-rail{min-height:0!important;height:auto!important;overflow:hidden}
  .acx-case-rail:before{height:118px;right:-44px;bottom:-78px;opacity:.65}
  .acx-case-rail h1{max-width:none}
  .acx-live-file{display:flex!important;min-height:0!important;max-height:38px;overflow:hidden}
  .acx-rail-trust{display:none!important}
  .acx-system-strip{margin-top:0}
  body.acx-product-page .site-footer__grid{gap:20px 16px!important}
  body.acx-product-page .site-footer__identity>p{max-width:100%;margin-bottom:12px!important}
}
@media(max-width:520px){
  .acx-case-rail{padding-top:12px;padding-bottom:10px}
  .acx-rail-back{font-size:7px;margin-bottom:7px}
  .acx-rail-eyebrow{font-size:5.8px;margin-bottom:4px}
  .acx-case-rail h1{font-size:19px}
  .acx-live-file{margin-top:7px;max-height:31px;padding-top:6px;gap:8px}
  .acx-live-file-header{min-width:62px}.acx-live-file-header span{font-size:5.3px}.acx-live-file-header strong{font-size:10px;margin-top:2px}
  .acx-live-row:not(.is-empty){min-width:105px}.acx-live-row dt{font-size:5.2px!important}.acx-live-row dd{font-size:8px!important}
  .acx-journey{padding-top:8px;padding-bottom:8px}.acx-journey-meta{margin-bottom:5px}.acx-journey-meta span{font-size:5.5px}.acx-journey-meta strong{font-size:8px}.acx-journey-track{height:23px}.acx-journey-track:before{top:9px}.acx-journey-glyph{width:20px;height:20px}
  .acx-question-layout{padding-top:23px}.acx-main-question h2{font-size:33px}
  body.acx-product-page .site-footer{padding:25px 0 14px!important}
  body.acx-product-page .site-footer__grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:14px 12px!important}
  body.acx-product-page .site-footer__identity{grid-column:1/-1!important}
  body.acx-product-page .site-footer__identity>p{font-size:9px!important;line-height:1.5!important;margin:8px 0 10px!important}
  body.acx-product-page .site-footer__contact{gap:10px!important;flex-wrap:wrap!important}
  body.acx-product-page .site-footer__contact a,body.acx-product-page .site-footer__social a{font-size:8px!important}
  body.acx-product-page .site-footer nav h2{font-size:7px!important;letter-spacing:.12em!important;margin-bottom:5px!important}
  body.acx-product-page .site-footer nav a{font-size:8px!important;margin:2px 0!important}
  body.acx-product-page .site-footer__grid>nav:last-child{grid-column:1/-1!important;grid-template-columns:1fr 1fr!important}
  body.acx-product-page .site-footer__legal{margin-top:14px!important;padding-top:10px!important;gap:8px!important}
  body.acx-product-page .site-footer__legal p{font-size:7.5px!important;line-height:1.45!important}
}
