/* Textile sample-book edition: warm paper, material photography, clear controls. */
:root{--paper:#fcfbf7;--cream:#f0f1e9;--ink:#203b32;--muted:#657369;--line:#dce0d4}
body{background:var(--paper)}.header{position:sticky;top:0;height:82px;background:#fcfbf7;box-shadow:0 4px 24px #223d3005;z-index:20}.header nav a{position:relative;padding-block:12px}.header nav a:after{content:'';position:absolute;bottom:3px;left:0;right:0;height:2px;background:var(--green);transform:scaleX(0);transform-origin:left;transition:transform .25s}.header nav a:hover:after{transform:scaleX(1)}.nav-cta,.button{border-radius:100px}.nav-cta{background:var(--green);color:#fff;min-height:44px;align-items:center}.button{padding:16px 26px;box-shadow:0 7px 15px #203b3212}.button span{transition:transform .25s}.button:hover span{transform:translate(3px,-3px)}.menu-toggle{display:none}.reading-progress{position:fixed;top:0;left:0;height:3px;width:100%;transform:scaleX(0);transform-origin:left;background:#b39b6d;z-index:30;pointer-events:none}.hero{padding-block:62px 82px;gap:60px}.hero-copy{min-width:0}.hero .eyebrow{display:inline-flex;align-items:center;letter-spacing:.09em;background:#eaf0e5;padding:8px 13px;border-radius:50px;font-size:10px}.hero h1{font-size:clamp(49px,5.3vw,78px)}.hero-visual{isolation:isolate}.hero-visual:before{content:'';position:absolute;inset:0 -15px -10px 30px;border:1px solid #d7decd;border-radius:160px 26px 26px 26px;transform:rotate(4deg);z-index:-1}.hero-fabric{border-radius:150px 24px 24px 24px;box-shadow:0 18px 35px #263b3010}.hero-phone{transition:transform .5s cubic-bezier(.2,.7,.2,1)}.hero-visual:hover .hero-phone{transform:rotate(-3deg) translateY(-5px)}.material-mark{position:absolute;right:12px;top:-14px;font-size:9px;letter-spacing:.16em;color:#6a7e69;display:flex;gap:26px}.material-mark span{color:#8a957d}.material-switch{position:absolute;right:12px;bottom:78px;display:flex;gap:4px;padding:5px;background:#fcfbf7;border:1px solid #dce0d4;border-radius:30px;z-index:3}.material-switch button{border:0;background:transparent;border-radius:24px;min-height:44px;padding:8px 12px;color:var(--green);font-size:11px;cursor:pointer}.material-switch button[aria-pressed=true]{background:var(--green);color:white}.insight-label{bottom:-12px;right:8px;border-radius:16px;box-shadow:0 12px 30px #1b3c2414}.value-strip{background:transparent;color:var(--green);border-block:1px solid var(--line)}.value-strip>div{padding-block:23px}.value-strip span:before{content:'✳';color:#809371}.process{padding-block:90px}.steps{gap:24px;align-items:start}.steps article{padding:26px;background:#f0f1e9;border:1px solid #dfe3d6;border-radius:24px;transition:transform .3s,box-shadow .3s}.steps article:nth-child(2){background:#e5ece1;margin-top:35px}.steps article:nth-child(3){background:#f2ece0;margin-top:70px}.steps article:hover{transform:translateY(-6px);box-shadow:0 20px 30px #203b320c}.step-number{display:flex;align-items:center;justify-content:space-between;color:#506c55;font-weight:600}.step-number:after{content:'↗';font-size:20px;line-height:1}.process-image{height:150px;border-radius:14px;margin-top:25px;background-size:cover;background-position:center}.capture-detail{background-image:url('assets/fabric-workbench.jpg');background-position:35% 55%}.structure-detail{background-image:url('assets/textile-study.jpg');background-position:30% 35%}.develop-detail{background-image:url('assets/fabric-workbench.jpg');background-position:85% 25%}.steps h3{font-size:28px}.steps p{font-size:15px}.step-foot{display:block;border-top:1px solid #bac8ad77;padding-top:18px}.inside{background:#e9eee4;border-block:1px solid #dbe2d3;position:relative}.gallery-picker{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:28px}.gallery-picker button{display:flex;align-items:center;gap:9px;min-height:44px;padding:8px 16px;border:1px solid #cbd6c3;background:transparent;color:var(--green);border-radius:24px;font-size:12px;cursor:pointer;transition:background .2s,color .2s}.gallery-picker button span{font-size:10px;opacity:.65}.gallery-picker button[aria-pressed=true]{background:var(--green);border-color:var(--green);color:#fff}.gallery-picker button:hover:not([aria-pressed=true]){background:#fff8}.screenshot-track{padding:10px 4px 25px;align-items:stretch}.screenshot-card{background:#fcfbf7;border:1px solid #d5dece;border-radius:24px;padding:22px;box-shadow:0 5px 10px #253b2004}.shot-heading{min-height:112px}.shot-heading h3{font-size:26px}.shot-link{background:#ebede3;border-radius:16px;padding:18px 12px 3px;overflow:hidden}.screenshot-card:nth-child(2) .shot-link{background:#e6ece2}.screenshot-card:nth-child(3) .shot-link{background:#e6e9e4}.screenshot-card:nth-child(4) .shot-link{background:#eeeadf}.screenshot-card:nth-child(5) .shot-link{background:#e2e9e1}.gallery-phone{box-shadow:0 10px 18px #20332618;transition:transform .35s}.shot-link:hover .gallery-phone{transform:translateY(-4px)}.screenshot-card>p{font-size:13px}.gallery-controls button{background:#fcfbf7}.viewer-navigation{display:flex;align-items:center;justify-content:space-between;padding:8px 20px;background:#e9eee4;gap:12px}.viewer-navigation button{min-height:44px;border:0;background:transparent;color:var(--green);cursor:pointer;font-size:13px}.viewer-navigation span{font-size:12px;font-variant-numeric:tabular-nums}.screenshot-detail{max-height:calc(92dvh - 130px)}.screenshot-dialog{border-radius:22px}.atelier-image img{border-radius:100px 24px 24px 24px}.atelier-image>span{border-radius:30px;letter-spacing:.08em}.use-case{padding:20px;border:1px solid var(--line);border-radius:18px;background:#fff9;margin-top:12px;transition:background .2s,transform .2s}.use-case:hover{background:#edf2e8;transform:translateX(4px)}.use-case>span{width:32px;height:32px;display:grid;place-items:center;border:1px solid #cedac7;border-radius:50%;padding:0;flex-shrink:0;color:var(--green)}.use-case p{font-size:14px}.evidence{border:1px solid #dce1d3;border-radius:30px;background:#f1f2e9;padding:60px 30px}.evidence-items span{border:1px solid #d5ddcb;background:#fff9;border-radius:24px;padding:10px 16px}.faq-list details,.faq-list details:first-child{border:1px solid #dce1d4;border-radius:16px;background:#fff9;margin-bottom:12px;padding:21px 24px;transition:background .2s}.faq-list details[open]{background:#eaf0e4;border-color:#c3d0b9}.faq-list summary{min-height:30px}.closing{margin:0 28px;border-radius:36px;position:relative;overflow:hidden}.closing:before,.closing:after{content:'';position:absolute;width:420px;height:420px;border:1px solid #52715b;border-radius:50%;pointer-events:none}.closing:before{left:-250px;top:-150px;box-shadow:0 0 0 30px #44634d44,0 0 0 60px #44634d22}.closing:after{right:-300px;bottom:-180px;box-shadow:0 0 0 35px #44634d44,0 0 0 70px #44634d22}.closing .section-width{position:relative}.footer{padding-block:50px}.footer nav a{min-height:44px;display:flex;align-items:center}.reveal-once{animation:material-in .65s ease-out both}@keyframes material-in{from{opacity:.3;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1050px){.hero{gap:30px}.steps article{padding:20px}.steps{gap:16px}.steps h3{font-size:25px}.screenshot-card{padding:18px}.hero-visual:before{right:-6px}.material-switch{right:0}.gallery-phone{border-radius:26px}}
@media(max-width:760px){html{scroll-padding-top:88px}.header{height:72px;padding-inline:20px;gap:10px}.header .brand{font-size:22px}.header .nav-cta{display:none}.menu-toggle{display:flex;align-items:center;gap:12px;min-height:44px;padding:8px 14px;border:1px solid var(--line);border-radius:24px;color:var(--green);background:transparent;font-size:12px}.header nav{position:absolute;top:71px;left:0;right:0;background:#fcfbf7;padding:16px 24px 24px;box-shadow:0 14px 20px #203b3210;border-bottom:1px solid var(--line)}.header nav.is-open{display:flex;flex-direction:column;gap:2px}.header nav a{min-height:44px}.hero{padding-block:35px 70px;gap:38px}.hero .eyebrow{font-size:9px}.hero-visual{height:540px}.hero-visual:before{inset:0 5px 8px 20px}.hero-fabric{width:94%;height:85%;border-radius:110px 24px 24px 24px}.hero-phone{left:5%;top:70px;width:205px}.image-caption{left:21%;top:24px}.material-mark{top:-16px;right:8px}.material-switch{right:4px;bottom:62px;gap:0}.material-switch button{padding-inline:10px;font-size:10px}.insight-label{right:0;bottom:-20px;padding:14px;max-width:100%}.insight-label strong{font-size:14px}.insight-label div>span{font-size:10px}.value-strip>div{gap:12px}.steps{gap:18px}.steps article:nth-child(n){margin-top:0;padding:24px}.process-image{height:170px}.process{padding-block:65px}.screenshot-card{flex-basis:90%;padding:18px;border-radius:20px}.shot-heading{min-height:104px}.shot-heading h3{font-size:24px}.gallery-picker{flex-wrap:nowrap;overflow:auto;padding-bottom:7px;margin-right:-20px}.gallery-picker button{white-space:nowrap;flex-shrink:0;padding-inline:13px}.screenshot-gallery{padding-block:55px}.screenshot-detail{max-height:calc(94dvh - 130px)}.viewer-navigation{padding-inline:14px}.evidence{padding:40px 22px}.evidence h2{font-size:35px}.closing{margin:0 12px;border-radius:26px}.closing h2{font-size:38px}.faq-list details,.faq-list details:first-child{padding:17px 18px}.atelier-image img{border-radius:70px 20px 20px 20px}.use-case{padding:18px;gap:14px}.footer nav{gap:8px 20px}.hero-visual:hover .hero-phone{transform:rotate(-6deg)}}
@media(prefers-reduced-motion:reduce){.reveal-once{animation:none!important}*,*:before,*:after{transition:none!important}.hero-visual:hover .hero-phone,.shot-link:hover .gallery-phone,.steps article:hover,.use-case:hover{transform:none}}
/* Static process cards use material content rather than a false link cue. */
.step-number:after{content:none}
