@font-face{font-family:Bricolage;src:url("/assets/fonts/BricolageGrotesque.ttf") format("truetype");font-style:normal;font-weight:200 800;font-display:swap}
@font-face{font-family:Literata;src:url("/assets/fonts/Literata.ttf") format("truetype");font-style:normal;font-weight:200 800;font-display:swap}
:root{
  --night:#0d0a1a;--indigo:#15112b;--violet:#2d1743;--ink:#f5f2ff;
  --cyan:#56e4ff;--yellow:#dfff35;--orange:#ff7138;--pink:#ff5dba;
  --muted:#b9b2cc;--line:rgba(245,242,255,.22);
  --sans:Bricolage,"Trebuchet MS",sans-serif;--serif:Literata,Georgia,serif;
  --gutter:clamp(22px,6vw,100px);--measure:76ch;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--night);max-width:100%;overflow-x:hidden}
body{margin:0;max-width:100%;overflow-x:hidden;background:var(--night);color:var(--ink);font:clamp(17px,1.28vw,20px)/1.72 var(--sans)}
img{display:block;max-width:100%}a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:.08em}
button,input,select,textarea{font:inherit;color:inherit}button,a,select,input,textarea{touch-action:manipulation}
:focus-visible{outline:3px solid var(--yellow);outline-offset:5px}
::selection{background:var(--yellow);color:var(--night)}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;z-index:1000;left:18px;top:-100px;background:var(--yellow);color:var(--night);padding:10px 18px}.skip-link:focus{top:16px}

