/* The website uses the same chrome, type scale and page rhythm as Wallside. */
body.framing-site{font-family:'DM Sans',Arial,sans-serif;color:var(--ink);background:var(--paper);line-height:1.6;overflow-x:hidden}
.framing-site .header{width:auto}
.framing-intro{max-width:1450px;margin:43px 5vw 30px;display:grid;grid-template-columns:1fr .9fr;align-items:end;gap:6vw}
.framing-intro .eyebrow,.framing-more .eyebrow{font-size:12px;letter-spacing:.15em;color:var(--ink);margin:0 0 16px}
.framing-intro h1{font-family:var(--serif);font-size:clamp(44px,4.5vw,68px);font-weight:400;letter-spacing:-.05em;line-height:1.08;margin:0 0 15px}
.framing-intro>div:last-child>p{font-size:16px;line-height:1.7;color:var(--muted);max-width:560px;margin:0}
.framing-privacy{display:block;margin-top:12px;color:var(--muted);font-size:12px}
.framing-page .workspace{max-width:1450px;margin:0 5vw 86px;grid-template-columns:minmax(0,1.12fr) minmax(340px,.88fr);gap:clamp(28px,4vw,68px);align-items:start}
.framing-page .stage-wrap{position:sticky;top:22px;min-width:0;padding:14px 14px 12px;border:0;background:#e5e7de;box-shadow:none;overflow:hidden}
.framing-page .stage-wrap canvas{width:100%;height:auto;max-width:660px;margin:0 auto;aspect-ratio:8/9;object-fit:contain;background:#e5e7de}
.framing-page .stage-caption{display:flex;padding:11px 3px 0;color:var(--muted);font-size:11px;letter-spacing:.03em}
.framing-page .stage-header{display:none}
.framing-page .editor{background:var(--paper);border:1px solid var(--line);border-radius:13px;padding:18px;box-shadow:none}
.framing-page .editor-tabs{background:#edf0e9;border-color:var(--line)}
.framing-page .editor-tabs button[aria-selected=true]{color:var(--ink)}
.framing-page .editor-toolbar .save,.web-download{background:var(--ink);border-color:var(--ink);color:#fff}
.framing-page .editor-toolbar .save{width:101px;gap:7px;font-size:12px}
.framing-page .editor-toolbar .save:hover,.web-download:hover{background:#324d43}
.framing-page .panel-scroll{min-height:315px}
.framing-page .upload{background:#f1f3ed;border-color:#cbd5ca}
.framing-page .upload:hover{background:#e9eee7}
.framing-page .about-trigger{position:absolute;z-index:3;left:25px;bottom:50px;width:36px;height:36px;border-radius:50%;border:1px solid #b5c2b4;background:#f8f7f3dc;color:var(--ink);font-family:Georgia,serif;font-size:18px;font-style:italic}
.framing-page .stage-wrap[data-tone=dark] .about-trigger{color:#fff;background:#1e2b24d6;border-color:#ffffff73}
.framing-site a.web-download{margin-bottom:9px;color:#fff;text-decoration:none}
.web-download[hidden],#quick-note-button,#note-button,#album-button{display:none!important}
.framing-more{max-width:1450px;margin:0 5vw 85px;padding:45px 5%;display:grid;grid-template-columns:1fr 1fr;gap:8%;background:var(--ink);color:var(--paper)}
.framing-more .eyebrow{color:#dbe4c9}
.framing-more h2{font-family:var(--serif);font-size:clamp(35px,3.4vw,52px);line-height:1.13;letter-spacing:-.035em;margin:0}
.framing-more>div:last-child{align-self:end}
.framing-more p:not(.eyebrow){color:#d8e0d4;font-size:15px;line-height:1.75;max-width:430px;margin:0 0 21px}
.framing-more .text-link{display:inline-flex;color:#e4edc3;margin:0 23px 7px 0;font-size:14px}
.framing-site .site-footer{margin:0 5vw;padding:40px 0;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:28px;background:none;color:var(--ink);font-size:inherit;letter-spacing:normal}
.site-footer .wordmark{font-family:Georgia,serif;font-size:43px;letter-spacing:-2px;font-weight:600;color:var(--ink)}
.site-footer p{font-size:14px;color:var(--muted);margin:13px 0 0}
.site-footer nav{display:flex;flex-wrap:wrap;gap:28px;font-size:14px}
.site-footer .copyright{font-size:12px;color:var(--muted)}
.site-footer a:hover{text-decoration:underline;text-underline-offset:6px}

@media(min-width:1600px){
 .framing-intro,.framing-page .workspace,.framing-more,.framing-site .site-footer{margin-left:auto;margin-right:auto}
}
@media(max-width:1000px){
 .framing-page .workspace{gap:28px;grid-template-columns:minmax(0,1fr) minmax(320px,.9fr)}
}
@media(max-width:850px){
 html,body.framing-site{width:auto;height:auto;overflow-x:hidden;overflow-y:auto}
 body.framing-site.modal-open{overflow:hidden}
 .framing-page,.framing-page .workspace{height:auto}
 .framing-intro{margin:31px 5vw 25px;grid-template-columns:1fr;gap:9px}
 .framing-intro h1{font-size:clamp(40px,7vw,55px)}
 .framing-intro>div:last-child>p{font-size:15px}
 .framing-page .workspace{display:block;min-height:0;margin:0 5vw 55px}
 .framing-page .stage-wrap{position:sticky;top:0;z-index:10;width:100%;height:auto;min-height:0;margin:0;padding:8px 8px 9px;border:1px solid var(--line);background:#e5e7de;box-shadow:0 8px 24px #14261b12;touch-action:none}
 .framing-page .stage-wrap canvas{width:auto;height:min(39vh,330px);max-width:100%;max-height:none;margin:0 auto;object-fit:contain;will-change:auto}
 .framing-page .stage-caption{display:flex;padding:7px 4px 0}
 .framing-page .stage-header{display:none}
 .framing-page .about-trigger{left:16px;bottom:40px;width:34px;height:34px}
 .framing-page .editor{position:relative;z-index:1;display:block;width:100%;height:auto;min-height:0;margin:14px 0 0;padding:16px;border:1px solid var(--line);border-radius:13px;overflow:visible;box-shadow:none}
 .framing-page .editor-toolbar{padding:0 0 14px}
 .framing-page .panel-scroll{min-height:230px;height:auto;overflow:visible;padding:0}
 .framing-page .editor .status{min-height:16px;margin:7px 1px 0;font-size:11px}
 .framing-page .save-feedback,.save-feedback{bottom:24px}
 .framing-more{margin:0 5vw 55px;padding:35px 6%;grid-template-columns:1fr;gap:20px}
 .framing-more h2{font-size:41px}
 .framing-site .site-footer{display:flex;padding:30px 0;align-items:flex-start}
 .site-footer .copyright{width:100%}
}
@media(max-width:540px){
 .framing-site .header{margin-left:5vw;margin-right:5vw}
 .framing-intro h1{font-size:42px}
 .framing-page .stage-wrap canvas{height:min(34vh,285px)}
 .framing-page .stage-caption{font-size:10px}
 .framing-page .editor{padding:13px}
 .framing-page .editor-tabs button{font-size:11px}
 .framing-page .editor-toolbar .save{width:92px;font-size:11px}
 .framing-more h2{font-size:36px}
 .framing-more .text-link{display:flex;width:max-content}
 .framing-site .site-footer nav{gap:18px}
}
