/* Spatial library treatment. Same typography, colours and reading surfaces. */
.hero{position:relative;isolation:isolate;padding-top:88px;padding-bottom:82px;gap:1%;grid-template-columns:1.08fr 1fr}
.hero:before{content:"";position:absolute;z-index:-1;inset:-45px -5vw -35px 30%;background:radial-gradient(ellipse at 72% 39%,#8ea5aa24,transparent 64%);pointer-events:none}
.method-art{height:540px;background:none;perspective:1600px}
.method-art:before{content:"";position:absolute;left:8%;right:-1%;bottom:60px;height:90px;transform:rotate(-6deg);background:radial-gradient(ellipse,#000c 3%,#0006 40%,transparent 71%);pointer-events:none}
.method-art:after{content:"";position:absolute;left:5%;right:0;bottom:70px;height:1px;background:linear-gradient(90deg,transparent,#8ea5aa47 47%,transparent);transform:rotate(-6deg);pointer-events:none}
.art-label{top:0;left:7%;color:var(--muted)}
.document-planes{width:94%;height:445px;margin:38px auto 0;perspective:1500px;transform:rotateX(var(--pointer-x,0deg)) rotateY(var(--pointer-y,0deg));transition:transform 500ms cubic-bezier(.18,.7,.22,1)}
.plane{--volume-depth:28px;--half-depth:14px;--face-light:#3a3b38;position:absolute;left:0;top:140px;width:85%;height:280px;padding:0;border:0;border-radius:3px;background:none;box-shadow:none;overflow:visible;transform-style:preserve-3d;transform:rotateX(14deg) rotateY(-24deg) rotateZ(-9deg);transition:transform 500ms cubic-bezier(.18,.7,.22,1)}
.plane:after{display:none}
.plane:before{content:"";position:absolute;inset:0;border:1px solid #4d5356;border-radius:3px 8px 8px 3px;background:#171a1b;transform:translateZ(calc(-1 * var(--half-depth)));box-shadow:0 18px 32px #000a}
.plane.front{left:0;top:140px;z-index:3;background:none;border:0;box-shadow:none;--face-light:#4d5356}
.plane.middle{left:7%;top:77px;z-index:2;background:none;border:0;box-shadow:none;transform:rotateX(14deg) rotateY(-24deg) rotateZ(-1deg);--face-light:#3a3b38}
.plane.back{left:14%;top:8px;z-index:1;background:none;border:0;box-shadow:none;transform:rotateX(14deg) rotateY(-24deg) rotateZ(7deg);--face-light:#202426}
.volume-face{position:absolute;inset:0;overflow:hidden;padding:29px 30px 25px 40px;border:1px solid #8ea5aab3;border-radius:3px 8px 8px 3px;transform:translateZ(var(--half-depth));background:linear-gradient(90deg,#0009,transparent 4%,#b8b2a61f 5%,#0005 6.5%,transparent 9%),linear-gradient(125deg,var(--face-light),#202426 58%,#171a1b);box-shadow:inset 0 1px 0 #e8e2d84a,inset -1px -2px 0 #0009}
.volume-face:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at var(--light-x,30%) var(--light-y,15%),#e8e2d822,transparent 65%);mix-blend-mode:screen}
.volume-face>span:first-child{font:10px/1.6 var(--mono);letter-spacing:.14em;color:var(--muted)}
.plane .volume-face b{font-size:clamp(38px,4vw,59px);margin-top:34px;color:var(--ink);text-shadow:0 1px 0 #000b}
.plane.middle .volume-face b,.plane.back .volume-face b{font-size:38px;margin-top:24px;color:var(--muted)}
.volume-face .art-rule{margin-top:23px;background:linear-gradient(90deg,#b8b2a694,#8ea5aa20)}
.volume-face p{font-size:12px;max-width:235px;margin-top:18px;color:var(--ink)}
.volume-face .art-symbol{right:25px;bottom:21px;font-size:36px;color:var(--muted)}
.volume-pages,.volume-bottom,.volume-spine{display:block;position:absolute;pointer-events:none;backface-visibility:visible;font-style:normal}
.volume-pages{top:5px;left:calc(100% - var(--half-depth));width:var(--volume-depth);height:calc(100% - 10px);transform:rotateY(90deg);background:repeating-linear-gradient(90deg,#b8b2a6 0px,#b8b2a6 1px,#8ea5aa 1px,#8ea5aa 2px,#4d5356 2px,#4d5356 3px);border:1px solid #4d5356;box-shadow:inset 0 0 7px #0007}
.volume-bottom{left:4px;top:calc(100% - var(--half-depth));height:var(--volume-depth);width:calc(100% - 8px);transform:rotateX(90deg);background:repeating-linear-gradient(0deg,#8ea5aa 0px,#8ea5aa 1px,#3a3b38 1px,#3a3b38 3px);border:1px solid #202426;box-shadow:inset 0 0 6px #0008}
.volume-spine{top:0;left:calc(-1 * var(--half-depth));width:var(--volume-depth);height:100%;transform:rotateY(90deg);background:linear-gradient(90deg,#171a1b,#4d5356 35%,#202426 70%);border:1px solid #3a3b38;border-radius:3px}
.art-tabs{bottom:0;left:5%;right:0;background:linear-gradient(0deg,#0b0e0f,transparent);border-top-color:#8ea5aa66}
.art-tabs button{font-size:12px}
.route-feature{background:radial-gradient(ellipse at 10% 0,#3a3b3843,transparent 65%),var(--raised);border-color:#4d5356;box-shadow:inset 0 1px 0 #b8b2a62e,0 4px 0 #0b0e0f,0 5px 0 #3a3b385e,0 23px 45px #0006}
.discipline-grid{border:0;gap:18px}
.discipline-card{position:relative;border:1px solid #3a3b38;border-radius:7px;background:linear-gradient(135deg,#3a3b382b,#171a1b 65%);box-shadow:inset 0 1px 0 #b8b2a61c,0 3px 0 #0b0e0f,0 4px 0 #3a3b3847,0 12px 22px #0005}
.discipline-card .eyebrow{color:var(--muted)}
.open-feature{box-shadow:inset 0 1px 0 #b8b2a62e,0 20px 40px #0006}
.book-grid{column-gap:45px;row-gap:60px;padding:25px 10px 24px}
.book-card{perspective:1200px;padding-left:8px;padding-right:22px}
.book-card:after{height:8px;bottom:0;background:linear-gradient(180deg,#4d53566b,#202426 45%,#0b0e0f);box-shadow:0 12px 17px #0009;border-radius:2px}
.book-object{isolation:auto;transform:perspective(1100px) rotateY(-18deg) rotateZ(-1deg);border-color:#8ea5aaa6;background:linear-gradient(90deg,#000b,transparent 5%,#b8b2a622 7%,#0008 9%,transparent 13%),linear-gradient(125deg,#3a3b38,#202426 65%);box-shadow:inset 1px 1px 0 #e8e2d84a,inset -1px -1px 0 #000b,4px 3px 0 #171a1b,10px 5px 0 #3a3b38,12px 7px 0 #171a1b,24px 30px 30px #000c}
.book-object:before{right:-12px;width:11px;top:7px;bottom:2px;z-index:-1;opacity:1;transform:skewY(15deg);background:repeating-linear-gradient(0deg,#8ea5aa 0,#8ea5aa 1px,#3a3b38 1px,#3a3b38 3px);border-right:1px solid #b8b2a666;box-shadow:inset 3px 0 5px #0008}
.book-card:nth-child(3n+2) .book-object{background:linear-gradient(90deg,#000b,transparent 5%,#b8b2a621 7%,#0008 9%,transparent 13%),linear-gradient(140deg,#4d5356,#202426 65%)}
.book-card:nth-child(3n) .book-object{background:linear-gradient(90deg,#000b,transparent 5%,#b8b2a61c 7%,#0008 9%,transparent 13%),linear-gradient(130deg,#3a3b38,#0b0e0f 80%)}
.book-object strong{color:var(--ink)}
@media(hover:hover) and (pointer:fine){html[data-motion=on] .book-card:hover .book-object{transform:perspective(1100px) rotateY(-9deg) rotateZ(0) translateY(-9px);box-shadow:inset 1px 1px 0 #e8e2d84a,10px 5px 0 #3a3b38,12px 7px 0 #171a1b,27px 38px 36px #000b}.discipline-card:hover{background:linear-gradient(135deg,#3a3b3873,#171a1b 80%);border-color:#8ea5aa}}
@media(max-width:1100px){.hero{padding-top:65px;grid-template-columns:1.08fr 1fr}.method-art{height:455px}.document-planes{height:370px;margin-top:30px}.plane{height:238px}.plane.front{top:114px}.plane.middle{top:61px}.plane.back{top:5px}.volume-face{padding:23px 22px 20px 31px}.plane .volume-face b{font-size:42px;margin-top:28px}.volume-face p{font-size:11px}.volume-face .art-rule{margin-top:18px}.book-grid{column-gap:33px}}
@media(max-width:850px){.hero{grid-template-columns:1fr;gap:35px}.method-art{height:470px;max-width:555px;margin:0 auto;justify-self:center}.document-planes{height:390px}.plane{height:252px}.plane.front{top:123px}.plane.middle{top:65px}.plane.back{top:0}.plane .volume-face b{font-size:47px}.hero:before{inset:25% -5vw 0 5%}.book-grid{column-gap:26px}.book-card{padding-right:16px}}
@media(max-width:600px){.hero{padding-top:42px;padding-bottom:45px;gap:38px}.method-art{height:352px;max-width:440px}.document-planes{height:295px;width:93%;margin-top:25px}.plane{--volume-depth:18px;--half-depth:9px;height:186px;width:84%;transform:rotateX(14deg) rotateY(-23deg) rotateZ(-8deg)}.plane.front{top:90px}.plane.middle{top:46px}.plane.back{top:0}.volume-face{padding:18px 17px 17px 23px}.volume-face>span:first-child{font-size:8px;letter-spacing:.1em}.plane .volume-face b{font-size:clamp(30px,8.4vw,39px);margin-top:25px}.plane.middle .volume-face b,.plane.back .volume-face b{font-size:27px}.volume-face .art-rule{margin-top:15px}.volume-face p{font-size:10px;margin-top:13px;max-width:175px}.volume-face .art-symbol{font-size:25px;right:15px;bottom:16px}.art-label{font-size:9px;left:5%;top:0}.art-tabs{left:3%;right:3%;padding-top:8px}.art-tabs button{font-size:11px}.method-art:before{bottom:46px;height:65px}.method-art:after{bottom:50px}.discipline-grid{gap:16px}.book-grid{padding:15px 0 20px;column-gap:24px;row-gap:35px}.book-card{padding-right:12px;padding-left:0}.book-object{box-shadow:inset 1px 1px 0 #e8e2d831,6px 3px 0 #3a3b38,8px 5px 0 #171a1b,14px 20px 24px #000b}.book-object:before{width:7px;right:-8px}.book-card:after{height:6px}.big-book{width:72%}}
@media(hover:none),(pointer:coarse){.book-card:hover .book-object{transform:perspective(1100px) rotateY(-18deg) rotateZ(-1deg)}}
html[data-motion=off] .document-planes{transform:none}html[data-motion=off] .book-card:hover .book-object{transform:perspective(1100px) rotateY(-18deg) rotateZ(-1deg)}
@media(prefers-reduced-motion:reduce){.book-card:hover .book-object{transform:perspective(1100px) rotateY(-18deg) rotateZ(-1deg)!important}}