.edge-compass{position:relative;z-index:80}
.identity{position:fixed;z-index:82;left:24px;top:22px;color:#fff;text-decoration:none;mix-blend-mode:difference;font-weight:780;font-size:1.25rem;line-height:.9;letter-spacing:-.05em}
.identity span{display:block}.identity small{display:block;margin-top:7px;font-size:.52rem;line-height:1;letter-spacing:.16em;text-transform:uppercase}
.edge-nav{position:fixed;z-index:82;right:20px;top:50%;transform:translateY(-50%);display:flex;align-items:flex-end;flex-direction:column;gap:11px;color:#fff;mix-blend-mode:difference;font-size:.57rem;line-height:1;text-transform:uppercase;letter-spacing:.13em}
.edge-nav a{text-decoration:none}.edge-nav a:hover{color:var(--yellow)}
.menu-toggle{display:none}.mobile-menu{display:none}

.material-threshold,.detail-threshold,.index-threshold,.page-threshold{position:relative;min-height:100svh;overflow:hidden;background:#06050b}
.material-threshold>img,.detail-threshold>img,.index-threshold>img,.page-threshold>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(1.28) contrast(1.08)}
.material-threshold>img{object-position:50% 48%}
.threshold-wash{position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,5,16,.42),rgba(22,12,38,.08) 32%,rgba(8,6,18,.32) 58%,rgba(8,6,18,.95));z-index:1}
.threshold-wash:after{content:"";position:absolute;inset:0;background:linear-gradient(108deg,rgba(21,240,255,.20),transparent 30%,transparent 66%,rgba(255,90,25,.18));mix-blend-mode:screen}
.threshold-code,.threshold-trace{position:absolute;z-index:3;margin:0;color:#fff;font-size:.59rem;line-height:1.25;text-transform:uppercase;letter-spacing:.17em}
.threshold-code{top:28px;left:50%;transform:translateX(-50%);white-space:nowrap}.threshold-trace{left:var(--gutter);bottom:24px}
.threshold-voice{position:absolute;z-index:3;left:50%;bottom:9vh;transform:translateX(-50%);width:min(820px,76vw);text-align:center}
.threshold-voice>p:first-child{margin:0 0 12px;color:var(--cyan);font-size:.7rem;text-transform:uppercase;letter-spacing:.16em}
.threshold-voice h1{margin:0;font:500 clamp(2.4rem,5.3vw,5.2rem)/.98 var(--serif);letter-spacing:-.055em;text-shadow:0 2px 30px rgba(0,0,0,.5)}
.threshold-voice>p:not(:first-child){max-width:640px;margin:24px auto 20px;font-size:clamp(.92rem,1.2vw,1.12rem);line-height:1.55;text-shadow:0 2px 15px #000}
.field-action{display:inline-block;font-size:.7rem;font-weight:750;text-transform:uppercase;letter-spacing:.11em;text-decoration-color:var(--yellow);text-decoration-thickness:2px}
.field-action:hover{color:var(--yellow)}

.detail-voice,.index-threshold>div:last-child,.page-threshold>div:last-child{position:absolute;z-index:3;left:50%;bottom:12vh;transform:translateX(-50%);width:min(980px,78vw);text-align:center}
.detail-voice h1,.index-threshold h1,.page-threshold h1{margin:0;font:520 clamp(2.45rem,5.5vw,5.6rem)/.98 var(--serif);letter-spacing:-.055em;text-shadow:0 3px 30px #000}
.detail-voice p,.index-threshold>div:last-child p,.page-threshold>div:last-child p{max-width:720px;margin:28px auto 0;font-size:clamp(1rem,1.5vw,1.3rem);line-height:1.55;text-shadow:0 2px 18px #000}
.index-threshold .threshold-wash,.page-threshold .threshold-wash,.detail-threshold .threshold-wash{background:linear-gradient(180deg,rgba(5,4,12,.28),rgba(9,7,19,.18) 35%,rgba(9,7,19,.93))}

.signal-mark{margin:0 0 24px;color:var(--cyan);font-size:.62rem;line-height:1.3;text-transform:uppercase;letter-spacing:.17em}
.ability-tuning{position:relative;padding:18vh max(var(--gutter),10vw);background:linear-gradient(145deg,#29103e 0,#121137 44%,#0b1327 100%)}
.ability-tuning:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 15% 45%,rgba(255,92,183,.2),transparent 33%),radial-gradient(ellipse at 82% 30%,rgba(54,225,255,.16),transparent 30%);pointer-events:none}
.ability-tuning>*{position:relative}.ability-tuning h2{max-width:1100px;margin:0;font:520 clamp(2.1rem,4.6vw,4.7rem)/1.14 var(--serif);letter-spacing:-.04em}
.ability-tuning label{display:inline}.ability-tuning select{max-width:100%;border:0;border-bottom:3px solid var(--yellow);border-radius:0;background:transparent;color:var(--yellow);font:inherit;padding:0 .1em;cursor:pointer}
.ability-tuning option{background:var(--night);color:#fff;font:1rem var(--sans)}
.finder-answer{max-width:760px;margin:60px 0 0 24vw;color:var(--muted);font-family:var(--serif);font-size:1.08rem}.finder-answer a{color:#fff}

.course-intro{padding:15vh max(var(--gutter),10vw) 6vh;background:#080713}
.course-intro h2{margin:0;font:520 clamp(2.3rem,5vw,5rem)/1 var(--serif);letter-spacing:-.05em}
.course-intro>p:last-child{max-width:690px;margin:28px 0 0 18vw;color:var(--muted)}

.course-field{position:relative;background:#06050c}
.field-stage{position:sticky;z-index:1;top:0;height:100svh;overflow:hidden;background:#05050b}
.field-stage:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,3,13,.86),rgba(5,3,13,.18) 35%,rgba(5,3,13,.2) 65%,rgba(5,3,13,.84)),linear-gradient(0deg,rgba(5,3,13,.9),transparent 36%,rgba(5,3,13,.42))}
.field-stage>img{width:100%;height:100%;object-fit:cover;filter:saturate(1.3) contrast(1.12);transition:opacity .32s ease,filter .32s ease}
.field-reading{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%);width:min(860px,72vw);text-align:center;text-shadow:0 3px 28px #000}
.field-reading span{display:block;color:var(--yellow);font-size:.68rem;text-transform:uppercase;letter-spacing:.2em}
.field-reading strong{display:block;margin:18px 0;font:520 clamp(2.3rem,5.2vw,5.2rem)/1 var(--serif);letter-spacing:-.055em}
.field-reading small{font-size:.68rem;text-transform:uppercase;letter-spacing:.12em}
.course-signals{position:relative;z-index:3;list-style:none;margin:-100svh 0 0;padding:66vh max(var(--gutter),11vw) 18vh}
.course-signals li{min-height:18vh;display:flex;align-items:center;border-bottom:1px solid rgba(255,255,255,.2)}
.course-signals a{display:block;width:100%;padding:4vh 0;color:#fff;text-decoration:none;text-shadow:0 2px 16px #000;transition:transform .2s ease,color .2s ease}
.course-signals a:hover,.course-signals a:focus{color:var(--yellow);transform:translateX(2vw)}
.course-signals small{display:block;margin-bottom:8px;font-size:.56rem;text-transform:uppercase;letter-spacing:.15em}
.course-signals span{font:500 clamp(1.65rem,3.8vw,4rem)/1.08 var(--serif);letter-spacing:-.04em}

.reading-current{position:relative;padding:15vh max(var(--gutter),11vw);background:var(--indigo)}
.reading-current.current-1{background:#111e30}.reading-current.current-2{background:#341332}.reading-current.current-3{background:#14241f}
.chapter-copy{max-width:1120px;margin:0 auto}
.current-1 .chapter-copy{transform:translateX(5vw)}.current-2 .chapter-copy{transform:translateX(-4vw)}
.chapter-copy h2{max-width:900px;margin:0 0 54px;font:520 clamp(2.25rem,4.5vw,4.8rem)/1.04 var(--serif);letter-spacing:-.045em}
.chapter-copy>p:not(.signal-mark):not(.practice-note){max-width:var(--measure);margin:0 0 25px;font-family:var(--serif);line-height:1.78}
.current-1 .chapter-copy>p:not(.signal-mark):not(.practice-note),.current-3 .chapter-copy>p:not(.signal-mark):not(.practice-note){margin-left:auto}
.practice-note{max-width:720px;margin:58px 0 0 17vw;padding-top:20px;border-top:2px solid var(--yellow);color:var(--muted);font-size:.83rem}.practice-note strong{display:block;margin-bottom:8px;color:var(--yellow);font-size:.58rem;text-transform:uppercase;letter-spacing:.14em}
.material-surface{position:relative;width:100vw;height:min(82vh,860px);margin:13vh 0 -15vh calc(50% - 50vw);overflow:hidden;background:#05050b}
.material-surface:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(6,5,12,.86));mix-blend-mode:multiply}
.material-surface img{width:100%;height:100%;object-fit:cover;filter:saturate(1.35) contrast(1.1)}
.material-surface figcaption{position:absolute;z-index:2;left:max(var(--gutter),11vw);bottom:5vh;max-width:620px;margin:0;color:#fff;font:500 clamp(1.05rem,2vw,1.65rem)/1.4 var(--serif);text-shadow:0 2px 18px #000}

.fact-current{padding:14vh max(var(--gutter),12vw);background:linear-gradient(135deg,#22103d,#0c1f32)}
.fact-current p{max-width:1000px;margin:0 0 38px;font:500 clamp(1.45rem,2.8vw,2.8rem)/1.35 var(--serif)}.fact-current p:nth-child(2){margin-left:12vw}.fact-current p span{color:var(--cyan)}
.save-course{margin:10px 24px 0 0;padding:8px 0;border:0;border-bottom:3px solid var(--pink);background:transparent;color:#fff;font-weight:740;cursor:pointer}

.editorial-current,.index-current{padding:16vh max(var(--gutter),10vw);background:#090713}
.editorial-current h2{max-width:900px;margin:0 0 10vh;font:520 clamp(2.35rem,5vw,5rem)/1 var(--serif);letter-spacing:-.05em}
.editorial-current ol,.field-index{list-style:none;margin:0;padding:0}
.editorial-current li,.field-index li{border-bottom:1px solid var(--line)}
.editorial-current a,.field-index a{display:block;padding:30px 0;text-decoration:none;transition:padding .2s ease,color .2s ease}
.editorial-current a:hover,.field-index a:hover{padding-left:2vw;color:var(--yellow)}
.editorial-current small,.field-index small{display:block;margin-bottom:8px;color:var(--cyan);font-size:.57rem;text-transform:uppercase;letter-spacing:.15em}
.editorial-current span,.field-index span{display:block;font:500 clamp(1.4rem,3vw,3.2rem)/1.1 var(--serif);letter-spacing:-.035em}
.editorial-current>.field-action{margin-top:70px}
.field-index em{display:block;max-width:760px;margin:12px 0 0 18vw;color:var(--muted);font-style:normal;font-size:.88rem}

.service-current{padding:15vh 0 0;background:#0c0917}.service-current>.signal-mark,.service-current>h2,.service-current>.field-action{margin-left:max(var(--gutter),10vw);margin-right:max(var(--gutter),10vw)}
.service-current>h2{max-width:900px;margin-top:0;margin-bottom:11vh;font:520 clamp(2.35rem,5vw,5rem)/1 var(--serif);letter-spacing:-.05em}
.service-current article{position:relative;min-height:78vh;display:flex;align-items:flex-end;padding:10vh max(var(--gutter),11vw);overflow:hidden;background:#111 center/cover no-repeat;background-image:linear-gradient(180deg,rgba(7,5,16,.08),rgba(7,5,16,.88)),var(--service-image)}
.service-current article:nth-of-type(even){justify-content:flex-end}.service-current article>div{position:relative;z-index:2;max-width:760px;text-shadow:0 2px 20px #000}
.service-current article small{color:var(--yellow);font-size:.64rem;text-transform:uppercase;letter-spacing:.17em}.service-current article h3{margin:12px 0 20px;font:520 clamp(2.2rem,4.8vw,4.8rem)/1 var(--serif);letter-spacing:-.05em}.service-current article p{max-width:600px}
.service-current>.field-action{margin-top:8vh;margin-bottom:12vh}

.quiet-handoff{min-height:72vh;padding:18vh max(var(--gutter),14vw);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:15px;background:linear-gradient(145deg,#38113d,#0d2230)}
.quiet-handoff p{max-width:880px;margin:0 0 35px;font:500 clamp(2.6rem,5.6vw,5.8rem)/1 var(--serif);letter-spacing:-.05em}.quiet-handoff a{font-size:.82rem;font-weight:700}

.enquiry-space,.saved-space{padding:15vh max(var(--gutter),15vw);background:linear-gradient(135deg,#17102d,#092331)}
.enquiry-space h2{max-width:900px;margin:0;font:520 clamp(2.3rem,4.8vw,4.8rem)/1.05 var(--serif);letter-spacing:-.045em}.enquiry-space form{max-width:900px;margin-top:10vh}
.enquiry-space label{display:block;margin:0 0 44px;color:var(--muted);font-size:.69rem;text-transform:uppercase;letter-spacing:.12em}
.enquiry-space input:not([type=checkbox]),.enquiry-space select,.enquiry-space textarea,.search-threshold input{display:block;width:100%;margin-top:8px;padding:12px 0;border:0;border-bottom:2px solid var(--cyan);border-radius:0;background:transparent;color:#fff;font:1.05rem/1.5 var(--sans);resize:vertical}
.enquiry-space select option{background:var(--night)}.enquiry-space .consent{display:flex;gap:13px;align-items:flex-start;text-transform:none;letter-spacing:0;font-size:.86rem}
.enquiry-space button,.search-threshold button{border:0;background:var(--yellow);color:var(--night);padding:14px 24px;font-weight:760;cursor:pointer}
.saved-space ol{padding:0;list-style:none}.saved-space li{margin:20px 0}.saved-space button{border:0;border-bottom:1px solid var(--pink);background:transparent;color:var(--pink);cursor:pointer}

.search-threshold{min-height:78vh;padding:18vh max(var(--gutter),14vw);background:radial-gradient(ellipse at 70% 20%,rgba(83,224,255,.18),transparent 35%),linear-gradient(145deg,#30113e,#091a2d)}
.search-threshold h1{max-width:950px;margin:0 0 8vh;font:520 clamp(2.8rem,6vw,6rem)/1 var(--serif);letter-spacing:-.055em}
.search-threshold form{display:flex;align-items:flex-end;gap:22px;max-width:900px}.search-threshold label{flex:1}.search-threshold input{font-size:1.25rem}.search-threshold>p:last-child{margin-top:30px;color:var(--muted)}

.admin{min-height:100vh;padding:16vh max(var(--gutter),8vw);background:#111026}.admin h1{margin:0;font:520 clamp(2.7rem,5vw,5rem)/1 var(--serif)}.admin table{width:100%;margin-top:60px;border-collapse:collapse;font-size:.8rem}.admin th,.admin td{padding:15px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.admin select,.admin button{padding:6px;background:transparent;border:1px solid var(--cyan)}

.site-foot{position:relative;min-height:86vh;padding:18vh max(var(--gutter),11vw) 5vh;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(rgba(8,6,17,.72),rgba(8,6,17,.94)),url("/assets/images/material-yarns.jpg") center/cover no-repeat}
.foot-whisper{max-width:950px;margin:0 0 45px;font:500 clamp(2.7rem,6vw,6.2rem)/.98 var(--serif);letter-spacing:-.055em}.foot-whisper em{color:var(--yellow);font-style:normal}
.site-foot nav{display:flex;flex-wrap:wrap;gap:14px 28px;margin:100px 0 35px;font-size:.63rem;text-transform:uppercase;letter-spacing:.11em}.site-foot small{color:var(--muted);font-size:.58rem;text-transform:uppercase;letter-spacing:.12em}

@media(max-width:950px){
  .edge-nav{display:none}.menu-toggle{display:block;position:fixed;z-index:101;right:18px;top:18px;border:0;border-bottom:2px solid var(--yellow);background:transparent;color:#fff;padding:6px 0;font-weight:760;mix-blend-mode:difference}
  .mobile-menu{display:flex;visibility:hidden;opacity:0;pointer-events:none;position:fixed;z-index:100;inset:0;padding:13vh 9vw 8vh;flex-direction:column;justify-content:center;gap:10px;background:linear-gradient(rgba(9,6,20,.68),rgba(9,6,20,.94)),url("/assets/images/material-threads.jpg") center/cover no-repeat;transition:.2s}
  .mobile-menu.is-open{visibility:visible;opacity:1;pointer-events:auto}.mobile-menu p{max-width:500px;color:var(--cyan)}.mobile-menu a{font:500 clamp(1.7rem,7vw,3.3rem)/1.2 var(--serif);text-decoration:none}
}
@media(max-width:700px){
  body{font-size:17px}.identity{left:18px;top:18px}.threshold-code{top:72px;font-size:.5rem}.threshold-trace{left:20px;bottom:18px;font-size:.48rem}
  .material-threshold{min-height:100svh}.material-threshold>img{object-position:56% center}
  .threshold-voice,.detail-voice,.index-threshold>div:last-child,.page-threshold>div:last-child{bottom:10vh;width:calc(100% - 40px)}
  .threshold-voice h1,.detail-voice h1,.index-threshold h1,.page-threshold h1{font-size:clamp(2.25rem,11.5vw,4rem)}
  .threshold-voice>p:not(:first-child),.detail-voice p,.index-threshold>div:last-child p,.page-threshold>div:last-child p{font-size:.92rem}
  .ability-tuning{padding:13vh 20px}.ability-tuning h2{font-size:clamp(1.85rem,8.5vw,3.4rem)}.finder-answer{margin:45px 0 0}
  .course-intro{padding:12vh 20px 5vh}.course-intro>p:last-child{margin-left:0}
  .field-stage{height:78svh}.field-reading{width:calc(100% - 40px)}.field-reading strong{font-size:clamp(2rem,10vw,3.7rem)}
  .course-signals{margin-top:-78svh;padding:50vh 20px 12vh}.course-signals li{min-height:17vh}.course-signals a:hover,.course-signals a:focus{transform:none}
  .reading-current{padding:12vh 20px}.current-1 .chapter-copy,.current-2 .chapter-copy{transform:none}
  .chapter-copy h2{margin-bottom:40px;font-size:clamp(2rem,9.5vw,3.7rem)}.chapter-copy>p:not(.signal-mark):not(.practice-note),.current-1 .chapter-copy>p:not(.signal-mark):not(.practice-note),.current-3 .chapter-copy>p:not(.signal-mark):not(.practice-note){width:auto;max-width:none;margin-left:0}
  .practice-note{margin:45px 0 0}.material-surface{height:65vh;margin-top:10vh;margin-bottom:-12vh}.material-surface figcaption{left:20px;right:20px;bottom:28px}
  .fact-current{padding:11vh 20px}.fact-current p{font-size:clamp(1.35rem,6.8vw,2.4rem)}.fact-current p:nth-child(2){margin-left:0}
  .editorial-current,.index-current{padding:12vh 20px}.field-index em{margin-left:0}.editorial-current a:hover,.field-index a:hover{padding-left:0}
  .service-current>.signal-mark,.service-current>h2,.service-current>.field-action{margin-left:20px;margin-right:20px}.service-current article{min-height:70vh;padding:9vh 20px}.service-current article:nth-of-type(even){justify-content:flex-start}
  .quiet-handoff{padding:13vh 20px}.quiet-handoff p{font-size:clamp(2.2rem,10vw,4rem)}
  .enquiry-space,.saved-space{padding:12vh 20px}.search-threshold{padding:16vh 20px 12vh}.search-threshold h1{font-size:clamp(2.6rem,12vw,4.6rem)}.search-threshold form{flex-direction:column;align-items:stretch}
  .admin{padding:14vh 12px;overflow:auto}.site-foot{padding:14vh 20px 35px}.site-foot nav{margin-top:70px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

