/* Four little memories: click, develop, keep, then follow the sorry. */
.ap-opening[data-theme="archive"]{--ar-ink:#293e8c;--ar-paper:#f5f0e1;--ar-cream:#fffdf4;--ar-red:#bf5f49;--op-bg:var(--ar-paper);--op-ink:var(--ar-ink);--op-muted:#777064;--op-accent:var(--ar-red);background:var(--ar-paper);color:var(--ar-ink);padding:clamp(20px,4vh,38px) 24px 45px;clip-path:none}
.ap-opening[data-theme="archive"]:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.18;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.74' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23695536' opacity='.25' filter='url(#n)' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}
.ap-opening[data-theme="archive"] .ap-opening-backdrop{background:radial-gradient(ellipse at 50% 45%,#fffdf1 0%,#f5eedb 53%,#eae2cf 100%)}
.ap-opening[data-theme="archive"] .ap-opening-backdrop img{display:none}
.ap-opening[data-theme="archive"] .ap-opening-backdrop:after{background:radial-gradient(ellipse at 5% 8%,#c5b38816,transparent 48%),linear-gradient(128deg,transparent 48%,#fffdf333 49%,transparent 70%)}
.ap-opening[data-theme="archive"] .ap-opening-body{max-width:1100px;gap:clamp(15px,2.8vh,28px);justify-content:center}
.ap-opening[data-theme="archive"] .ap-opening-copy{color:var(--ar-ink)}
.ap-opening[data-theme="archive"] .ap-opening-eyebrow{font-size:9px;letter-spacing:.22em;color:#9d5544}
.ap-opening[data-theme="archive"] .ap-opening-copy h2{font-family:'Fraunces',Georgia,serif;font-size:clamp(33px,4.1vw,56px);font-weight:400;letter-spacing:-.052em;line-height:1.06;white-space:pre-line;margin:13px auto 14px;max-width:760px}
.ap-opening[data-theme="archive"] .ap-opening-copy p{font-size:clamp(12px,1.1vw,14px);line-height:1.6;letter-spacing:.015em;color:#726b5f}
.ap-opening[data-theme="archive"] .ap-opening-stage{height:auto;min-height:0;flex:0 1 auto;perspective:1400px}
.ap-opening[data-theme="archive"] .ar-camera-scene{position:relative;width:min(500px,100%,calc((100svh - 280px)*.8));aspect-ratio:.8;isolation:isolate;perspective:1500px;user-select:none;-webkit-user-select:none;transition:opacity .7s ease,filter .7s ease}
.ap-opening[data-theme="archive"] .ar-camera-rig{position:absolute;inset:0;transform-style:preserve-3d;animation:arCameraBreathe 6s ease-in-out infinite}
.ap-opening[data-theme="archive"] .ar-camera-button{--ar-camera-width:82%;position:absolute;left:calc((100% - var(--ar-camera-width))/2);top:0;width:var(--ar-camera-width);aspect-ratio:1213/969;border:0;padding:0;margin:0;background:transparent;border-radius:14%;cursor:pointer;touch-action:manipulation;color:inherit;-webkit-tap-highlight-color:transparent;z-index:3;outline:none}
.ap-opening[data-theme="archive"] .ar-camera-button:focus-visible{outline:2px solid var(--ar-ink);outline-offset:10px}
.ap-opening[data-theme="archive"]:not([data-keyboard="true"]) .ar-camera-button:focus{outline:none}
.ap-opening[data-theme="archive"] .ar-camera-button:disabled{cursor:default}
.ap-opening[data-theme="archive"] .ar-camera-image{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 15px 12px #46372023);pointer-events:none}
.ap-opening[data-theme="archive"] .ar-shutter-halo{position:absolute;left:81.4%;top:47.5%;width:14.4%;aspect-ratio:1;translate:-50% -50%;border-radius:50%;box-shadow:0 0 0 0 #fff4d988;animation:arShutterInvite 2.6s ease-out infinite;pointer-events:none}
.ap-opening[data-theme="archive"] .ar-shutter-halo:before{content:"";position:absolute;inset:3px;border:1px solid #fff8e782;border-radius:50%;opacity:.8}
.ap-opening[data-theme="archive"] .ar-flash-glow{position:absolute;left:21.4%;top:21.2%;width:24%;aspect-ratio:1.3;translate:-50% -50%;border-radius:30%;opacity:0;background:radial-gradient(ellipse,#fffef2 12%,#fff5cbbb 35%,#ffdfa13d 61%,transparent 74%);pointer-events:none}
.ap-opening[data-theme="archive"] .ar-scene-shadow{position:absolute;left:11%;top:50%;width:80%;height:11%;border-radius:50%;background:#6853302a;filter:blur(20px);transform:rotate(-3deg);z-index:-2;opacity:.55}
/* The chute clips the sheet at the actual slot, while the sheet lies over its lower lip. */
.ap-opening[data-theme="archive"] .ar-print-chute{--ar-slot-top:43.8%;--ar-print-width:46%;position:absolute;left:calc((100% - var(--ar-print-width))/2);top:var(--ar-slot-top);width:var(--ar-print-width);height:56%;z-index:4;clip-path:inset(0 -90% -65%);perspective:1200px;pointer-events:none;padding:0 3px 16px;box-sizing:content-box;margin-left:-3px}
.ap-opening[data-theme="archive"] .ar-print-chute:after{content:"";position:absolute;left:3px;right:3px;top:0;height:8px;background:linear-gradient(#1719136e,transparent);opacity:0;z-index:4;pointer-events:none}
.ap-opening[data-theme="archive"] .ar-instant-print{position:absolute;left:3px;top:0;width:calc(100% - 6px);aspect-ratio:.86;margin:0;padding:5.5% 5.5% 4%;background:linear-gradient(137deg,#fffdf4,#f5f1e5);box-shadow:0 1px 0 #d3c6aa,0 5px 11px #45392325;opacity:0;transform:translateY(-105%);transform-origin:50% 8%;will-change:transform;backface-visibility:hidden;display:flex;flex-direction:column;align-items:center;border:1px solid #e8dec8;transition:transform .95s cubic-bezier(.2,.72,.24,1),box-shadow .95s ease}
.ap-opening[data-theme="archive"] .ar-print-image{position:relative;width:100%;aspect-ratio:1.18;overflow:hidden;background:#dccbab;flex-shrink:0;box-shadow:inset 0 0 0 1px #30281812}
.ap-opening[data-theme="archive"] .ar-print-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:65% center;filter:sepia(.12) saturate(.8);opacity:0}
.ap-opening[data-theme="archive"] .ar-developing-wash{position:absolute;inset:0;background:linear-gradient(140deg,#e8dbc1,#d5c7ac 54%,#e3d8c1);box-shadow:inset 0 0 18px #987a3916;opacity:1}
.ap-opening[data-theme="archive"] .ar-instant-print figcaption{width:100%;margin:7% 0 3%;color:#34457a;font:600 clamp(15px,3.6vw,25px)/.93 'Caveat','Segoe Print',cursive;text-align:center;transform:rotate(-3deg);white-space:nowrap;opacity:0}
.ap-opening[data-theme="archive"] .ar-print-dedication{display:flex;justify-content:center;align-items:center;gap:4px;width:100%;margin:auto 0 0;color:#977b67;font:500 clamp(7px,1.4vw,9px)/1.5 'DM Sans',Arial,sans-serif;letter-spacing:.04em;text-align:center;opacity:0}
.ap-opening[data-theme="archive"] .ar-print-dedication [data-opening-to]{max-width:70%;overflow-wrap:anywhere}
.ap-opening[data-theme="archive"] .ar-print-dedication svg{width:10px;height:10px;color:var(--ar-red);flex-shrink:0}
.ap-opening[data-theme="archive"] .ar-shutter-note{position:absolute;right:-1%;top:44.5%;z-index:5;pointer-events:none;color:#a26950;transform:rotate(-8deg);font:400 clamp(18px,3.6vw,25px)/1 'Caveat','Segoe Print',cursive}
.ap-opening[data-theme="archive"] .ar-shutter-note svg{display:block;width:66px;height:54px;margin-left:auto;transform:translate(-14px,-93px) rotate(-11deg)}
.ap-opening[data-theme="archive"] .ar-camera-instruction{position:absolute;left:0;right:0;top:61%;margin:0;text-align:center;color:#6f6a5e;font:500 clamp(7px,1.6vw,9px)/1.8 'DM Sans',Arial,sans-serif;letter-spacing:.14em;pointer-events:none;transition:opacity .25s}
.ap-opening[data-theme="archive"] .ar-camera-instruction span{color:var(--ar-red);padding:0 6px}
.ap-opening[data-theme="archive"] .ar-shot-meter{position:absolute;left:50%;right:auto;top:auto;bottom:0;transform:translateX(-50%);white-space:nowrap;display:flex;align-items:center;gap:7px;z-index:5;color:#897c69;font:500 8px/1.4 'DM Sans',Arial,sans-serif;letter-spacing:.065em;pointer-events:none}
.ap-opening[data-theme="archive"] .ar-shot-meter [data-shot-progress]{font-size:10px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--ar-ink);letter-spacing:.11em}
.ap-opening[data-theme="archive"] .ar-keepsake-stamp{position:absolute;left:-1%;top:43%;width:60px;aspect-ratio:.79;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;background:#f9f4e6;border:1px solid #b49b7270;outline:3px solid #f9f4e6;box-shadow:2px 3px 6px #705b2620;color:#9c674c;transform:rotate(-12deg);z-index:1}
.ap-opening[data-theme="archive"] .ar-keepsake-stamp span{font:500 5px/1.3 'DM Sans',Arial,sans-serif;letter-spacing:.12em}
.ap-opening[data-theme="archive"] .ar-keepsake-stamp svg{width:29px;height:26px;color:#b86850}
.ap-opening[data-theme="archive"] .ap-opening-body{position:relative;z-index:1}
.ar-pencil-hearts{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;user-select:none}
.ar-heart-doodle{position:absolute;aspect-ratio:1;opacity:0;color:#8d995c;transform:rotate(var(--heart-turn));animation:arHeartBloom var(--heart-duration) var(--heart-delay) linear infinite}
.ar-heart-doodle svg{display:block;width:100%;height:100%;overflow:visible}
.ar-heart-doodle path{stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;animation:arHeartDraw var(--heart-duration) var(--heart-delay) ease-in-out infinite}
.ar-heart-doodle .ar-heart-flourish{stroke-width:1.2;animation-name:arHeartUnderline}
.ap-opening[data-theme="archive"]:is([data-capture-state="focusing"],[data-capture-state="zooming"],[data-capture-state="complete"]) .ar-pencil-hearts,.ap-opening[data-theme="archive"]:not([data-stage="waiting"]) .ar-pencil-hearts{display:none}
@keyframes arHeartBloom{0%,100%{opacity:0;transform:translateY(3px) rotate(var(--heart-turn))}12%,65%{opacity:var(--heart-ink)}86%{opacity:0;transform:translateY(-5px) rotate(var(--heart-turn))}}
@keyframes arHeartDraw{0%,5%{stroke-dashoffset:1}32%,100%{stroke-dashoffset:0}}
@keyframes arHeartUnderline{0%,30%{stroke-dashoffset:1}47%,100%{stroke-dashoffset:0}}
.ap-opening[data-theme="archive"] .ar-camera-flower{position:absolute;right:0;top:66%;width:14%;height:23%;transform:rotate(21deg);filter:drop-shadow(2px 3px 1px #6c5d2620);z-index:2;pointer-events:none;opacity:.9}
.ap-opening[data-theme="archive"] .ap-opening-skip{color:var(--ar-ink);font-size:11px;letter-spacing:.025em;right:clamp(20px,4vw,65px);bottom:max(10px,env(safe-area-inset-bottom));padding:10px 1px}
.ap-opening[data-theme="archive"]:not([data-keyboard="true"]) .ap-opening-skip:focus{outline:none}
.ap-opening[data-theme="archive"] .ar-camera-rig.ar-shooting{animation:arCameraShutter .48s ease both}
.ap-opening[data-theme="archive"] .ar-camera-rig.ar-shooting .ar-shutter-halo{animation:none;opacity:0}
.ap-opening[data-theme="archive"] .ar-camera-rig.ar-shooting .ar-flash-glow{animation:arCameraFlash .72s ease-out both}
.ap-opening[data-theme="archive"] .ar-camera-rig.ar-shooting .ar-print-chute:after{animation:arSlotShadow 3s linear both}
.ap-opening[data-theme="archive"] .ar-instant-print.is-developing{opacity:1;z-index:10;animation:arPrintEject 1.55s cubic-bezier(.24,.64,.24,1) both}
.ap-opening[data-theme="archive"] .ar-instant-print.is-developing .ar-print-image img{animation:arImageDevelop 1.7s ease-out .9s both}
.ap-opening[data-theme="archive"] .ar-instant-print.is-developing .ar-developing-wash{animation:arWashDevelop 1.7s ease-in-out .9s both}
.ap-opening[data-theme="archive"] .ar-instant-print.is-developing figcaption{animation:arPrintInk .75s ease 1.95s both}
.ap-opening[data-theme="archive"] .ar-instant-print.is-developing .ar-print-dedication{animation:arPrintInk .75s ease 2.15s both}
.ap-opening[data-theme="archive"] .ar-instant-print:is(.is-stacked,.is-developed){opacity:1;animation:none}
.ap-opening[data-theme="archive"] .ar-instant-print.is-developed{z-index:10;transform:translateY(0) rotate(-2deg)}
.ap-opening[data-theme="archive"] .ar-instant-print.is-stacked{transform:translate(var(--ar-stack-x,0),var(--ar-stack-y,42%)) rotate(var(--ar-stack-rotation,0deg)) scale(.77);box-shadow:0 1px 0 #d3c6aa,0 8px 15px #45392322;z-index:var(--ar-stack-order,1)}
.ap-opening[data-theme="archive"] .ar-instant-print[data-shot-index="0"]{--ar-stack-x:-51%;--ar-stack-y:35%;--ar-stack-rotation:-12deg;--ar-stack-order:1}
.ap-opening[data-theme="archive"] .ar-instant-print[data-shot-index="1"]{--ar-stack-x:0%;--ar-stack-y:40%;--ar-stack-rotation:2deg;--ar-stack-order:2}
.ap-opening[data-theme="archive"] .ar-instant-print[data-shot-index="2"]{--ar-stack-x:51%;--ar-stack-y:35%;--ar-stack-rotation:12deg;--ar-stack-order:3}
.ap-opening[data-theme="archive"] .ar-instant-print:is(.is-stacked,.is-developed) :is(.ar-print-image img,figcaption,.ar-print-dedication){opacity:1;animation:none}
.ap-opening[data-theme="archive"] .ar-instant-print:is(.is-stacked,.is-developed) .ar-developing-wash{opacity:0;animation:none}
.ap-opening[data-theme="archive"] .ar-instant-print[data-shot-index="3"]{aspect-ratio:.8}
.ap-opening[data-theme="archive"] .ar-instant-print[data-shot-index="3"] .ar-print-image img{object-position:50% 50%;filter:saturate(.88)}
.ap-opening[data-theme="archive"] .ar-instant-print[data-shot-index="3"] figcaption{color:#ac423e;white-space:normal;max-width:100%;font-size:clamp(12px,2.9vw,21px);line-height:1.05;margin:4% 0 1%}
.ap-opening[data-theme="archive"]:not([data-capture="0"]) :is(.ar-camera-instruction,.ar-shutter-note){opacity:0;transition:opacity .25s}
.ap-opening[data-theme="archive"]:is([data-capture-state="focusing"],[data-capture-state="zooming"],[data-capture-state="complete"]) .ar-camera-scene{opacity:.12;filter:blur(2px);pointer-events:none}
.ap-opening[data-theme="archive"]:is([data-capture-state="focusing"],[data-capture-state="zooming"],[data-capture-state="complete"]) .ap-opening-copy{opacity:0;transition:opacity .5s}
.ap-opening[data-theme="archive"] .ar-instant-print.is-presented{visibility:hidden}
.ap-opening[data-theme="archive"] .ar-teddy-backdrop{position:absolute;inset:0;background:#eee5d4;opacity:0;transition:opacity .65s ease;z-index:5;pointer-events:none}
.ap-opening[data-theme="archive"] .ar-teddy-backdrop.is-visible{opacity:.93}
.ap-opening[data-theme="archive"] .ar-instant-print.ar-teddy-portal{position:fixed;z-index:6;aspect-ratio:auto;opacity:1;visibility:visible;transform:none;transform-origin:0 0;animation:none;transition:none;pointer-events:none;padding:10px;box-shadow:0 1px 0 #d3c6aa,0 18px 65px #493a3033}
.ap-opening[data-theme="archive"] .ar-instant-print.ar-teddy-portal :is(.ar-print-image img,figcaption,.ar-print-dedication){opacity:1;animation:none}
.ap-opening[data-theme="archive"] .ar-instant-print.ar-teddy-portal .ar-print-image img{object-position:50% 50%}
.ap-opening[data-theme="archive"] .ar-instant-print.ar-teddy-portal figcaption{color:#ac423e;white-space:normal;max-width:100%;font-size:clamp(12px,2.9vw,21px);line-height:1.05;margin:4% 0 1%}
.ap-opening[data-theme="archive"] .ar-instant-print.ar-teddy-portal .ar-developing-wash{opacity:0;animation:none}
.ap-opening[data-theme="archive"]:is([data-stage="film"],[data-stage="leaving"]) :is(.ar-teddy-portal,.ar-teddy-backdrop){opacity:0;transition:opacity 1s ease;pointer-events:none}
.ap-opening[data-theme="archive"][data-stage="film"] .ar-camera-scene{opacity:0;transition:opacity .8s;pointer-events:none}
/* Keep the developed photograph in place while the film crossfades over it. */
.ap-opening[data-theme="archive"]:is([data-stage="film"],[data-stage="leaving"]) .ar-camera-rig{animation:none;transform:none}
.ap-opening[data-theme="archive"]:is([data-stage="film"],[data-stage="leaving"]) .ar-print-image img,.ap-opening[data-theme="archive"]:is([data-stage="film"],[data-stage="leaving"]) .ar-instant-print figcaption,.ap-opening[data-theme="archive"]:is([data-stage="film"],[data-stage="leaving"]) .ar-print-dedication{opacity:1}
.ap-opening[data-theme="archive"]:is([data-stage="film"],[data-stage="leaving"]) .ar-developing-wash,.ap-opening[data-theme="archive"]:is([data-stage="film"],[data-stage="leaving"]) .ar-camera-instruction,.ap-opening[data-theme="archive"]:is([data-stage="film"],[data-stage="leaving"]) .ar-shutter-note,.ap-opening[data-theme="archive"]:is([data-stage="film"],[data-stage="leaving"]) .ar-shutter-halo{opacity:0;animation:none}
.ap-opening[data-theme="archive"][data-stage="film"] .ap-opening-body{transform:scale(1.025);transition:opacity .85s ease,transform 1.4s ease}
/* The existing film stays the interlude. Warm framing and type keep it legible. */
.ap-opening[data-theme="archive"] .ap-opening-film{z-index:8;background:#302919;transform:scale(1.035);transition:opacity 1s ease,transform 2.1s cubic-bezier(.2,.7,.2,1),visibility 1s}
.ap-opening[data-theme="archive"][data-stage="film"] .ap-opening-film{transform:scale(1)}
.ap-opening[data-theme="archive"] .ap-opening-film:after{content:"";position:absolute;inset:clamp(13px,2vw,28px);border:1px solid #fff8e640;pointer-events:none;z-index:3}
.ap-opening[data-theme="archive"] .ap-opening-film-shade{background:linear-gradient(180deg,#201b1400 25%,#30281612 43%,#2822147a 69%,#201c13b3 100%)}
.ap-opening[data-theme="archive"] .ap-opening-film-copy{color:#fff9e6;text-shadow:0 2px 2px #2e281b26,0 3px 24px #211b177a}
.ap-opening[data-theme="archive"] .ap-opening-beat{bottom:clamp(82px,15vh,160px);left:9%;right:9%}
.ap-opening[data-theme="archive"] .ap-opening-film-eyebrow{font-size:10px;font-weight:500;letter-spacing:.23em;color:#fff6dc}
.ap-opening[data-theme="archive"] .ap-opening-beat p{font-family:'Fraunces',Georgia,serif;font-size:clamp(37px,6vw,77px);font-weight:400;line-height:1.07;letter-spacing:-.045em;white-space:pre-line;margin:16px auto 20px;max-width:820px}
.ap-opening[data-theme="archive"] .ap-opening-beat>span:last-child{font-size:clamp(12px,1.2vw,15px);font-weight:400;letter-spacing:.02em;line-height:1.65}
.ap-opening[data-theme="archive"] .ap-opening-film-progress{height:1px;background:#fff4d9bb}
.ap-opening[data-theme="archive"][data-stage="film"] .ap-opening-skip,.ap-opening[data-theme="archive"][data-stage="leaving"] .ap-opening-skip{color:#fff9e6;text-shadow:0 1px 8px #1a160acc}
.ap-opening[data-theme="archive"][data-stage="leaving"]{clip-path:none;opacity:0;transition:opacity 1s cubic-bezier(.25,.46,.45,.94);pointer-events:none}
.ap-opening[data-theme="archive"][data-stage="leaving"] .ap-opening-film{transform:scale(1.018)}
@keyframes arCameraBreathe{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-4px) rotate(-.35deg)}}
@keyframes arShutterInvite{0%,18%{box-shadow:0 0 0 0 #fff3d9a6}76%,100%{box-shadow:0 0 0 13px #fff3d900}}
@keyframes arCameraShutter{0%{transform:rotate(-1deg)}18%{transform:translateY(2px) rotate(-.3deg) scale(.989)}42%{transform:translateY(-1px) rotate(.2deg)}100%{transform:translateY(0) rotate(0)}}
@keyframes arCameraFlash{0%{opacity:0;transform:scale(.8)}8%{opacity:.95;transform:scale(2.5)}26%{opacity:.42;transform:scale(2.8)}100%{opacity:0;transform:scale(3.2)}}
@keyframes arPrintEject{0%,10%{transform:translateY(-105%) rotate(0)}100%{transform:translateY(0) rotate(-2deg)}}
@keyframes arSlotShadow{0%,10%{opacity:0}15%,63%{opacity:1}82%,100%{opacity:.25}}
@keyframes arImageDevelop{0%{opacity:0;filter:sepia(.8) saturate(.15) blur(3px)}60%{opacity:.65;filter:sepia(.3) saturate(.65) blur(.5px)}100%{opacity:1;filter:sepia(.1) saturate(.85) blur(0)}}
@keyframes arWashDevelop{0%{opacity:1}100%{opacity:0}}
@keyframes arPrintInk{from{opacity:0}to{opacity:1}}
@media(max-width:600px){
  .ap-opening[data-theme="archive"]{padding:23px 23px 48px}
  .ap-opening[data-theme="archive"] .ap-opening-body{gap:24px}
  .ap-opening[data-theme="archive"] .ap-opening-copy h2{font-size:clamp(31px,8.25vw,45px);max-width:500px;margin:13px auto 13px}
  .ap-opening[data-theme="archive"] .ap-opening-copy p{font-size:12px;max-width:none;display:block}
  .ap-opening[data-theme="archive"] .ar-camera-scene{width:min(450px,100%,calc((100svh - 265px)*.8))}
  .ap-opening[data-theme="archive"] .ar-keepsake-stamp{width:43px;top:44%;gap:3px;left:-2%}
  .ap-opening[data-theme="archive"] .ar-keepsake-stamp span{font-size:3.6px}
  .ap-opening[data-theme="archive"] .ar-keepsake-stamp svg{width:23px;height:21px}
  .ap-opening[data-theme="archive"] .ar-shutter-note{right:-3%;top:44.5%;font-size:20px}
  .ap-opening[data-theme="archive"] .ar-shutter-note svg{width:49px;height:43px;transform:translate(-13px,-78px) rotate(-11deg)}
  .ap-opening[data-theme="archive"] .ar-instant-print figcaption{font-size:clamp(13px,3.9vw,20px)}
  .ap-opening[data-theme="archive"] .ar-camera-instruction{font-size:7px;letter-spacing:.09em;top:62%}
  .ap-opening[data-theme="archive"] .ar-camera-flower{top:69%;right:-1%}
  .ap-opening[data-theme="archive"] .ar-shot-meter{top:auto;bottom:0;font-size:7px;gap:5px}
  .ap-opening[data-theme="archive"] .ap-opening-beat{bottom:16vh;left:9%;right:9%}
  .ap-opening[data-theme="archive"] .ap-opening-beat p{font-size:clamp(37px,8.7vw,55px)}
}
@media(max-height:680px){
  .ap-opening[data-theme="archive"]{padding-top:16px;padding-bottom:40px}
  .ap-opening[data-theme="archive"] .ap-opening-body{gap:12px}
  .ap-opening[data-theme="archive"] .ap-opening-copy h2{font-size:clamp(27px,4.8vh,33px);margin:9px auto}
  .ap-opening[data-theme="archive"] .ap-opening-copy p{font-size:11px}
  .ap-opening[data-theme="archive"] .ap-opening-eyebrow{font-size:8px}
  .ap-opening[data-theme="archive"] .ar-camera-scene{width:min(390px,100%,calc((100svh - 232px)*.8))}
}
@media(max-height:480px) and (min-width:640px){
  .ap-opening[data-theme="archive"] .ap-opening-body{flex-direction:row;gap:7vw}
  .ap-opening[data-theme="archive"] .ap-opening-copy{max-width:44%;text-align:left}
  .ap-opening[data-theme="archive"] .ap-opening-copy h2{font-size:37px}
  .ap-opening[data-theme="archive"] .ap-opening-stage{width:42%;flex-shrink:1}
  .ap-opening[data-theme="archive"] .ar-camera-scene{width:min(100%,calc((100svh - 90px)*.8))}
}
@media(prefers-reduced-motion:reduce){
  .ar-heart-doodle{opacity:.5}
  .ar-heart-doodle path{stroke-dashoffset:0}
  .ap-opening[data-theme="archive"],.ap-opening[data-theme="archive"] *,.ap-opening[data-theme="archive"] *:before,.ap-opening[data-theme="archive"] *:after{animation:none!important;transition:none!important}
  .ap-opening[data-theme="archive"] .ar-camera-rig{transform:none}
  .ap-opening[data-theme="archive"] .ar-shutter-halo{box-shadow:0 0 0 3px #fff4d9a6}
  .ap-opening[data-theme="archive"] .ar-instant-print.is-developing{transform:translateY(0);opacity:1}
  .ap-opening[data-theme="archive"] .ar-instant-print.is-developing :is(.ar-print-image img,figcaption,.ar-print-dedication){opacity:1;filter:none}
  .ap-opening[data-theme="archive"] .ar-instant-print.is-developing .ar-developing-wash{opacity:0}
  .ap-opening[data-theme="archive"][data-capture-state="focusing"] .ar-camera-scene{opacity:1;filter:none}
  .ap-opening[data-theme="archive"][data-capture-state="focusing"] .ap-opening-copy{opacity:1}
  .ap-opening[data-theme="archive"][data-stage="leaving"]{clip-path:none;opacity:0}
}

/* Printed captions stay inside the paper; the full memory remains in the story. */
.ap-opening[data-theme="archive"] .ar-instant-print figcaption.is-custom-caption{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;white-space:normal;overflow:hidden;overflow-wrap:anywhere;line-height:1.05;flex-shrink:0;max-height:2.1em;font-size:clamp(12px,3.2vw,20px)}
