:root{--palette-canvas:#182126;--palette-ink:#F4F7F6;--palette-surface:#27343A;--palette-accent:#E29A52;--palette-supporting:#9DB5B2;}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--palette-canvas);color:var(--palette-ink);font:18px/1.75 Arial,Helvetica,sans-serif}a{color:inherit;text-underline-offset:.25em}button,input,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--palette-accent);outline-offset:4px}button{cursor:pointer}h1,h2,h3,p,figure{margin-top:0}h1{font-size:clamp(2.8rem,6vw,6.2rem);line-height:1.03;letter-spacing:-.055em;max-width:15ch}h2{font-size:clamp(1.7rem,3vw,2.7rem);line-height:1.2;letter-spacing:-.025em}p{max-width:68ch}img{display:block;width:100%;object-fit:cover}.skip{position:absolute;top:-100px;left:1rem;z-index:50;background:var(--palette-ink);color:var(--palette-canvas);padding:1rem}.skip:focus{top:1rem}.stone-header{padding:1.5rem 5vw;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #607170}.brand{text-decoration:none;font-weight:800;font-size:1.25rem;display:flex;align-items:center;gap:1rem}.brand-symbol{border:2px solid var(--palette-accent);border-radius:50%;width:2.6rem;height:2.6rem;display:grid;place-items:center;font-size:.8rem}.menu-toggle,.print-button{border:1px solid var(--palette-supporting);background:transparent;color:inherit;border-radius:2rem;padding:.65rem 1.3rem}.stone-menu{position:fixed;z-index:40;top:5.6rem;right:3vw;width:min(560px,94vw);max-height:75vh;overflow:auto;background:var(--palette-surface);border:1px solid var(--palette-supporting);padding:2rem;border-radius:1rem;box-shadow:0 20px 80px #0008}.stone-menu[hidden]{display:none}.stone-menu a{display:block;padding:.65rem 0;text-decoration:none;border-bottom:1px solid #607170}.stone-menu a:hover{color:var(--palette-accent)}main{max-width:1450px;margin:auto;padding:4rem 5vw}.node{margin:0 0 3rem;padding:2rem 0;border-top:1px solid #607170;min-width:0}.opening{border:0;padding-top:0}.opening:has(figure){display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:3rem;align-items:center}.opening .photo img{height:520px}.eyebrow,.node-counter{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--palette-accent);display:block;margin-bottom:1rem}.intro{font-size:1.15rem;color:var(--palette-supporting)}.photo{margin:0;min-width:0}.photo img{width:100%;max-height:560px;aspect-ratio:16/10;border-radius:1.2rem}.photo figcaption{font-size:.8rem;color:var(--palette-supporting)}.node:not(.opening):has(figure){display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:3rem}.topic_index,.question_index{max-width:980px}.question_index .content-list{list-style:none;padding:0;display:grid;gap:.8rem}.question_index li{background:var(--palette-surface);border-radius:1rem;padding:1.2rem 1.5rem}.process_map ol{counter-reset:step;list-style:none;padding:0;max-width:880px}.process_map li{counter-increment:step;display:flex;gap:1.4rem;margin-bottom:1.3rem;padding-bottom:1.3rem;border-bottom:1px solid #607170}.process_map li:before{content:counter(step,decimal-leading-zero);color:var(--palette-accent);font-size:1.5rem}.content-list li{margin-bottom:.8rem}.checklist ul{list-style:none;padding:0}.checklist label{display:flex;gap:1rem;align-items:start;cursor:pointer}.checklist input{width:1.2rem;height:1.2rem;flex-shrink:0;margin-top:.35rem;accent-color:var(--palette-accent)}.comparison_table,.decision_matrix{background:var(--palette-surface);padding:2.4rem;border-radius:1.2rem}.toc-list{display:none}.route-list{display:flex;flex-wrap:wrap;gap:.75rem;margin:2rem 0}.route-list a{border:1px solid var(--palette-supporting);border-radius:2rem;padding:.8rem 1.3rem;text-decoration:none}.route-list a:hover{background:var(--palette-ink);color:var(--palette-canvas)}.footer-node{padding-bottom:0;margin-bottom:0}.site-footer{border-top:1px solid #607170;background:var(--palette-surface);padding:3rem 5vw;display:grid;grid-template-columns:1.2fr 1fr;gap:3rem}.legal-links{display:flex;flex-wrap:wrap;gap:1rem}.site-footer p{font-size:.9rem;color:var(--palette-supporting)}.form-grid{display:grid;gap:1.2rem;max-width:650px}.form-grid label{display:block}.form-grid input,.form-grid textarea{width:100%;border:1px solid var(--palette-supporting);padding:.8rem;border-radius:.5rem;background:var(--palette-canvas);color:var(--palette-ink)}.form-grid textarea{min-height:160px}.form-grid button{background:var(--palette-accent);color:#182126;border:0;border-radius:2rem;padding:1rem}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
@media(max-width:760px){.stone-header{padding:1rem 5vw}.brand{font-size:1rem}.brand-symbol{display:none}.opening:has(figure),.node:not(.opening):has(figure),.site-footer{display:block}.opening .photo{margin-top:2rem}.opening .photo img{height:260px}main{padding:2.5rem 5vw}h1{font-size:3rem}.node{margin-bottom:1.5rem}.comparison_table,.decision_matrix{padding:1.3rem}.photo{margin-top:1rem}.site-footer .legal-links{margin-top:1.5rem}.route-list a{max-width:100%;overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{.stone-header,.stone-menu,.site-footer,.print-button,.form-grid{display:none!important}body{background:white;color:black}main{padding:0}.node{break-inside:avoid}.node-counter{color:black}}

/* Contract runtime: preserve planned geometry without allowing it to break the viewport. */
[data-node] > * { max-width: 100%; }
[data-mobile-composition="horizontal_scroll"] {
  max-width: 100%;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
}
@media (max-width: 600px) {
  [data-mobile-composition="stack_text_first"] :is(.matrix, .role-grid, .index-columns, .steps, .path-grid, .question-grid),
  [data-mobile-composition="stack_media_first"] :is(.matrix, .role-grid, .index-columns, .steps, .path-grid, .question-grid),
  [data-mobile-composition="reorder_by_priority"] :is(.matrix, .role-grid, .index-columns, .steps, .path-grid, .question-grid),
  [data-mobile-composition="collapse_index"] :is(.matrix, .role-grid, .index-columns, .steps, .path-grid, .question-grid) {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

.photo-credit{display:block;margin-block:.4rem;font:inherit;font-size:.8rem;color:inherit}.photo-credit a{color:inherit;text-decoration:underline}


/* Isolated production support shared by the accepted proof composition. */
.proof-legal-links{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem;align-items:center;font:600 .78rem/1.4 system-ui,sans-serif}
.proof-legal-links a{text-decoration:underline;text-underline-offset:.2em}
.proof-legal-page{margin:0;background:var(--publication-canvas,#fff);color:var(--publication-ink,#171717);font:400 1rem/1.65 system-ui,sans-serif}
.proof-legal-header,.proof-legal-footer{display:flex;justify-content:space-between;gap:1.5rem;align-items:center;padding:1.25rem clamp(1rem,5vw,5rem);background:var(--publication-surface,#f5f5f5);color:var(--publication-ink,#171717)}
.proof-legal-header a,.proof-legal-footer a{color:inherit}.proof-legal-header nav{display:flex;flex-wrap:wrap;gap:1rem}
.proof-legal-main{width:min(100% - 2rem,78rem);margin:auto;padding:clamp(3rem,8vw,7rem) 0}.proof-legal-main article{max-width:72ch}
.proof-legal-main h1{font-size:clamp(2.5rem,7vw,5.5rem);line-height:.95;margin:0 0 2rem;overflow-wrap:anywhere}.proof-legal-main h2{font-size:clamp(1.25rem,3vw,2rem);line-height:1.15;margin:2.5rem 0 .75rem}
.legal-updated{font-size:.85rem;text-transform:uppercase;letter-spacing:.08em}
.proof-editorial-photo{display:block;width:100%;object-fit:cover}.proof-photo-portrait{height:475px}.evidence-item>.proof-editorial-photo{height:210px;border:1px solid var(--ink)}.scene>.proof-editorial-photo{height:33rem}
@media(max-width:700px){.proof-legal-header,.proof-legal-footer{align-items:flex-start;flex-direction:column}.proof-legal-main{padding-block:3rem}}
@media(max-width:900px){.proof-photo-portrait{height:350px}}
@media(max-width:600px){.scene>.proof-editorial-photo{height:27rem}}

.proof-legal-page{--publication-canvas:#182126;--publication-ink:#F4F7F6;--publication-surface:#27343A;}


/* Factual privacy notice: necessary local storage only unless LegalFacts enables more. */
#cookie-consent{position:fixed;z-index:10000;left:clamp(.75rem,3vw,2rem);right:clamp(.75rem,3vw,2rem);bottom:clamp(.75rem,3vw,2rem);display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem 2rem;max-width:72rem;margin-inline:auto;padding:1rem 1.15rem;background:#111820;color:#f8fafc;border:1px solid rgba(255,255,255,.2);border-radius:.75rem;box-shadow:0 1rem 3rem rgba(0,0,0,.35);font:400 .95rem/1.5 system-ui,sans-serif}
#cookie-consent[hidden],#cookie-settings[hidden],#cookie-preferences[hidden]{display:none!important}#cookie-consent p{margin:0;color:#f8fafc}#cookie-consent strong{display:block;margin-bottom:.2rem;font-size:1rem;color:#fff}#cookie-consent a{color:#b9dcff;text-decoration:underline;text-underline-offset:.18em}#cookie-consent .cookie-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem}#cookie-consent button,#cookie-settings button,#cookie-preferences{appearance:none;border:1px solid #fff;border-radius:.45rem;background:#fff;color:#111820;padding:.7rem 1rem;font:700 .88rem/1 system-ui,sans-serif;cursor:pointer}#cookie-consent .cookie-secondary{background:transparent;color:#fff}#cookie-consent button:focus-visible,#cookie-consent a:focus-visible,#cookie-settings button:focus-visible,#cookie-preferences:focus-visible{outline:3px solid #8bc5ff;outline-offset:3px}#cookie-preferences{position:fixed;z-index:9999;right:1rem;bottom:1rem;background:#111820;color:#fff;border-color:rgba(255,255,255,.65);box-shadow:0 .5rem 1.5rem rgba(0,0,0,.25)}
#cookie-settings{position:fixed;z-index:10001;inset:0;display:grid;place-items:center;padding:1rem;background:rgba(4,9,14,.7);font:400 .95rem/1.5 system-ui,sans-serif}#cookie-settings .cookie-panel{width:min(100%,36rem);max-height:min(90vh,46rem);overflow:auto;padding:1.25rem;background:#fff;color:#111820;border-radius:.75rem;box-shadow:0 1.25rem 4rem rgba(0,0,0,.4)}#cookie-settings h2{margin:0 0 .5rem;color:#111820;font-size:1.5rem}#cookie-settings p{color:#334155}#cookie-settings .cookie-category{display:flex;justify-content:space-between;gap:1rem;padding:.9rem 0;border-top:1px solid #d7dde5}#cookie-settings .cookie-category b{color:#111820}#cookie-settings .cookie-state{color:#315c42;font-weight:700;white-space:nowrap}#cookie-settings .cookie-actions{display:flex;justify-content:flex-end;gap:.65rem;margin-top:1rem}
#cookie-settings .cookie-panel{box-sizing:border-box;overflow-wrap:anywhere}#cookie-settings .cookie-actions{flex-wrap:wrap}#cookie-settings button{max-width:100%;overflow-wrap:anywhere}
@media(max-width:680px){#cookie-consent{grid-template-columns:1fr;gap:.85rem}#cookie-consent .cookie-actions{justify-content:flex-start}#cookie-settings .cookie-category{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.35rem 1rem}#cookie-settings .cookie-category>div{display:contents}#cookie-settings .cookie-category p{grid-column:1/-1;grid-row:2;margin:0}#cookie-settings .cookie-state{grid-column:2;grid-row:1;white-space:normal}}

/* Keep the persistent privacy control clear of the final footer links. */
body:has(> #cookie-preferences:not([hidden])){padding-bottom:calc(5rem + env(safe-area-inset-bottom))}
#cookie-preferences{max-width:calc(100vw - 2rem)}

/* Order editorial finish: retain each site's palette and navigation. */
footer.handoff-footer {display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:2rem}
.handoff-footer .footer-brand {font-size:1.4rem;line-height:1.3;letter-spacing:0;overflow-wrap:anywhere}
.handoff-footer p {max-width:65ch;line-height:1.7;font-size:.96rem}
.handoff-footer nav {display:flex;flex-wrap:wrap;align-content:start;gap:.85rem 1.2rem}
.handoff-footer nav a {font-size:.94rem;line-height:1.5}
.handoff-footer .reader-note {grid-column:1/-1;border-top:1px solid currentColor;padding-top:1rem;margin:0;font-size:.86rem}
body.handoff-legal main {min-width:0}
body.handoff-legal main>article {max-width:76ch;margin-inline:auto;padding:clamp(1.25rem,4vw,3.5rem)}
body.handoff-legal main h1 {font-size:clamp(2rem,4vw,3.5rem);line-height:1.15;overflow-wrap:anywhere;letter-spacing:-.025em}
body.handoff-legal main h2 {font-size:1.35rem;line-height:1.35;margin-top:2rem}
body.handoff-legal main p,body.handoff-legal main li {font-size:1.02rem;line-height:1.8}
body.handoff-legal main a {color:inherit;text-decoration:underline;text-underline-offset:.2em}
@media(max-width:720px){footer.handoff-footer{grid-template-columns:1fr}.handoff-footer .reader-note{grid-column:auto}}
