/* White paper keeps the summary readable; sparse moving dots mark its perimeter. */
.story-sheet { position:absolute; z-index:3; top:100px; left:36%; width:60%; max-width:900px; max-height:calc(100vh - 132px); box-sizing:border-box; padding:clamp(20px,2.1vw,32px); display:grid; gap:12px; background:#fff; color:#191919; border-radius:3px; box-shadow:0 12px 48px #29251c0a; cursor:pointer; opacity:var(--sheet-reveal,0); visibility:hidden; transform:translateY(calc((1 - var(--sheet-reveal,0))*20px)); transition:box-shadow .25s,background .25s; }
.story-sheet.sheet-visible { visibility:visible; }
.story-sheet:hover,.story-sheet:focus-visible { background:#fffefb; box-shadow:0 16px 52px #29251c16; outline:2px solid #958c7950; outline-offset:8px; }
.story-sheet::before,.story-sheet::after { content:''; position:absolute; pointer-events:none; inset:-9px; padding:9px; background:radial-gradient(circle,#867e6870 1px,transparent 1.8px) 0 0/13px 17px; mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0); mask-composite:exclude; opacity:.7; animation:paper-dust 7s ease-in-out infinite alternate; }
.story-sheet::after { inset:-13px; opacity:.35; animation-delay:-3s; }
@keyframes paper-dust { from{transform:translate(-2px,1px);opacity:.4} to{transform:translate(2px,-2px);opacity:.75} }
.sheet-eyebrow { font-size:13px; letter-spacing:.09em; text-transform:uppercase; color:#716b60; }
.story-sheet h3 { font-size:clamp(25px,2.5vw,38px); line-height:1.08; font-weight:400; margin:0; letter-spacing:-.02em; }
.sheet-lead { margin:0; font-size:16px; line-height:1.5; max-width:64ch; }
.sheet-facts { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; padding:14px 0; border-block:1px solid #eeeae1; }
.sheet-facts>div { min-width:0; }
.sheet-facts strong { display:block; font-weight:400; font-size:clamp(23px,2.3vw,34px); line-height:1.1; }
.sheet-facts span { display:block; font-size:13px; line-height:1.3; margin-top:5px; color:#686358; }
.sheet-projects { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:8px 22px; list-style:none; padding:0; margin:0; font-size:16px; line-height:1.4; }
.sheet-projects li { padding-left:13px; position:relative; }
.sheet-projects li::before { content:'·'; position:absolute; left:0; }
.sheet-media { display:flex; align-items:center; gap:20px; height:clamp(82px,15vh,148px); }
.sheet-media>img { width:60%; height:100%; object-fit:contain; object-position:left center; }
.sheet-brands { display:flex; gap:20px; align-items:center; flex-wrap:wrap; }
.sheet-brands img { width:90px; height:40px; object-fit:contain; }
.sheet-action { min-height:44px; font-size:16px; font-weight:500; text-decoration:underline; text-underline-offset:5px; justify-self:start; }
#experience .exp2-col { min-height:0; max-width:29%; justify-content:flex-start; }
#experience .exp2-top { position:absolute; top:76px; left:4vw; max-width:26vw; }
#experience .exp2-head { display:none; }
#experience .exp-word { font-size:clamp(25px,3vw,42px); }
.project-description { pointer-events:auto; }
.project-access { display:inline-block; margin-top:12px; border:0; background:#fff; border-bottom:1px solid #8b8170; padding:5px 0; font:inherit; cursor:pointer; }
.raymond-reader-dialog { inset:3vh 3vw; border-radius:6px; }
.raymond-reader-dialog .panel-scroll { overflow:hidden; }
.raymond-reader-dialog .panel-col { max-width:1450px; height:94vh; box-sizing:border-box; padding:70px 32px 24px; display:flex; flex-direction:column; }
.raymond-reader-dialog .panel-col>h2 { font-size:clamp(24px,2.5vw,36px); margin:4px 0 8px; }
.raymond-reader-dialog .panel-col>.panel-ctx { margin:0 0 20px; font-size:14px; }
.raymond-reader-dialog .panel-kicker { font-size:12px; }
.raymond-reader-grid { min-height:0; flex:1; display:grid; grid-template-columns:190px minmax(0,1fr); gap:28px; }
.raymond-tabs { display:flex; flex-direction:column; gap:4px; border-right:1px solid #e7e1d7; padding-right:16px; overflow:auto; }
.raymond-tabs button { text-align:left; border:0; border-radius:3px; background:transparent; padding:12px; color:#676053; font:400 15px/1.25 Roboto,Arial,sans-serif; cursor:pointer; }
.raymond-tabs button[aria-selected=true] { background:#f0ede5; color:#171717; }
.raymond-tabs button:focus-visible { outline:2px solid #b1a48e; }
.raymond-tab-body { min-width:0; min-height:0; }
.raymond-tab-panel { height:100%; overflow:auto; padding-right:14px; box-sizing:border-box; }
.raymond-tab-panel[hidden] { display:none; }
.raymond-tab-panel>.panel-step { margin-top:0; }
.raymond-tab-panel h3 { margin:0 0 18px; font-size:27px; line-height:1.15; font-weight:400; }
.raymond-tab-panel p { font-size:17px; line-height:1.6; }
.raymond-tab-panel .case-media-grid { grid-template-columns:repeat(3,1fr); }
.raymond-tab-panel .case-media-grid img { max-height:160px; object-fit:contain; }
.raymond-tab-panel [id="raymond-ray-stability"] .case-media-grid { grid-template-columns:repeat(4,1fr); }
.raymond-tab-panel [id="raymond-ray-stability"] .case-media-grid figure:nth-child(-n+2) { grid-column:span 2; }
.raymond-tab-panel [id="raymond-ray-stability"] .case-media-grid figure:nth-child(n+3) img { max-height:100px; }
.raymond-tab-panel figure>img { max-height:300px; object-fit:contain; }
.raymond-tab-panel .case-overview img { max-height:130px; }
.reader-overview-photo { width:100%; max-height:210px; object-fit:contain; object-position:left center; margin-top:12px; }
.reader-facts { display:flex; gap:34px; margin-bottom:22px; }
.reader-facts p { margin:0; font-size:13px; }
.reader-facts strong { display:block; font-size:30px; font-weight:400; }
@media (max-height:740px) and (min-width:820px) { .story-sheet{top:80px;gap:9px;padding:18px;max-height:calc(100vh - 108px)} .sheet-media{height:76px}.sheet-facts{padding:10px 0}.sheet-projects{font-size:13px;gap:6px 18px} }
@media (max-width:819px),(prefers-reduced-motion:reduce) {
  .story-sheet { position:relative; left:auto; top:auto; width:auto; max-width:none; max-height:none; margin:24px 6vw 36px; opacity:1; transform:none; }
  #experience .exp2-col { max-width:none;min-height:0; }
  #experience .exp2-top { position:static;max-width:none; }
  #experience .exp2-pin { display:block;padding-top:80px; }
  .story-sheet::before,.story-sheet::after { animation:none; }
}
@media (max-width:700px) {
  .sheet-projects{grid-template-columns:1fr;font-size:14px}.sheet-brands img{width:65px}.sheet-media{height:110px}
  .raymond-reader-dialog{inset:0;border-radius:0}.raymond-reader-dialog .panel-col{height:100dvh;padding:64px 18px 18px}
  .raymond-reader-grid{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);gap:16px}
  .raymond-tabs{flex-direction:row;overflow-x:auto;border-right:0;border-bottom:1px solid #e7e1d7;padding:0 0 8px}
  .raymond-tabs button{white-space:nowrap;padding:9px}.raymond-tab-panel .case-media-grid{grid-template-columns:repeat(2,1fr)}
}

/* AM papers share fixed outer bounds with motion and the particle destinations. */
.lab-sheet,.slicer-sheet,.polymer-sheet { max-width:none; transform:none; cursor:default; grid-template-rows:auto auto minmax(0,1fr) auto; }
.raymond-sheet { cursor:default; grid-template-rows:auto auto minmax(0,1fr) auto; height:min(620px,calc(100vh - 132px)); }
.slicer-sheet { grid-template-rows:auto auto minmax(0,1fr); }
.slicer-sheet::before,.slicer-sheet::after { content:none; }
.raymond-sheet:hover,.lab-sheet:hover,.slicer-sheet:hover,.polymer-sheet:hover { background:#fff; box-shadow:0 12px 48px #29251c0a; outline:0; }
.sheet-body { min-height:0; overflow:auto; overscroll-behavior:auto; display:flex; flex-direction:column; gap:14px; padding-right:8px; }
.sheet-body:focus-visible { outline:1px solid #958c79; outline-offset:3px; }
.sheet-sections { display:grid; grid-template-columns:1fr 1fr; gap:14px 22px; }
.sheet-sections section { min-width:0; border-top:1px solid #eeeae1; padding-top:10px; }
.sheet-sections h4 { font-size:16px; line-height:1.3; margin:0 0 6px; font-weight:500; }
.sheet-sections p { font-size:16px; line-height:1.5; margin:0; }
.sheet-body .sheet-media { flex-shrink:0; }
.sheet-study-media { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.sheet-study-media figure { margin:0; min-width:0; }
.sheet-study-media img,.sheet-study-media video { width:100%; height:140px; object-fit:contain; background:#faf9f6; }
.sheet-study-media figcaption { font-size:13px; line-height:1.4; color:#686358; margin-top:6px; }
button.sheet-action { border:0; background:transparent; padding:8px 0; font-family:inherit; cursor:pointer; }
.story-sheet.sheet-flow { position:relative; left:auto; top:auto; width:auto; height:auto; max-height:none; max-width:none; margin:32px 0; opacity:1; transform:none; visibility:visible; }
.sheet-flow .sheet-body { overflow:visible; }
body.flow-layout .am-fallback { display:block; }
body.flow-layout .story-sheet { cursor:default; }
body.flow-layout #slicer .story-sheet { display:grid; }
body.flow-layout .story-sheet::before,body.flow-layout .story-sheet::after { animation:none; }
body.flow-layout .sheet-action { min-width:44px; }
@media (max-width:819px),(prefers-reduced-motion:reduce) {
  #slicer .exp2-pin { display:none; }
  .am-fallback { display:block; }
  .sheet-flow { grid-template-rows:auto; }
}
@media (max-width:600px) {
  .sheet-sections,.sheet-study-media { grid-template-columns:1fr; }
  .sheet-study-media img,.sheet-study-media video { height:auto; max-height:260px; }
  .story-sheet.sheet-flow { margin-inline:0; padding:20px; }
  .sheet-facts { grid-template-columns:1fr; }
  .sheet-media { height:auto; flex-wrap:wrap; }
  .sheet-media>img { width:100%; max-height:220px; }
}
