/* FOUR PRIMARIES: four educational fundamentals contribute to one expression. */
.signature-hero{min-height:0;background:#061522;overflow:clip}
.signature-hero:after{display:none}
.signature-layout{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);align-items:center;gap:26px;padding-top:139px;padding-bottom:56px}
.signature-intro{position:relative;z-index:1;min-width:0;padding-bottom:44px}
.signature-hero h1{font-size:clamp(58px,6.9vw,100px);line-height:1.15;letter-spacing:-.075em}
.signature-hero .hero-heading .eyebrow{display:block;font-size:.75rem;line-height:2.2;letter-spacing:.07em;margin-bottom:30px}
.signature-hero .tiny-swatch{display:inline-block;vertical-align:middle;margin-right:7px}
.signature-hero .hero-edition{display:block;margin:0 0 0 17px;font-size:.6875rem;letter-spacing:.12em}
.signature-hero .hero-copy{margin-top:30px;max-width:none}
.signature-hero .hero-description{font-size:1rem;line-height:1.95}
.signature-hero .hero-actions{align-items:flex-start;flex-direction:column;gap:10px;margin-top:29px}
.signature-hero .hero-actions .button{min-height:52px;padding:13px 21px;font-size:1rem}
.signature-hero .hero-about{font-size:.875rem;text-decoration:underline;text-underline-offset:6px;text-decoration-color:#759796;min-height:44px}
.signature-hero .hero-bottom{position:relative;min-height:68px;border-top-color:#244049}
.signature-hero .hero-bottom .scroll-cue{font-size:.875rem}
.signature-work{min-width:0;width:100%;margin:0}
.signature-work-heading{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px 16px;border-bottom:1px solid #28454d;padding:0 0 15px;font-size:.875rem;color:#b4cbcb;letter-spacing:.045em}
.signature-work-heading>span:first-child{color:#d5e9e1;font-weight:650}
.signature-work-heading>span:last-child{letter-spacing:0}
.signature-art-composition{container-type:inline-size;background:#061522;padding-bottom:22px}
.signature-canvas{position:relative;width:100%;aspect-ratio:1.5;background:#061522;overflow:hidden;isolation:isolate;container-type:inline-size}
.signature-frame{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .7s ease,visibility .7s;pointer-events:none}
.signature-frame.is-visible{opacity:1;visibility:visible}
.signature-frame img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.signature-name{font-family:var(--font);font-size:clamp(30px,5.9vw,76px);font-weight:650;line-height:1.1;letter-spacing:.045em;text-align:center;white-space:nowrap;color:#deebe3;margin:0;padding:0 4%}
@supports(font-size:1cqw){.signature-name{font-size:14cqw}}
.signature-type{display:grid;place-items:center;padding:0 10%;background:#061522}
.signature-word{font-family:var(--font);font-size:clamp(64px,11vw,170px);font-weight:750;line-height:1.15;letter-spacing:-.035em;white-space:nowrap;color:#c6e3dc;-webkit-text-stroke:1px #c6e3dc;paint-order:stroke fill}
@supports(font-size:1cqw){.signature-word{font-size:30cqw}}
@supports(-webkit-text-stroke:1px #fff){.signature-word{color:transparent}}
.signature-type-guides{position:absolute;inset:26% 10% 22%;border-block:1px solid #45655e;border-inline:1px solid #45655e}
.signature-type-guides:after{content:"";position:absolute;inset:50% 0 auto;border-top:1px dashed #38574f}
.signature-type-caption{position:absolute;bottom:12%;left:10%;font-size:.75rem;letter-spacing:.15em;color:#a5c4ba}
.signature-caption{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 18px;margin-top:23px}
.signature-caption>div{min-width:0}
.signature-course{font-size:.875rem;color:#a9c6c2;letter-spacing:.025em;line-height:1.8}
.signature-caption h2{font-family:var(--font-display);font-size:clamp(19px,1.85vw,27px);font-weight:600;line-height:1.65;letter-spacing:-.045em;margin-top:5px;color:#edf2e9}
.signature-play{display:inline-flex;align-items:center;justify-content:center;gap:8px;flex-shrink:0;min-height:48px;padding:10px 13px;border:1px solid #9fc9bc;background:#c7e7d9;color:#123b32;font-size:.875rem;font-weight:700;line-height:1.6}
.signature-play:hover{background:#e0f2e7}
.signature-play[aria-busy="true"]{cursor:progress}
.signature-play svg{width:18px;height:18px;fill:currentColor;flex-shrink:0}
.signature-interaction-hint{font-size:.875rem;line-height:1.8;color:#bdd2cd;margin:5px 0 14px;text-wrap:pretty}
.signature-interaction-hint strong{font-weight:600;color:#eff4ec}
.signature-chapters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:0}
.signature-chapters button{position:relative;display:grid;grid-template-columns:auto 1fr;align-content:center;align-items:center;gap:2px 8px;min-height:92px;padding:12px 10px;border:1px solid #35504f;border-top:3px solid var(--primary-accent);background:#0d2630;color:#e0eae5;font-size:1rem;line-height:1.55;text-align:left;transition:background-color .2s,color .2s,border-color .2s}
.signature-chapter-number{font-size:.75rem;letter-spacing:.05em;color:var(--primary-accent);font-variant-numeric:tabular-nums}
.signature-chapter-label{font-weight:650}
.signature-chapter-course{grid-column:1/-1;font-size:.875rem;line-height:1.7;color:#b8ceca;word-break:keep-all;overflow-wrap:anywhere}
.signature-chapters button[aria-pressed="true"]{background:var(--primary-accent);color:#061522;border-color:var(--primary-accent);font-weight:700}
.signature-chapters button[aria-pressed="true"] .signature-chapter-number,.signature-chapters button[aria-pressed="true"] .signature-chapter-course{color:#061522}
.signature-chapters button:hover{border-color:var(--primary-accent)}
.signature-chapters button:not([aria-pressed="true"]):hover{background:#183944}
.signature-chapters button:focus-visible,.signature-play:focus-visible{outline:3px solid #f2eee2;outline-offset:4px}
.signature-chapter-progress{position:absolute;bottom:0;left:0;height:3px;width:0;background:#163d48}
.signature-work.is-playing .signature-chapters button[aria-pressed="true"] .signature-chapter-progress{animation:signature-duration 2400ms linear forwards}
.signature-description{font-size:1rem;line-height:1.85;color:#b6ceca;margin-top:12px;min-height:5.55em;text-wrap:pretty}
.signature-provenance{font-size:.75rem;line-height:1.8;color:#9ab4b1;margin-top:12px}
.signature-motion-note{font-size:.875rem;line-height:1.8;color:#b7d0c5;margin-top:14px}
.signature-status:empty{display:none}
.signature-status{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.signature-status.is-error{position:static;width:auto;height:auto;overflow:visible;clip-path:none;white-space:normal;font-size:.875rem;line-height:1.8;color:#e4eccc;margin-top:12px}
@keyframes signature-duration{to{width:100%}}

/* The three real places are linked both through the diagram and by their names. */
.network-section .network-overview{grid-template-areas:"copy map" "choices map" "hint note";row-gap:18px}
.network-copy{grid-area:copy}
.network-overview .network-explorer{display:contents}
.network-map{position:relative;grid-area:map;width:290px;max-width:100%;aspect-ratio:1;justify-self:center;align-self:center}
.network-overview .network-map .universe-spectrum{position:absolute;inset:0;width:100%;box-shadow:0 0 0 18px #ffffff03,0 0 0 19px #ffffff0e}
.network-map .universe-center{inset:65px;z-index:2;background:#092330;border-radius:50%;pointer-events:none}
.network-map .universe-center strong{font-size:1rem}
.network-map .universe-center small{font-size:.75rem;white-space:nowrap}
.network-connections{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none;fill:none;stroke:#517273;stroke-width:.4}
.network-connections path{transition:stroke .2s,stroke-width .2s}
.network-connections path.is-current{stroke:var(--selected-branch,#a5e2d0);stroke-width:.85}
.network-point{position:absolute;z-index:3;left:var(--node-x);top:var(--node-y);transform:translate(-50%,-50%);width:46px;height:46px;display:flex;align-items:center;justify-content:center;border:2px solid var(--branch-accent);border-radius:50%;background:#092330;color:var(--branch-accent);font-size:.875rem;font-weight:750;font-variant-numeric:tabular-nums;transition:background-color .2s,color .2s}
.network-point:hover,.network-point[aria-current="location"]{background:var(--branch-accent);color:#092330}
.network-choices{grid-area:choices;display:grid;grid-template-columns:minmax(0,1fr);max-width:430px;width:100%;margin-top:6px;border-top:1px solid #416365}
.network-choices a{display:flex;align-items:center;gap:16px;min-height:46px;padding:8px 10px;border-bottom:1px solid #355558;font-size:.9375rem;line-height:1.7;color:#e2eee5}
.network-choices a>span{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:28px;height:28px;border:1px solid var(--branch-accent);border-radius:50%;color:var(--branch-accent);font-size:.75rem}
.network-choices a:hover,.network-choices a[aria-current="location"]{background:#143944}
.network-choices a[aria-current="location"]{text-decoration:underline;text-decoration-color:var(--branch-accent);text-underline-offset:5px;font-weight:650}
.network-choices a[aria-current="location"]>span{background:var(--branch-accent);color:#092330}
.network-overview .network-choice-hint{grid-area:hint;font-size:.875rem;line-height:1.9;color:#b6ccca;margin:0;text-align:left;max-width:none}
.network-overview .network-spectrum-note{grid-area:note;justify-self:center;text-align:center;max-width:300px;font-size:.875rem;line-height:1.85;color:#d0e0d7;margin:0}
.network-spectrum-note small{display:block;font-size:.75rem;line-height:1.85;color:#b6ccca}
.branch-directory-entry{position:relative;scroll-margin-top:112px;transition:background-color .25s,box-shadow .25s}
.branch-directory-entry.is-current{background:#14343d;box-shadow:inset 3px 0 var(--branch-accent)}
.branch-directory-entry.is-current .network-top{padding-left:13px}
.branch-directory-entry.is-current h3{color:var(--branch-accent)}
.network-top .branch-selected{display:block;max-width:none;margin-bottom:10px;color:#eff3e6;font-size:.75rem;line-height:1.65;font-weight:650}
.network-top>span:nth-child(2){display:block;max-width:70px}

/* A completed scene closes the same story before the existing consultation paths. */
.signature-ending{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6%;align-items:center;margin:0 0 46px}
.signature-ending .contact-invitation{padding-right:0}
.ending-kicker{display:block;font-size:.75rem;line-height:1.8;letter-spacing:.12em;color:#38634f;margin-bottom:22px}
.signature-ending .contact-invitation h2{font-family:var(--font-display);font-weight:600;font-size:clamp(40px,4.8vw,70px);line-height:1.5;letter-spacing:-.055em;padding:0}
.signature-ending .contact-invitation>p{font-size:1rem;line-height:2;max-width:31em;margin-top:22px}
.signature-ending .contact-seal{position:static;width:50px;height:50px;margin-top:29px}
.ending-art{background:#061522;margin:0;min-width:0;overflow:hidden;container-type:inline-size}
.ending-art>img{display:block;width:100%;height:auto;aspect-ratio:1.5;object-fit:contain;object-position:center}
.ending-art .signature-name{padding-bottom:25px}
.ending-art figcaption{padding:18px 24px 22px;border-top:1px solid #27453e;font-size:.875rem;line-height:1.8;color:#c7ded0}

@media(max-width:1000px){
 .signature-layout{grid-template-columns:minmax(0,1fr);gap:40px;padding-top:126px;padding-bottom:40px}
 .signature-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:32px;align-items:end;padding-bottom:0}
 .signature-hero h1{font-size:clamp(58px,8.3vw,78px)}
 .signature-hero .hero-heading .eyebrow{margin-bottom:23px}
 .signature-hero .hero-copy{margin-top:0;padding-bottom:6px}
 .signature-hero .hero-description{font-size:1rem}
 .signature-work{max-width:720px;justify-self:center}
 .signature-canvas{aspect-ratio:1.5}
 .signature-caption h2{font-size:25px}
 .signature-description{min-height:3.7em}
 .network-map{width:248px}
 .network-map .universe-center{inset:52px}
 .network-map .universe-center strong{font-size:.9375rem}
 .network-point{width:44px;height:44px}
 .signature-ending{gap:5%}.signature-ending .contact-invitation h2{font-size:45px}
}
@media(max-width:600px){
 .signature-layout{gap:34px;padding-top:114px;padding-bottom:29px}
 .signature-intro{display:block}
 .signature-hero h1{font-size:clamp(51px,12.3vw,70px);line-height:1.18}
 .signature-hero .hero-heading .eyebrow{font-size:.6875rem;margin-bottom:22px}
 .signature-hero .hero-edition{display:inline;margin-left:10px;font-size:.625rem;letter-spacing:.04em}
 .signature-hero .hero-copy{margin-top:24px;padding:0}
 .signature-hero .hero-description{font-size:1rem;line-height:1.9}
 .signature-hero .hero-actions{margin-top:22px;gap:9px}
 .signature-hero .hero-actions .button{font-size:.9375rem}
 .signature-work-heading{font-size:.875rem;letter-spacing:.025em;gap:7px 12px;padding-bottom:12px}
 .signature-work-heading>span:last-child{font-size:.8125rem}
 .signature-art-composition{padding-bottom:18px}
 .signature-canvas{aspect-ratio:1.5}
 .signature-type-caption{font-size:.75rem;letter-spacing:.06em;bottom:10%}
 .signature-caption{gap:12px;margin-top:15px}
 .signature-caption h2{font-size:19px;line-height:1.65;margin-top:5px}
 .signature-course{font-size:.875rem}
 .signature-play{gap:6px;padding:10px;min-height:48px;font-size:.875rem}
 .signature-play svg{width:16px;height:16px}
 .signature-chapters{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:0}
 .signature-chapters button{gap:1px 10px;min-height:80px;font-size:1rem;padding:10px 14px}
 .signature-chapter-course{font-size:.875rem}
 .signature-chapter-number{font-size:.75rem}
 .signature-description{font-size:1rem;line-height:1.85;margin-top:12px;min-height:5.55em}
 .signature-provenance{font-size:.75rem;line-height:1.8;margin-top:11px}
 .signature-hero .hero-bottom{gap:15px;min-height:62px;align-items:center}
 .signature-hero .hero-index{font-size:.6875rem;letter-spacing:.035em;max-width:none}
 .signature-hero .hero-coordinate{display:none}
 .network-section .network-overview{grid-template-areas:"copy" "map" "choices" "hint" "note";grid-template-columns:minmax(0,1fr);row-gap:22px;padding-bottom:37px}
 .network-map{width:250px;margin:15px 0}
 .network-choices{max-width:none;margin-top:0}
 .network-choices a{min-height:50px;font-size:1rem}
 .network-overview .network-choice-hint{font-size:.875rem;line-height:1.8;margin-top:-10px}
 .network-overview .network-spectrum-note{font-size:.8125rem;max-width:none;justify-self:start;text-align:left;border-top:1px solid #315559;padding-top:16px;width:100%}
 .network-spectrum-note small{font-size:.75rem;margin-top:4px}
 .branch-directory-entry.is-current .network-top{padding-left:14px}
 .branch-directory-entry.is-current .branch-identity,.branch-directory-entry.is-current .branch-description,.branch-directory-entry.is-current .branch-location{padding-left:14px;padding-right:10px}
 .network-top .branch-selected{margin:0 6px 0 0}
 .network-top>span:nth-child(2){max-width:none}
 .signature-ending{grid-template-columns:minmax(0,1fr);gap:29px;margin-bottom:34px}
 .signature-ending .contact-invitation h2{font-size:clamp(38px,9.6vw,54px);line-height:1.55}
 .ending-kicker{font-size:.75rem;margin-bottom:18px}
 .signature-ending .contact-invitation>p{font-size:1rem;line-height:1.95;margin-top:19px}
 .signature-ending .contact-seal{width:46px;height:46px;margin-top:23px}
 .ending-art>img{aspect-ratio:1.5}
 .ending-art .signature-name{padding-bottom:20px}
 .ending-art figcaption{padding:16px 19px;font-size:.875rem}
}
@media(min-width:601px) and (max-width:760px){
 .network-section .network-overview{grid-template-areas:"copy" "map" "choices" "hint" "note";grid-template-columns:minmax(0,1fr);row-gap:24px}
 .network-choices{max-width:none}
 .network-map{margin:16px 0}
 .signature-ending{grid-template-columns:minmax(0,1fr);gap:30px}
 .ending-art{width:min(100%,520px);justify-self:center}
}
@media(max-width:360px){.signature-hero .hero-edition{display:block;margin-left:15px;font-size:.6875rem}.signature-hero h1{font-size:49px}.signature-caption h2{font-size:18px}.signature-play{padding:10px 8px}.network-map{width:230px}.network-map .universe-center{inset:47px}}
@media(prefers-reduced-motion:reduce){.signature-frame,.signature-chapters button,.network-connections path,.network-point,.branch-directory-entry{transition:none}.signature-chapter-progress{animation:none!important}.signature-play{display:none!important}}
@media(forced-colors:active){
 .signature-hero,.signature-type,.signature-ending,.ending-art{background:Canvas;color:CanvasText}
 .signature-hero h1,.signature-hero h1>span,.signature-caption h2,.signature-description,.signature-course,.signature-provenance,.signature-work-heading,.signature-work-heading>span,.signature-motion-note,.signature-status,.ending-art figcaption{color:CanvasText}
 .signature-word,.signature-name,.signature-interaction-hint,.signature-interaction-hint strong{color:CanvasText;-webkit-text-stroke:0}
 .signature-play,.signature-chapters button,.signature-chapters button[aria-pressed="true"]{background:ButtonFace;color:ButtonText;border-color:ButtonText}
 .signature-chapters button[aria-pressed="true"]{outline:2px solid Highlight;outline-offset:-3px}
 .signature-chapter-number,.signature-chapter-course,.signature-chapters button[aria-pressed="true"] .signature-chapter-number,.signature-chapters button[aria-pressed="true"] .signature-chapter-course{color:ButtonText}
 .network-point,.network-point[aria-current],.network-choices a,.network-choices a>span{background:Canvas;color:LinkText;border-color:LinkText}
 .network-choices a[aria-current]{outline:2px solid Highlight}.network-connections{stroke:CanvasText}.network-connections path.is-current{stroke:Highlight}
 .branch-directory-entry.is-current{outline:3px solid Highlight;outline-offset:-3px;background:Canvas}.branch-directory-entry.is-current h3,.network-top .branch-selected{color:CanvasText}
}
@media print{.signature-hero{background:white;color:#102b35}.signature-layout{display:block;padding-top:0}.signature-intro{display:block}.signature-work,.network-map,.network-choices,.network-choice-hint,.signature-ending .ending-art{display:none}.signature-ending{display:block}.signature-hero .hero-description{color:#102b35}.network-overview{display:block!important}.network-overview .network-spectrum-note{display:none}}
