/* Ontology Dreams: original ink and watercolor, addressable pieces and real planes. */
.hero-art{width:60%;right:-8%;height:780px;top:0;opacity:1}.painter-graph{width:100%;height:100%;display:block;overflow:visible}.hero-art .painter-graph{mask-image:linear-gradient(90deg,transparent 0%,#000 17%,#000 100%)}.art-piece{pointer-events:none}.art-network,.art-node{transform-box:fill-box;transform-origin:center}.art-connection{fill:none;stroke:#d39a3e;stroke-width:1.6;stroke-linecap:round;opacity:.9;vector-effect:non-scaling-stroke}.art-signal{fill:#f5c564;stroke:#b5802d;stroke-width:1;opacity:0;vector-effect:non-scaling-stroke}.hero-bottom{margin-top:75px}.claim-divider{height:3px;background:linear-gradient(90deg,#d5a34835,#e8a634 30%,#bf792d 68%,#d5a34838)}
.base-art{height:670px;margin-top:-35px;z-index:2}.plane-fallback{width:100%;height:100%;display:block;overflow:visible}.fallback-thread{fill:none;stroke:#d39a3e;stroke-width:2.2;vector-effect:non-scaling-stroke}.base-art.has-three .plane-fallback{visibility:hidden}.art-caption{font-size:.875rem;font-weight:650;bottom:0;letter-spacing:.01em;line-height:1.7}.art-caption span{width:26px;height:2px}.three-surface{position:fixed;inset:0;pointer-events:none;z-index:2}.three-surface canvas{width:100%;height:100%;display:block}.base-grid{align-items:center}.base-content{position:relative;z-index:4}
.section-number{font-weight:800;transition:background .25s,border-color .25s,box-shadow .25s}.section-number.has-arrived{border-color:#d5a348;box-shadow:0 0 0 7px #d5a3481a}.section-number:after{content:'';position:absolute;inset:7px;border:1px solid #ffffff35;border-radius:50%;pointer-events:none}.node-ring circle{stroke-width:1.8;stroke:#d89b37}.node-halo{border-width:2px}.reading-route path.route-progress{stroke-width:1.8!important}.dark-section .node-ring circle{stroke:#efbf68}.dark-section .section-number:after{border-color:#083f4330}
.principles{display:flex;min-height:285px;isolation:isolate;border-top:2px solid #bdcfc6}.principles article{position:relative;flex:1 1 0;min-width:0;padding:32px 28px 28px;overflow:hidden;outline-offset:-4px;isolation:isolate;transition:background .3s,border-color .3s}.principles article:first-child{padding-left:0}.principles article+article{padding-left:28px;border-left:1px solid #c1d5cc}.principles h3{font-size:clamp(1.7rem,2.2vw,2rem);font-weight:600;position:relative;z-index:2}.principles p{position:relative;z-index:2;max-width:370px}.principle-index{position:relative;z-index:2}.principle-fold{position:absolute;right:-48px;bottom:-60px;width:220px;height:150px;opacity:.12;transform:perspective(700px) rotateY(-35deg) rotateZ(-12deg);transform-origin:100% 50%;z-index:0;pointer-events:none}.painted-plane{display:block;width:100%;height:100%;overflow:hidden}.principles article.is-expanded{background:#deeee480}.principles article.is-expanded h3{color:#0a7377}.principles article:focus-visible{outline:2px solid #c9973e}.ai-note{grid-template-columns:290px 1fr;border-top:2px solid #d5a34865;gap:40px;align-items:start}.ai-label{display:flex;gap:16px;align-items:center;line-height:1.5;font-size:1.0625rem}.ai-symbol{width:58px;flex:none;stroke:#166f74;stroke-width:1.2;fill:none;overflow:visible}.ai-symbol circle{fill:#f4f8f0;stroke:#166f74}.ai-symbol circle:first-of-type{fill:#e8a634;stroke:#c89032}.ai-note p{font-size:1.125rem;line-height:1.8;max-width:850px}.ai-note strong{font-weight:750}
.method-visual{height:230px;width:100%;position:relative;margin:0 0 29px;z-index:2}.method-fallback{position:absolute;inset:0;display:grid;grid-template-columns:repeat(4,1fr);gap:34px;align-items:center}.method-sheet{position:relative;height:190px;transform:perspective(900px) rotateY(-22deg) rotateZ(-7deg);transform-origin:50% 50%}.method-sheet:nth-child(2){transform:perspective(900px) rotateY(-17deg) rotateZ(-3deg)}.method-sheet:nth-child(3){transform:perspective(900px) rotateY(-13deg) rotateZ(0deg)}.method-sheet:nth-child(4){transform:perspective(900px) rotateY(-9deg) rotateZ(3deg)}.method-thread{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.method-thread path{fill:none;stroke:#d09a3a;stroke-width:2.4}.method-thread circle{fill:#e8a634;opacity:0}.method-visual.has-three .method-fallback{visibility:hidden}.steps:before{height:2px;background:linear-gradient(90deg,#c99a42,#deac52,#b57c26);top:24px}.steps h3{font-weight:580}.step-node{background:#eff5ef;border-color:#c99a42}.steps li.is-active .step-node{background:#0d7177;color:#fff;border-color:#d5a348;box-shadow:0 0 0 6px #d5a34820}.steps li.is-active h3{color:#0b797c}.method-bottom{margin:65px 0 0 15%;padding:34px 0 0;border-top:3px solid #d49c3c;max-width:1040px}.recovery-kicker{display:block;color:#7d5b22;font-size:.875rem;font-weight:700;letter-spacing:.04em;margin-bottom:21px}.method-bottom h2{font-size:clamp(2.7rem,3.6vw,3.7rem);font-weight:550;line-height:1.1;margin-bottom:22px}.method-bottom p{font-size:1.3rem;font-weight:500;line-height:1.75;max-width:820px}.method-bottom p strong{color:#0b7075}
.ownership-art{height:620px;position:relative;z-index:2}.ownership-art .painter-graph{width:150%;max-width:none;margin-left:-13%;mask-image:linear-gradient(90deg,transparent,#000 15%,#000)}.contact-art{height:600px;z-index:1}.contact-art .painter-graph{width:132%;margin-left:-10%;mask-image:linear-gradient(90deg,transparent 0%,transparent 18%,#000 35%)}.contact-art .art-connection{stroke:#e8b855;opacity:.85}.footer .footer-claim{font-size:clamp(1.7rem,2.4vw,2.3rem);font-weight:580;letter-spacing:-.02em}.footer-claim strong{font-weight:700}.footer{position:relative;z-index:4}
.interlude{position:relative;height:155px;overflow:hidden;isolation:isolate;margin:0;background:#f0f6f1;pointer-events:none;display:flex;align-items:center;justify-content:center;gap:34px}.interlude img{position:absolute;width:700px;height:460px;object-fit:contain;right:3%;top:-180px;opacity:.25;mask-image:radial-gradient(ellipse at 50% 50%,#000,transparent 73%);z-index:-1}.interlude-a{margin-top:-50px;margin-bottom:-15px}.interlude-a span{font:600 .875rem/1.5 var(--sans);letter-spacing:.11em;color:#35686c;margin-left:-33%}.interlude-a span:before{content:'';display:inline-block;vertical-align:middle;width:55px;height:2px;background:#d5a348;margin-right:21px}.interlude-b{height:200px;background:#fafbf8}.interlude-b img{right:17%;top:-195px;width:960px;height:640px;opacity:.22}.interlude-b span{font:550 clamp(2rem,3vw,2.8rem)/1.15 var(--serif);color:#235c63;position:relative;z-index:2}.interlude-b b{font-weight:650;color:#0b7b7f}.interlude-b span:after{content:'';display:block;width:55px;height:2px;background:#d5a348;margin:20px auto 0}
@media(max-width:1100px){.hero-art{width:61%;right:-11%;height:745px}.base-art{height:620px}.art-caption{font-size:.8125rem}.principles{min-height:315px}.principles article,.principles article+article{padding-left:21px;padding-right:21px}.principles article:first-child{padding-left:0}.ai-note{grid-template-columns:245px 1fr;gap:30px}.ai-label{font-size:1rem}.method-visual{height:205px}.method-sheet{height:170px}.ownership-art .painter-graph{width:165%;margin-left:-20%}.contact-art{height:530px}.contact-art .painter-graph{width:150%;margin-left:-16%}}
@media(max-width:850px) and (min-width:601px){.hero-content{width:74%}.hero-art{right:-24%;width:65%;opacity:.5;top:120px}.base-art{height:580px}.method-visual{height:165px}.method-sheet{height:140px}.method-fallback{gap:14px}.ownership-art .painter-graph{width:210%;margin-left:-35%}.contact-art .painter-graph{width:190%;margin-left:-35%}.ai-note{grid-template-columns:1fr;gap:20px}.ai-label br{display:none}.principles h3{font-size:1.7rem}.principles p{font-size:1rem}}
@media(max-width:600px){.base-art.has-three .plane-fallback{visibility:visible}.hero-art{width:calc(100% + 56px);height:460px;top:auto;right:auto;position:relative;margin:23px -28px 0;opacity:1}.hero-art .painter-graph{mask-image:none}.hero-bottom{margin-top:28px}.base-art{height:570px;margin:5px -20px 18px}.art-caption{font-size:.75rem;bottom:-1px}.principles{display:block;min-height:0;border-top-width:2px}.principles article,.principles article+article,.principles article:first-child{padding:27px 0;border-left:none;display:grid;grid-template-columns:35px 1fr;gap:10px}.principles h3{font-size:1.9rem}.principles p{font-size:1.0625rem;max-width:100%}.principle-fold{right:-22px;bottom:-28px;width:190px;opacity:.1}.ai-note{display:block;padding-top:25px;border-top:2px solid #d5a34865}.ai-label{font-size:1.0625rem;margin-bottom:21px;gap:16px}.ai-label br{display:none}.ai-symbol{width:49px}.ai-note p{font-size:1.0625rem;line-height:1.8}.method-visual{display:none}.steps:before{width:2px;height:auto;bottom:105px;background:#d5a348;left:23px;top:23px}.steps li{padding-bottom:37px}.steps li:after{content:'';display:block;grid-column:2;height:110px;background-image:url('./plane-atlas.webp');background-size:200% 200%;background-repeat:no-repeat;opacity:.82;transform:perspective(650px) rotateY(-13deg) rotateZ(-3deg);margin:8px 0 2px;pointer-events:none}.steps li:nth-child(1):after{background-position:0 0}.steps li:nth-child(2):after{background-position:100% 0}.steps li:nth-child(3):after{background-position:0 100%}.steps li:nth-child(4):after{background-position:100% 100%}.step-node{grid-row:1/4}.steps h3{grid-row:1;grid-column:2}.steps p{grid-row:2;grid-column:2}.method-bottom{margin:20px 0 0;padding-top:28px;border-top-width:3px}.method-bottom h2{font-size:2.65rem;line-height:1.1;margin-bottom:20px}.method-bottom p{font-size:1.1875rem;line-height:1.75}.recovery-kicker{font-size:.8125rem;margin-bottom:17px}.ownership-art{height:400px;margin:12px -28px -6px}.ownership-art .painter-graph{width:120%;margin-left:-10%;mask-image:none}.contact-art{height:430px;width:calc(100% + 56px);margin:0 -28px}.contact-art .painter-graph{width:112%;margin-left:-6%;mask-image:none}.footer .footer-claim{font-size:1.9rem;line-height:1.25}.interlude-a{height:140px;margin-top:-20px;margin-bottom:0}.interlude-a img{width:520px;height:360px;right:-40%;top:-110px;opacity:.25}.interlude-a span{font-size:.75rem;letter-spacing:.025em;margin-left:-20px}.interlude-a span:before{width:26px;margin-right:13px}.interlude-b{height:155px}.interlude-b img{width:600px;height:400px;right:-37%;top:-105px;opacity:.2}.interlude-b span{font-size:2.1rem}.three-surface{display:none}.service-symbol{background:#f2f7f3}}
@media(prefers-reduced-motion:reduce){.art-node,.art-network{transform:none!important}.art-connection{stroke-dasharray:none!important;stroke-dashoffset:0!important}.node-halo{display:none}.method-sheet{transition:none}.art-signal{opacity:0!important}}
