/* Atelier — editorial composition and a genuine interactive paper object. */
.atelier-hero{position:relative;height:calc(100svh - 128px);min-height:730px;max-height:1050px;padding:0;isolation:isolate;overflow:visible}
.atelier-copy{position:relative;z-index:3;width:43%;padding:130px 0 100px;pointer-events:none}.atelier-copy h1{font-size:clamp(62px,5.65vw,92px);line-height:1.04;letter-spacing:-.065em;font-weight:700;white-space:nowrap}.atelier-copy h1 em{font-style:normal;padding:0;margin:0;letter-spacing:inherit}.atelier-period{font-size:.48em;color:var(--orange);-webkit-text-fill-color:var(--orange);margin-left:3px}.atelier-intro{font-size:clamp(15px,1.24vw,18px);line-height:1.65;max-width:425px;margin:35px 0 45px;color:var(--ink)}.atelier-copy .project-invitation{pointer-events:auto;font-size:clamp(15px,1.32vw,20px);gap:20px;padding-bottom:5px;border-bottom:1px solid var(--orange);border-radius:0;font-weight:500}.atelier-copy .invitation-arrow{width:33px;height:27px;transition:transform .6s cubic-bezier(.25,1,.5,1)}.atelier-copy .project-invitation:hover .invitation-arrow{transform:translate(7px,-3px)}
.atelier-scene{position:absolute;left:37%;right:-7.5%;top:-20px;bottom:0;z-index:2}.book-viewport{position:absolute;inset:0 0 95px;cursor:grab;touch-action:pan-y;outline-offset:-25px}.book-viewport.is-dragging{cursor:grabbing}.book-viewport canvas{display:block;width:100%;height:100%;opacity:0;transition:opacity .6s}.book-viewport.is-rendered canvas{opacity:1}.book-fallback{display:flex;align-items:center;gap:0;position:absolute;inset:11% 4% 10%;pointer-events:none;transform:rotate(-8deg)}.book-fallback img{width:49%;height:auto;filter:drop-shadow(12px 25px 20px #0009)}.is-rendered .book-fallback{visibility:hidden}
.atelier-note{position:absolute;font-family:Signature,cursive;font-size:29px;color:var(--orange);pointer-events:none;transform:rotate(-8deg);z-index:2}.atelier-note-top{right:16%;top:25px}.book-controls{position:absolute;bottom:53px;left:15%;right:9%;z-index:4;display:flex;flex-direction:column;align-items:flex-end;gap:13px}.book-controls p{font-size:11px;color:var(--muted);margin:0;letter-spacing:.02em}.book-actions{display:flex;align-items:center;gap:22px}.book-actions button{font-size:12px;line-height:1.4;background:none;border:0;border-bottom:1px solid var(--line);padding:7px 0;transition:color .3s,border-color .3s;min-height:36px}.book-actions button:hover{color:var(--orange);border-color:var(--orange)}.book-actions button:disabled{opacity:.35}.book-actions button .icon{display:inline-block;width:16px;height:16px;vertical-align:middle;margin-left:7px}.atelier-caption{position:absolute;bottom:10px;right:9%;display:flex;gap:8px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid var(--orange);padding-bottom:7px;z-index:3}.atelier-caption span+span{color:var(--muted)}.atelier-caption:hover{color:var(--orange)}.atelier-scroll{position:absolute;bottom:28px;left:0;display:flex;align-items:center;gap:14px;font-size:11px;color:var(--muted);z-index:3}.atelier-scroll .icon{width:22px;color:var(--orange)}
.atelier-hero+.scroll-project{position:relative;z-index:2;background:var(--bg)}
body{background-image:url('assets/atelier-surface.webp');background-size:100vw auto;background-position:center 130px;background-repeat:no-repeat}
@media(min-width:761px){.wrap{padding-left:3.7%;padding-right:3.7%}.site-header{padding-left:3.7%;padding-right:3.7%}.site-header::after{left:3.7%;right:3.7%}.site-header .wordmark{width:230px}.atelier-copy .project-invitation{min-height:38px}}
@media(min-width:1600px){.atelier-copy{padding-top:160px}.atelier-note-top{top:50px}}
@media(max-width:1100px) and (min-width:761px){.atelier-copy{padding-top:120px}.atelier-copy h1{font-size:5.65vw}.atelier-intro{max-width:320px;font-size:14px}.atelier-scene{left:38%;right:-8%;top:35px}.book-controls{right:10%}.book-actions{gap:15px}.atelier-note-top{right:20%;top:35px}}
@media(max-width:760px){.atelier-hero{height:auto;min-height:0;max-height:none;padding:38px 0 15px;display:flex;flex-direction:column;gap:0}.atelier-copy{width:100%;padding:0;pointer-events:auto}.atelier-copy h1{font-size:clamp(44px,10.3vw,76px);line-height:1.02;white-space:normal}.atelier-intro{font-size:14px;line-height:1.7;max-width:450px;margin:24px 0}.atelier-copy .project-invitation{font-size:16px;min-height:40px}.atelier-scene{position:relative;left:auto;right:auto;top:auto;bottom:auto;height:clamp(430px,110vw,650px);width:calc(100% + 36px);margin:22px -18px 10px}.book-viewport{inset:0 0 90px}.atelier-note-top{top:0;right:7%;font-size:25px}.book-controls{left:18px;right:18px;bottom:40px;align-items:center;gap:8px}.book-actions{gap:25px}.book-actions button{font-size:12px;min-height:40px}.book-controls p{font-size:10px}.atelier-caption{bottom:0;right:18px;left:18px;font-size:9px;justify-content:center}.atelier-scroll{position:relative;left:auto;bottom:auto;align-self:flex-start;margin-top:14px}.book-viewport:focus-visible{outline-offset:-10px}}
@media(prefers-reduced-motion:reduce){.book-viewport canvas,.invitation-arrow,.book-actions button{transition:none}}
.book-viewport{perspective:1500px;perspective-origin:50% 45%}
.paper-object{position:absolute;left:50%;top:49%;width:90%;aspect-ratio:1.35;transform-style:preserve-3d;transform:translate(-50%,calc(-50% + var(--book-rise,0px))) rotateX(var(--book-rx,5deg)) rotateY(var(--book-ry,-7deg)) rotateZ(var(--book-rz,-8deg)) scale(var(--book-scale,1));pointer-events:none}
.paper-hinge{position:absolute;top:0;height:100%;width:50%;transform-style:preserve-3d}.paper-left{left:0;transform-origin:100% 50%;transform:rotateY(var(--left-fold,-28deg));z-index:3}.paper-right,.paper-turn{left:50%;transform-origin:0 50%;transform:rotateY(var(--right-fold,24deg))}.paper-right{z-index:1}.paper-turn{z-index:4;visibility:hidden}.paper-turn.is-turning{visibility:visible}
.paper-sheet,.paper-back{position:absolute;inset:0;border-radius:2px;backface-visibility:hidden;overflow:hidden;box-shadow:1px 2px 0 #d6cbb8,2px 3px 0 #6c655b,15px 32px 28px #0006}.paper-sheet{background:#eee5d3;transform:translateZ(1px)}.paper-sheet>img{display:block;width:100%;height:100%;object-fit:fill}.paper-sheet::after{content:'';position:absolute;inset:0;background:url('assets/paper-grain.webp') center/cover;mix-blend-mode:multiply;opacity:.65;pointer-events:none}.paper-left .paper-sheet::before{content:'';position:absolute;inset:0;background:#111014;opacity:var(--paper-shade,.08);mix-blend-mode:multiply;z-index:2}.paper-back{background:#eee5d3 url('assets/paper-grain.webp') center/cover;transform:rotateY(180deg) translateZ(1px)}.paper-border{position:absolute;inset:0}.print-window{position:absolute;left:5%;top:5%;width:81%;height:90%;overflow:hidden;background:#f7f1e5}.print-window img{display:block;width:100%;height:100%;object-fit:fill;transform:scale(1.17,1.11)}.paper-interior::after{opacity:.85}.book-ready .book-viewport{filter:drop-shadow(0 32px 18px #0004)}
@media(max-width:760px){.paper-object{width:90%;top:48%}}
/* Match the selected print mockup's scale without clipping the outside edge. */
@media(min-width:1101px){.atelier-scene{left:34%;right:-2%;top:0}.paper-object{width:88%;top:48%}.atelier-note-top{top:25px;right:12%}}
.paper-back img{width:100%;height:100%;display:block;object-fit:fill}.paper-back::after{content:'';position:absolute;inset:0;background:url('assets/paper-grain.webp') center/cover;mix-blend-mode:multiply;opacity:.65}
@media(min-width:1101px){.paper-object{width:84%}.atelier-note-top{top:-5px;right:15%}}
.print-window img{transform:scale(1.26,1.17)}
@keyframes atelier-unfold{from{transform:rotateY(166deg)}to{transform:rotateY(var(--left-fold,-28deg))}}
@keyframes atelier-enter{from{opacity:0}to{opacity:1}}
.book-ready .paper-left{animation:atelier-unfold 1.8s cubic-bezier(.25,1,.5,1) both}.book-ready .paper-object{animation:atelier-enter 1s ease both}
@media(prefers-reduced-motion:reduce){.book-ready .paper-left,.book-ready .paper-object{animation:none}}
.atelier-copy h1 em{font-size:1.12em}.atelier-intro{margin-top:26px;margin-bottom:34px}
@media(min-width:1101px){.atelier-copy{padding-top:120px}.atelier-note-top{right:28%;top:2px}}
@media(max-width:760px){.atelier-intro{margin:24px 0}}
.form input[type=tel]{width:100%;min-width:0;background:var(--soft);border:1px solid transparent;border-bottom-color:var(--line);border-radius:4px 4px 0 0;color:var(--ink);padding:11px 12px;font-size:16px;line-height:1.5;margin-bottom:25px}.form input[type=tel]:focus{border-bottom-color:var(--violet)}

.book-key-control:focus-visible{position:absolute;left:20px;bottom:12px;width:auto;height:auto;clip:auto;overflow:visible;white-space:normal;padding:10px 16px;background:var(--bg);border:1px solid var(--orange);z-index:10}.book-key-control#bookNext:focus-visible{left:auto;right:20px}#bookPageStatus{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums;letter-spacing:.08em;min-width:48px;text-align:center}
