body{overflow-x:clip}section[id]{scroll-margin-top:95px}.chapter{position:relative;isolation:isolate;overflow:clip}.display{font-family:'Hubot Wide',Geist,sans-serif;font-weight:500;font-size:clamp(46px,6vw,98px);line-height:1.05;letter-spacing:-.055em;margin:0;text-wrap:balance}.section-name{font-size:13px;line-height:1.4;margin:0 0 25px}.text-action{display:inline-flex;align-items:center;gap:30px;min-height:48px;padding:8px 0;position:relative;font-size:14px}.text-action:after{content:'';position:absolute;bottom:4px;left:0;height:1px;width:30px;background:currentColor;transition:width .45s var(--ease)}.text-action:hover:after,.text-action:focus-visible:after{width:100%}.text-action span{display:inline-block;font-size:25px;transition:transform .4s var(--ease)}.text-action:hover span{transform:translateX(7px)}
/* The manufacturing samples hand their material over to a field of mineral particles. */
.particle-chapter{margin-top:-100svh;min-height:125svh;padding:150px var(--edge) 60px;background:linear-gradient(color-mix(in srgb,var(--home-dark) 0.0%,transparent),var(--home-dark) 16%);color:var(--home-light)}.particle-art{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}.particle-art canvas{width:100%;height:100%;display:block}.particle-heading{position:relative;max-width:900px}.particle-heading .display span{color:var(--home-muted)}.particle-heading>p:last-child{max-width:380px;font-size:16px;line-height:1.6;margin:30px 0 0}.grade-selector{display:flex;gap:30px;position:relative;margin-top:clamp(180px,27vh,300px);border-bottom:1px solid color-mix(in srgb,var(--home-muted) 23.14%,transparent);padding-bottom:0}.grade-selector button{position:relative;background:none;color:var(--home-muted);padding:18px 0 23px;font-size:15px;min-height:48px}.grade-selector button:after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--home-light);transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease)}.grade-selector button[aria-selected=true]{color:var(--home-light)}.grade-selector button[aria-selected=true]:after,.grade-selector button:hover:after{transform:scaleX(1)}.grade-description{max-width:660px;min-height:180px;padding:32px 0 0}.grade-description h3{font-family:'Hubot Wide',Geist,sans-serif;font-size:24px;font-weight:500;letter-spacing:-.035em;margin:0 0 13px}.grade-description p{font-size:15px;line-height:1.6;color:var(--home-muted);max-width:570px;margin:0}.grade-description .text-action{margin-top:10px}.process-route{display:flex;justify-content:space-between;gap:20px;position:relative;border-top:1px solid color-mix(in srgb,var(--home-muted) 20.78%,transparent);margin-top:45px;padding:25px 0;color:var(--home-muted);font-size:13px}.process-route span{position:relative}.process-route span:not(:last-child):after{content:'→';position:absolute;right:-45px;color:var(--home-quiet)}.particle-loading .particle-art{background:radial-gradient(ellipse at 72% 42%,color-mix(in srgb,var(--home-slate-lit) 26.67%,transparent),transparent 45%)}
/* Broad typographic rows keep the evidence readable and the composition open. */
.quality-chapter{background:var(--home-light);color:var(--home-ink);padding:110px var(--edge) 115px;border-radius:28px 28px 0 0;margin-top:-24px;z-index:3}.quality-intro{max-width:980px;margin:0 auto 75px;text-align:center}.quality-intro>p:last-child{max-width:530px;margin:26px auto 0;line-height:1.65;font-size:16px;color:var(--home-secondary)}.quality-lines{max-width:1180px;margin:auto}.quality-lines details{border-top:1px solid color-mix(in srgb,var(--home-edge) 27.06%,transparent)}.quality-lines details:last-child{border-bottom:1px solid color-mix(in srgb,var(--home-edge) 27.06%,transparent)}.quality-lines summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:32px;padding:30px 0;font-family:'Hubot Wide',Geist,sans-serif;font-weight:500;font-size:clamp(21px,2.45vw,38px);letter-spacing:-.045em;line-height:1.2}.quality-lines summary::-webkit-details-marker{display:none}.quality-lines summary i{height:28px;width:28px;border:1px solid color-mix(in srgb,var(--home-edge) 43.92%,transparent);border-radius:50%;flex-shrink:0;position:relative;transition:background .3s,transform .4s}.quality-lines summary i:before,.quality-lines summary i:after{content:'';position:absolute;left:7px;right:7px;top:12px;height:1px;background:var(--home-ink)}.quality-lines summary i:after{transform:rotate(90deg);transition:transform .3s}.quality-lines [open] summary i{background:var(--home-inset);transform:rotate(180deg)}.quality-lines [open] summary i:after{transform:rotate(0deg)}.quality-answer{padding:0 6vw 34px 0;animation:answer-enter .4s var(--ease)}.quality-answer p{max-width:700px;margin:0;font-size:16px;line-height:1.7;color:var(--home-secondary)}.analysis-fields{display:flex;flex-wrap:wrap;gap:12px 35px;margin-top:25px;font-size:13px}.analysis-fields span:before{content:'✓';margin-right:9px;color:var(--home-secondary)}@keyframes answer-enter{from{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:none}}
/* Real site photography is a subject with space around it, not wallpaper. */
.origin-chapter{background:var(--home-light);color:var(--home-ink);padding:100px var(--edge) 110px}.origin-title{position:relative;z-index:2;text-align:center;margin-bottom:-2vw}.origin-title h2{font-family:'Hubot Wide',Geist,sans-serif;font-size:clamp(45px,6.9vw,112px);line-height:1.07;letter-spacing:-.055em;font-weight:500;margin:0}.origin-title h2 span{color:var(--home-quiet)}.mine-window{position:relative;margin:0 auto;max-width:1500px;aspect-ratio:2.28;overflow:hidden;transform:perspective(1800px) rotateX(calc(var(--origin-shift,0) * 2deg));transform-origin:50% 0;clip-path:inset(0 1.8% round 3px)}.mine-window img{width:100%;height:118%;object-fit:cover;object-position:center 57%;transform:translateY(calc(var(--origin-shift,0) * -5%));filter:saturate(.55) contrast(1.07);display:block}.mine-window:after{content:'';position:absolute;inset:70% 0 0;background:linear-gradient(transparent,color-mix(in srgb,var(--home-dark) 63.14%,transparent))}.mine-window figcaption{position:absolute;bottom:25px;left:40px;color:#fff;z-index:2;font-size:13px}.origin-story{max-width:840px;text-align:center;margin:45px auto 60px}.origin-story p{font-size:19px;line-height:1.6;margin:0}.origin-story p+p{font-size:15px;color:var(--home-secondary);max-width:640px;margin:20px auto 0}.reserve-facts{display:flex;justify-content:space-around;gap:25px;max-width:1100px;margin:auto;border-top:1px solid color-mix(in srgb,var(--home-edge) 31.37%,transparent);padding-top:35px}.reserve-facts p{margin:0}.reserve-facts strong{display:block;font-family:'Hubot Wide',Geist,sans-serif;font-weight:500;font-size:clamp(33px,4vw,68px);line-height:1;letter-spacing:-.055em}.reserve-facts strong>span{font-size:.65em}.reserve-facts p>span{display:block;font-size:13px;margin-top:15px;color:var(--home-secondary)}
.supply-chapter{background:radial-gradient(ellipse at 76% 34%,var(--home-slate-lit),var(--home-slate) 78%);color:var(--home-light);min-height:1000px;padding:105px var(--edge) 85px;position:relative}.supply-map-wrap{position:absolute;width:67%;max-width:1100px;right:0;top:70px;opacity:.9;z-index:-1;transform:perspective(1500px) rotateX(14deg) rotateZ(-4deg);transform-origin:center}.supply-map{display:block;width:100%;height:auto;stroke-width:1;overflow:visible}.state-outline{stroke:color-mix(in srgb,var(--home-edge) 37.65%,transparent);fill:color-mix(in srgb,var(--home-slate-lit) 9.02%,transparent)}.state-outline.is-idaho{fill:color-mix(in srgb,var(--home-stone) 18.82%,transparent);stroke:var(--home-stone);stroke-width:1.8}.supply-radius{fill:color-mix(in srgb,var(--home-stone) 12.55%,transparent);stroke:var(--home-stone);stroke-dasharray:3 8;stroke-width:1.5}.supply-origin{fill:var(--home-stone);stroke:none}.supply-origin-halo{fill:url(#supply-glow);stroke:none;transform-box:fill-box;transform-origin:center;animation:map-pulse 5s ease-out infinite}.supply-map text{font-family:Geist,Arial,sans-serif;fill:var(--home-muted);stroke:none;font-size:13px}.supply-map text.map-home{font-size:12px;fill:var(--home-chalk)}.supply-heading{max-width:750px}.supply-heading .display{font-size:clamp(44px,5.1vw,82px)}.supply-radius-copy{margin-top:90px;position:relative;width:max-content}.supply-radius-copy strong{font-family:'Hubot Wide',Geist,sans-serif;font-size:clamp(85px,10vw,165px);line-height:1;letter-spacing:-.07em;font-weight:500}.supply-radius-copy strong span{font-size:.27em;margin-left:.15em;letter-spacing:-.03em}.supply-radius-copy p{font-size:15px;margin:14px 0}.supply-detail{max-width:510px;margin-top:32px}.supply-detail p{font-size:15px;line-height:1.65;color:var(--home-muted);margin:0 0 15px}.supply-detail p:first-child{color:var(--home-light);font-size:18px;max-width:440px}.supply-detail .text-action{margin-top:5px}@keyframes map-pulse{0%{transform:scale(.5);opacity:.6}80%,100%{transform:scale(1.7);opacity:0}}
.start-chapter{background:var(--home-start);color:var(--home-ink);padding:115px var(--edge) 140px}.start-heading{text-align:center}.start-steps{list-style:none;margin:75px auto 0;padding:0;max-width:1250px;display:grid;grid-template-columns:repeat(3,1fr);gap:60px}.start-steps li{position:relative;border-top:1px solid color-mix(in srgb,var(--home-edge) 40.0%,transparent);padding-top:28px}.step-number{display:block;font-family:'Hubot Wide',Geist,sans-serif;color:var(--home-quiet);font-size:74px;line-height:1;letter-spacing:-.07em}.start-steps h3{font-family:'Hubot Wide',Geist,sans-serif;font-weight:500;letter-spacing:-.04em;font-size:clamp(24px,2.25vw,36px);line-height:1.15;margin:30px 0 20px}.start-steps p{font-size:15px;color:var(--home-secondary);line-height:1.65;margin:0;max-width:320px}.start-steps li:nth-child(2){margin-top:55px}.start-steps li:nth-child(3){margin-top:110px}
.contact-chapter{padding:110px var(--edge) 70px;background:radial-gradient(ellipse at 50% 40%,var(--home-slate-lit),var(--home-dark) 80%);color:var(--home-light);text-align:center}.contact-chapter .display{font-size:clamp(48px,7.5vw,120px)}.contact-chapter .display>span{color:var(--home-stone)}.contact-intro{font-size:17px;line-height:1.65;margin:30px auto;max-width:630px;color:var(--home-muted)}.consultation-button{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;min-height:68px;padding:15px 24px 15px 30px;background:var(--home-light);color:var(--home-ink);clip-path:var(--cut);font-size:15px;transition:background .4s,transform .4s var(--ease)}.consultation-button svg{height:25px;width:25px;transition:transform .4s var(--ease)}.consultation-button:hover{background:var(--home-chalk);transform:translateY(-3px)}.consultation-button:hover svg{transform:rotate(-12deg)}.contact-number{display:block;width:max-content;margin:20px auto 0;font-size:16px;letter-spacing:.01em;color:var(--home-muted)}.contact-number:hover{text-decoration:underline;text-underline-offset:4px}.contact-locations{display:flex;justify-content:center;gap:12vw;margin:80px 0 0}.contact-locations address{font-style:normal;font-size:14px;line-height:1.65;color:var(--home-muted)}.contact-locations address span{display:block;margin-bottom:12px;color:var(--home-light);font-size:13px}
/* Later chapters set contrast without affecting the approved mineral's lighting. */
body[data-home-theme=light] .header{--header-ink:var(--home-ink)!important;background:linear-gradient(color-mix(in srgb,var(--home-light) 90.98%,transparent),color-mix(in srgb,var(--home-light) 0.0%,transparent))}body[data-home-theme=light] .header .brand-dark{opacity:1!important}body[data-home-theme=light] .header .brand img:first-child{opacity:0!important}body[data-home-theme=dark] .header{--header-ink:var(--home-light)!important;background:linear-gradient(color-mix(in srgb,var(--home-dark) 90.98%,transparent),color-mix(in srgb,var(--home-dark) 0.0%,transparent))}body[data-home-theme=dark] .header .brand-dark{opacity:0!important}body[data-home-theme=dark] .header .brand img:first-child{opacity:1!important}body[data-home-theme] .header .navigation{background:color-mix(in srgb,var(--home-edge) 14.9%,transparent)!important}.scene-reveal{opacity:0;transform:translateY(25px);transition:opacity .8s var(--ease),transform .9s var(--ease)}.scene-reveal.is-visible{opacity:1;transform:none}body.ambient-paused .supply-origin-halo{animation-play-state:paused}.applications-failed .particle-chapter{margin-top:0}
@media(max-width:1100px){.particle-chapter{padding-top:130px}.supply-map-wrap{width:85%;right:-12%;top:150px;opacity:.7}.supply-heading .display{font-size:62px}.supply-detail{max-width:430px}.start-steps{gap:30px}.process-route span:not(:last-child):after{right:-35px}.origin-story{max-width:730px}.reserve-facts{gap:30px}.supply-chapter{min-height:1000px}}
@media(max-width:1000px) and (orientation:portrait){.application-title{top:20%;font-size:12.5vw}.application-title--long{font-size:8.3vw}.application-benefit{left:var(--edge);right:var(--edge);top:65%;bottom:auto;max-width:none;font-size:36px}.application-benefit br{display:none}.application-detail{left:var(--edge);right:var(--edge);top:75%;bottom:auto;max-width:none;width:auto}.application-detail p{font-size:16px;max-width:620px}.application-detail a{font-size:15px;margin-top:9px}.supply-heading .display{font-size:68px}.supply-map-wrap{top:240px;right:-6%;width:95%;opacity:.5}.supply-detail{max-width:490px}.supply-chapter{min-height:1100px}.particle-chapter{min-height:1250px}.grade-selector{margin-top:350px}.start-steps{gap:20px}.start-steps h3{font-size:24px}.start-steps p{font-size:14px}}
@media(max-width:640px){.display{font-size:clamp(37px,9.5vw,58px);letter-spacing:-.05em}.section-name{font-size:12px;margin-bottom:20px}.text-action{font-size:13px}.particle-chapter{min-height:1000px;padding:110px 24px 45px}.particle-heading .display{font-size:clamp(43px,11vw,68px)}.particle-heading>p:last-child{font-size:14px;line-height:1.6;max-width:320px;margin-top:23px}.grade-selector{margin-top:230px;gap:0;display:grid;grid-template-columns:1fr 1fr;row-gap:4px;border-bottom:0}.grade-selector button{font-size:13px;text-align:left;padding:12px 0;border-bottom:1px solid color-mix(in srgb,var(--home-muted) 23.14%,transparent)}.grade-description{min-height:215px;padding-top:28px}.grade-description h3{font-size:21px}.grade-description p{font-size:14px}.process-route{margin-top:25px;gap:8px;flex-wrap:wrap;font-size:11px;justify-content:flex-start;column-gap:22px}.process-route span:not(:last-child):after{right:-16px}.quality-chapter{padding:80px 24px;border-radius:18px 18px 0 0}.quality-intro{margin-bottom:40px;text-align:left}.quality-intro>p:last-child{font-size:14px;margin-top:25px}.quality-lines summary{font-size:24px;padding:25px 0;gap:20px}.quality-answer{padding:0 0 27px}.quality-answer p{font-size:14px}.analysis-fields{font-size:12px;gap:12px 20px}.origin-chapter{padding:35px 24px 70px}.origin-title h2{font-size:clamp(34px,8.6vw,55px)}.origin-title{margin-bottom:24px}.mine-window{aspect-ratio:.95;margin-left:-12px;margin-right:-12px;clip-path:inset(0 round 2px)}.mine-window img{object-position:61% center}.mine-window figcaption{bottom:20px;left:16px;font-size:11px}.origin-story{margin:30px auto 36px;text-align:left}.origin-story p{font-size:16px}.origin-story p+p{font-size:14px;margin-top:18px}.reserve-facts{justify-content:space-between;gap:20px;flex-wrap:wrap;padding-top:25px}.reserve-facts strong{font-size:32px}.reserve-facts p>span{font-size:11px;margin-top:10px}.supply-chapter{min-height:1050px;padding:80px 24px 65px}.supply-heading .display{font-size:clamp(38px,9.4vw,62px)}.supply-map-wrap{top:210px;left:-18%;right:auto;width:140%;opacity:.8;transform:rotate(-3deg)}.supply-radius-copy{margin-top:345px}.supply-radius-copy strong{font-size:90px}.supply-radius-copy p{font-size:14px}.supply-detail{margin-top:20px}.supply-detail p{font-size:14px}.supply-detail p:first-child{font-size:17px}.start-chapter{padding:80px 24px}.start-heading{text-align:left}.start-steps{display:block;margin-top:45px}.start-steps li,.start-steps li:nth-child(2),.start-steps li:nth-child(3){margin-top:0;padding-top:25px;padding-bottom:30px}.step-number{font-size:52px}.start-steps h3{font-size:27px;margin:20px 0 16px}.start-steps p{font-size:14px;max-width:450px}.start-steps h3 br{display:none}.contact-chapter{padding:85px 24px 50px}.contact-chapter .display{font-size:clamp(44px,11.1vw,65px)}.contact-intro{font-size:14px;margin:25px auto;max-width:340px}.contact-intro br{display:none}.consultation-button{min-height:64px;gap:20px;font-size:13px;padding:15px 20px}.contact-number{font-size:14px}.contact-locations{gap:28px;margin-top:55px}.contact-locations address{font-size:12px}.contact-locations address span{font-size:12px}.application-benefit{font-size:clamp(24px,6.5vw,31px)}.application-detail p{font-size:12px}.application-detail a{font-size:12px}.application-title{font-size:13.4vw;top:23%}.application-title--long{font-size:8.6vw}}
@media(prefers-reduced-motion:reduce){.scene-reveal{opacity:1;transform:none}.mine-window,.mine-window img{transform:none}.supply-origin-halo{animation:none}}

/* On portrait screens the map has its own reading space between the heading and delivery facts. */
@media(max-width:1000px) and (orientation:portrait){.supply-chapter{min-height:1450px}.supply-map-wrap{width:96%;top:300px;left:2%;right:auto;opacity:.92;transform:rotate(-3deg)}.supply-radius-copy{margin-top:690px}.supply-detail{max-width:630px}.supply-map text{font-size:15px}.supply-map text.map-home{font-size:13px}}
@media(max-width:640px){.supply-chapter{min-height:1090px}.supply-map-wrap{width:140%;left:-20%;top:205px}.supply-radius-copy{margin-top:355px}.supply-detail{max-width:470px}.supply-map text{font-size:15px}}

/* Individual art direction keeps each application readable at the same camera distance. */
.application-scene:where([data-application]:not([data-application="0"])) .application-title{top:24%;font-size:clamp(65px,10.5vw,158px);opacity:.18}
.application-scene .application-title--long{font-size:clamp(54px,7.4vw,118px)}
.application-scene:where([data-application]:not([data-application="0"])) .application-benefit{font-size:clamp(25px,2.35vw,36px);letter-spacing:-.03em;max-width:320px}
@media(max-width:1200px) and (orientation:portrait){
 .application-title{top:20%;font-size:12.5vw}.application-title--long{font-size:8.3vw}
 .application-benefit{left:var(--edge);right:var(--edge);top:65%;bottom:auto;max-width:none;font-size:36px}.application-benefit br{display:none}
 .application-detail{left:var(--edge);right:var(--edge);top:75%;bottom:auto;max-width:none;width:auto}.application-detail p{font-size:16px;max-width:620px}.application-detail a{font-size:15px;margin-top:9px}
 .application-scene:where([data-application]:not([data-application="0"])) .application-title{top:19%;font-size:11.5vw}
 .application-scene .application-title--long{font-size:8.1vw}
 .application-scene:where([data-application]:not([data-application="0"])) .application-benefit{font-size:32px;max-width:none}
}
@media(max-width:640px){
 .application-benefit{font-size:clamp(24px,6.5vw,31px)}.application-detail p,.application-detail a{font-size:12px}
 .application-scene:where([data-application]:not([data-application="0"])) .application-title{top:22%;font-size:12.5vw}
 .application-scene .application-title--long{font-size:8.4vw}
 .application-scene:where([data-application]:not([data-application="0"])) .application-benefit{font-size:24px}
}

/* Two bounded scroll-over passages: evidence becomes the mine; the steps lead into contact. */
.chapter-passage,.closing-passage{position:relative;display:flow-root}
.chapter-motion-ready .quality-chapter,.chapter-motion-ready .start-chapter{position:sticky;top:var(--chapter-pin,0px);z-index:1;overflow-anchor:none}
.chapter-motion-ready .quality-chapter:after,.chapter-motion-ready .start-chapter:after{content:'';position:absolute;inset:0;background:var(--home-ink);opacity:calc(var(--chapter-cover,0) * .12);pointer-events:none;z-index:5}
.chapter-motion-ready .origin-chapter,.chapter-motion-ready .contact-chapter{z-index:3;border-radius:28px 28px 0 0;box-shadow:0 -28px 65px color-mix(in srgb,var(--home-dark) 8.63%,transparent)}
.chapter-motion-ready .origin-chapter{background:var(--home-start)}
.chapter-motion-ready .quality-intro{transform:translateY(calc(var(--chapter-cover,0) * -26px))}
.chapter-motion-ready .mine-window{clip-path:inset(0 calc(5% - var(--mine-entry,1) * 3.2%) round 4px);transform:perspective(1800px) rotateX(calc((1 - var(--mine-entry,1)) * 6deg));will-change:clip-path,transform}
.chapter-motion-ready .mine-window img{transform:translateY(calc(var(--origin-shift,0) * -5%)) scale(calc(1.065 - var(--mine-entry,1) * .065));transform-origin:50% 60%}
.quality-lines details{position:relative;overflow-anchor:none}
.quality-lines details:before{content:'';position:absolute;left:0;right:0;top:-1px;height:1px;background:var(--home-edge);transform:scaleX(var(--row-progress,1));transform-origin:left}
/* Reading labels stay fixed. Feedback belongs to the disclosure control. */
.chapter-passage{overflow-anchor:none}
.quality-lines summary>span{transform:none;translate:none;opacity:1}

.quality-lines summary i{color:var(--home-ink);transform:none;transition:background .2s,color .2s,border-color .2s}
.quality-lines summary i:before,.quality-lines summary i:after{background:currentColor}
.quality-lines summary i:after{transform:rotate(90deg) scaleX(1);transition:transform .24s var(--ease)}
.quality-lines [data-expanded=true] summary i{background:var(--home-inset);transform:none}
.quality-lines [data-expanded=false] summary i{background:transparent;transform:none}
.quality-lines [data-expanded=true] summary i:after{transform:rotate(90deg) scaleX(0)}
.quality-lines [data-expanded=false] summary i:after{transform:rotate(90deg) scaleX(1)}
.quality-lines summary:focus-visible i{background:var(--home-ink);border-color:var(--home-ink);color:var(--home-chalk)}
@media(hover:hover) and (pointer:fine){.quality-lines summary:hover i{background:var(--home-ink);border-color:var(--home-ink);color:var(--home-chalk)}}
.quality-answer,.quality-lines [data-expanded=true] .quality-answer,.analysis-fields span{animation:none;transform:none}
.chapter-motion-ready .supply-radius{stroke-dasharray:var(--radius-length);stroke-dashoffset:calc(var(--radius-length) * (1 - var(--delivery-progress,1)));fill-opacity:calc(.25 + var(--delivery-progress,1) * .75)}
.start-steps li:before{content:'';position:absolute;left:0;right:0;top:-1px;height:2px;background:var(--home-edge);transform:scaleX(var(--step-progress,1));transform-origin:left}
.start-steps .step-number{color:color-mix(in srgb,var(--home-quiet),var(--home-secondary) calc(var(--step-progress,1) * 100%));transform:translateX(calc((1 - var(--step-progress,1)) * -14px))}
.contact-chapter{isolation:isolate;overflow:hidden}
.contact-chapter:before{content:'';position:absolute;inset:0 -12%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 45% 37%,color-mix(in srgb,var(--home-stone) 11.37%,transparent),transparent 50%);animation:contact-atmosphere 18s ease-in-out infinite alternate}
@keyframes contact-atmosphere{from{transform:translateX(-4%) scale(.96)}to{transform:translateX(4%) scale(1.08)}}
body.ambient-paused .contact-chapter:before{animation-play-state:paused}
@media(max-width:640px){.chapter-motion-ready .origin-chapter,.chapter-motion-ready .contact-chapter{border-radius:18px 18px 0 0}.chapter-motion-ready .mine-window{clip-path:inset(0 calc((1 - var(--mine-entry,1)) * 3%) round 3px)}}
@media(prefers-reduced-motion:reduce){
 .chapter-motion-ready .quality-chapter,.chapter-motion-ready .start-chapter{position:relative;top:auto}
 .chapter-motion-ready .quality-intro,.chapter-motion-ready .mine-window,.chapter-motion-ready .mine-window img,.start-steps .step-number{transform:none}
 .quality-lines [data-expanded=true] .quality-answer,.quality-lines [data-expanded=true] .analysis-fields span,.contact-chapter:before{animation:none}
 .quality-lines summary>span,.quality-lines summary i{transition:none}
}

/* A shared typographic track sits within the scene, behind each subject. */
.application-scene{opacity:1;transform:none;isolation:auto}
.applications-stage .application-scene .application-title{top:32%;font-size:clamp(90px,13.2vw,196px);opacity:calc(var(--copy-presence,0) * .90);z-index:1;will-change:transform,opacity}
.application-benefit,.application-detail{opacity:var(--copy-presence,0);z-index:3;will-change:transform,opacity}
.application-detail p{color:var(--app-ink);font-size:15px}
.applications-stage:after{content:'';position:absolute;inset:55% 0 0;z-index:2;pointer-events:none;background:linear-gradient(transparent,var(--app-paper) 85%);opacity:calc(var(--copy-shield,0) * .75)}
@media(max-width:1200px) and (orientation:portrait){
 .applications-stage .application-scene .application-title{top:32%;font-size:17vw}
 .application-detail p{font-size:16px;max-width:640px}
}
@media(max-width:640px){
 .applications-stage .application-scene .application-title{top:36%;font-size:21vw}
 .application-detail p{font-size:13px;line-height:1.5}
 .application-detail{top:74%}
 .application-detail a{margin-top:8px}
}
/* The scene fills the current browser viewport; scroll timing uses a separate stable unit. */
html,body{background:var(--viewport-paper,var(--home-hero))}
.hero{height:100vh;height:100dvh;min-height:0;overflow-anchor:none}
#menu{height:100vh;height:100dvh}
.particle-chapter{margin-top:calc(-1 * var(--scene-height,100dvh))}
.applications-failed .particle-chapter{margin-top:0}
@media(prefers-reduced-motion:reduce){.application-title,.application-benefit,.application-detail{will-change:auto}}
.applications-failed .applications-stage .application-scene .application-title,.applications-failed .applications-stage .application-benefit,.applications-failed .applications-stage .application-detail{opacity:1;position:static;transform:none!important}

/* Lettering has its own depth pass; HTML remains the responsive and accessible source. */
.application-type-ready .application-title{color:transparent!important}
.benefit-word{display:inline-block;transform-origin:50% 65%;will-change:transform,opacity}
.application-detail a:after{transform:scaleX(var(--link-reveal,1));transform-origin:left}
.applications-stage .application-nav a:before{transition:none}
@media(prefers-reduced-motion:reduce){.benefit-word{will-change:auto}}
.applications-failed .application-type-ready .application-title{color:var(--app-ink)!important}

/* Keep the camera, headings and scroll track steady while mobile browser chrome
   changes the visible height. The surrounding paper still fills the viewport. */
.scene-layout{position:absolute;top:0;left:0;width:100%;height:var(--composition-height,100svh);--covered-height:max(0px,calc(var(--composition-height,100svh) - 100dvh))}
#examine{touch-action:pan-y pinch-zoom}
.scene-layout .opening h1,.scene-layout .primary-action{margin-bottom:var(--covered-height)}
.scene-layout .source-story p,.scene-layout .source-story .process-action{margin-top:calc(-1 * var(--covered-height))}
.scene-layout .application-nav{bottom:calc(33px + var(--covered-height))}
@media(max-width:640px){.scene-layout .application-nav{bottom:calc(13px + var(--covered-height))}}
/* The portrait opening is composed around the specimen, with the action in
   reach. Keep these offsets stable while Safari's browser chrome moves. */
@media(max-width:640px) and (max-aspect-ratio:25/28){
 .opening h1{bottom:calc(122px + env(safe-area-inset-bottom,0px));font-size:clamp(18px,4.85vw,21px);line-height:1.32;text-wrap:pretty}
 .primary-action{bottom:calc(32px + env(safe-area-inset-bottom,0px));min-height:60px}
 .shadow{top:71%;width:74%;opacity:.28}
}
/* The GPU draws a little beyond the stable composition. Growing browser space
   reveals the same dust/light volume instead of the bottom edge of a canvas. */
.scene-layout #rock,.scene-layout .applications-stage canvas{height:var(--render-height,var(--composition-height));bottom:auto}
.scene-layout .applications-stage:after{bottom:calc(var(--composition-height) - var(--render-height));background:linear-gradient(transparent,var(--app-paper) calc(var(--composition-height) * .3825))}
/* vw-type:start */
@media(min-width:1101px) and (max-width:1799px){.display{font-size:6vw}.section-name{font-size:0.9028vw}.text-action{font-size:0.9722vw}.text-action span{font-size:1.7361vw}.particle-heading>p:last-child{font-size:1.1111vw}.grade-selector button{font-size:1.0417vw}.grade-description h3{font-size:1.6667vw}.grade-description p{font-size:1.0417vw}.process-route{font-size:0.9028vw}.quality-intro>p:last-child{font-size:1.1111vw}.quality-lines summary{font-size:2.45vw}.quality-answer p{font-size:1.1111vw}.analysis-fields{font-size:0.9028vw}.origin-title h2{font-size:6.9vw}.mine-window figcaption{font-size:0.9028vw}.origin-story p{font-size:1.3194vw}.origin-story p+p{font-size:1.0417vw}.reserve-facts strong{font-size:4vw}.reserve-facts p>span{font-size:0.9028vw}.supply-map text{font-size:0.9028vw}.supply-map text.map-home{font-size:0.8333vw}.supply-heading .display{font-size:5.1vw}.supply-radius-copy strong{font-size:10vw}.supply-radius-copy p{font-size:1.0417vw}.supply-detail p{font-size:1.0417vw}.supply-detail p:first-child{font-size:1.25vw}.step-number{font-size:5.1389vw}.start-steps h3{font-size:2.25vw}.start-steps p{font-size:1.0417vw}.contact-chapter .display{font-size:7.5vw}.contact-intro{font-size:1.1806vw}.consultation-button{font-size:1.0417vw}.contact-number{font-size:1.1111vw}.contact-locations address{font-size:0.9722vw}.contact-locations address span{font-size:0.9028vw}.application-scene:where([data-application]:not([data-application="0"])) .application-title{font-size:10.5vw}.application-scene .application-title--long{font-size:7.4vw}.application-scene:where([data-application]:not([data-application="0"])) .application-benefit{font-size:2.35vw}.applications-stage .application-scene .application-title{font-size:13.2vw}.application-detail p{font-size:1.0417vw}}@media(min-width:1800px){.display{font-size:108px}.section-name{font-size:16.25px}.text-action{font-size:17.5px}.text-action span{font-size:31.25px}.particle-heading>p:last-child{font-size:20px}.grade-selector button{font-size:18.75px}.grade-description h3{font-size:30px}.grade-description p{font-size:18.75px}.process-route{font-size:16.25px}.quality-intro>p:last-child{font-size:20px}.quality-lines summary{font-size:44.1px}.quality-answer p{font-size:20px}.analysis-fields{font-size:16.25px}.origin-title h2{font-size:124.2px}.mine-window figcaption{font-size:16.25px}.origin-story p{font-size:23.75px}.origin-story p+p{font-size:18.75px}.reserve-facts strong{font-size:72px}.reserve-facts p>span{font-size:16.25px}.supply-map text{font-size:16.25px}.supply-map text.map-home{font-size:15px}.supply-heading .display{font-size:91.8px}.supply-radius-copy strong{font-size:180px}.supply-radius-copy p{font-size:18.75px}.supply-detail p{font-size:18.75px}.supply-detail p:first-child{font-size:22.5px}.step-number{font-size:92.5px}.start-steps h3{font-size:40.5px}.start-steps p{font-size:18.75px}.contact-chapter .display{font-size:135px}.contact-intro{font-size:21.25px}.consultation-button{font-size:18.75px}.contact-number{font-size:20px}.contact-locations address{font-size:17.5px}.contact-locations address span{font-size:16.25px}.application-scene:where([data-application]:not([data-application="0"])) .application-title{font-size:189px}.application-scene .application-title--long{font-size:133.2px}.application-scene:where([data-application]:not([data-application="0"])) .application-benefit{font-size:42.3px}.applications-stage .application-scene .application-title{font-size:237.6px}.application-detail p{font-size:18.75px}}
/* vw-type:end */
