.cover-footer{position:absolute;bottom:19px;left:max(24px,calc(var(--cover-height,100svh) * .38889 - var(--photo-shift,0px)));right:46px;display:flex;justify-content:space-between;align-items:center;gap:40px;color:#597076;font:11px/1.5 system-ui;z-index:3;}
.footer-quote{max-width:490px;margin:0;font:italic 14px/1.7 Georgia,serif;text-align:center;}
.footer-story{display:flex;flex-direction:column;align-items:center;gap:9px;min-width:0;width:490px;max-width:100%;}
.footer-links{display:flex;flex-direction:column;align-items:flex-end;gap:5px;white-space:nowrap;}
.footer-story button{background:none;border:0;border-radius:0;padding:0;color:inherit;font:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:3px;}
.footer-story button span{margin-left:6px;}
.cover-footer a{color:inherit;}
.cover-footer .footer-contact{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:36px;padding:0 17px;box-sizing:border-box;border:1px solid #b4c8c9;border-radius:7px;background:#ffffff38;text-decoration:none;transition:background .2s,border-color .2s;}
.cover-footer .footer-contact:hover{background:#dcefee;border-color:#15adaa;}
body:has(.story-dialog) .demo-controls{bottom:auto;top:14px;padding:7px 10px;font-size:11px;opacity:.85;}
.story-dialog{padding:0;border:0;border-radius:8px;width:min(900px,calc(100vw - 32px));max-width:none;height:calc(100svh - 48px);max-height:960px;background:#edf1ef;box-shadow:0 25px 100px #0b242552;color:#243436;overflow:hidden;}
.story-dialog::backdrop{background:#152a31a6;backdrop-filter:blur(7px);}
.story-toolbar{height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 25px;border-bottom:1px solid #ced9d5;background:#f7f8f4;font:11px system-ui;letter-spacing:.15em;}
.story-toolbar button{background:none;border:0;padding:10px;color:#354d50;cursor:pointer;font:13px system-ui;letter-spacing:0;}
.story-scroll{height:calc(100% - 57px);overflow:auto;overscroll-behavior:contain;padding:25px;box-sizing:border-box;}
.story-paper{position:relative;max-width:790px;margin:0 auto;padding:74px 74px 54px;box-sizing:border-box;background:#fffdf5;box-shadow:0 4px 24px #586a5710;background-image:radial-gradient(#ac997a13 .65px,transparent .8px);background-size:5px 7px;isolation:isolate;}
.paint-edge{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:-1;}
.story-writing{font-family:'Segoe Print','Bradley Hand',Georgia,serif;font-size:17px;line-height:1.95;}
.story-writing p{margin:0 0 1.45em;}
.story-writing .story-kicker{font:10px/1.7 system-ui;letter-spacing:.16em;text-transform:uppercase;color:#64827d;margin-bottom:22px;}
.story-writing h1{font:normal 38px/1.35 'Segoe Print',Georgia,serif;letter-spacing:-1.1px;color:#224e4a;margin:0 0 40px;}
.story-turn{color:#245f59;}
.story-writing .story-last{font-size:21px;line-height:1.8;color:#215d56;border-top:1px solid #b7cfbe;padding-top:32px;margin-top:32px;}
.story-signature{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;margin-top:50px;font-family:system-ui;}
.signature-logo svg{display:block;width:61px;height:84px;}
.story-signature strong{font-size:27px;letter-spacing:.1em;}
.story-signature span{font-size:11px;color:#5e716d;}
.story-signature button{margin-top:24px;padding:8px;border:0;background:none;color:#21655e;text-decoration:underline;text-underline-offset:5px;font:12px system-ui;cursor:pointer;}
.story-dialog button:focus-visible,.footer-story button:focus-visible,.footer-links a:focus-visible{outline:2px solid #15adaa;outline-offset:4px;}
@media(max-width:600px){.story-dialog{width:calc(100vw - 16px);height:calc(100svh - 20px);}.story-scroll{padding:10px;}.story-paper{padding:48px 25px 35px;}.story-writing{font-size:15px;line-height:1.95;}.story-writing h1{font-size:29px;}.story-writing .story-last{font-size:18px;}.story-toolbar{padding:0 16px;}}
@media(max-width:900px),(max-aspect-ratio:4/3){
 .cover-footer{position:relative;inset:auto;width:min(100%,460px);margin:0 auto;display:flex;flex-direction:column;gap:12px;padding:30px 24px max(22px,env(safe-area-inset-bottom));}
 .footer-story{width:100%;gap:4px;}
 .footer-quote{font-size:13px;line-height:1.75;}
 .footer-quote br{display:none;}
 .footer-story button{min-height:44px;padding:8px;font-size:12px;}
 .footer-links{align-items:center;}
 .cover-footer .footer-contact{min-height:44px;padding:0 22px;font-size:12px;}
}
