/* Correction checkpoint: original printed skin, physical glyphs, true 3D, dense LCD. */
.header-brand{display:flex;flex-direction:column;align-items:flex-start;gap:0}.studio-attribution{display:inline-block;margin-top:6px;color:#5b5c6b;font:11px/1.45 Inter,system-ui,-apple-system,sans-serif;letter-spacing:.02em;text-decoration:none}.studio-attribution:hover{color:#14141b;text-decoration:none}
#landing h1 em{background:linear-gradient(120deg,#617a8c 3%,#c2b0d4 25%,#3d7c96 42%,#b8cfce 58%,#876b91 75%,#394f6c 100%);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-stroke:.25px #657f93;text-shadow:0 3px 12px #ef83be26;font-weight:700}
.hero-camera,.hero-camera:hover,.hero-camera:active{transform:none;filter:none;width:540px;height:330px}.hero-model{position:absolute;inset:0;display:block}.hero-model.has-geometry>.front-asset{visibility:hidden}.geometry-camera{display:block;width:100%;height:100%;pointer-events:none}.hero-model>.geometry-camera{filter:drop-shadow(0 18px 13px #29435a29)}
.camera-invitation{left:50%;bottom:-42px;transform:translateX(-50%);color:white;font-weight:900;font-size:13px;letter-spacing:1.3px;text-shadow:0 1px 3px #1f5f8e,0 -1px 1px #286b9d;padding:15px 26px}.camera-invitation span{margin-left:12px}.intro-stage{height:415px}
.camera-transition{transform-style:flat;filter:none}.camera-transition .geometry-camera{position:absolute;inset:0;filter:drop-shadow(0 15px 18px #344b6b30)}
.era-camera{position:relative}.era-camera .geometry-camera{position:absolute;inset:0}.era-camera.has-geometry .era-camera-turn{visibility:hidden}.era-angle-right{display:none!important}.era-angle-left{opacity:1!important}.era-camera-turn{transform:none!important;transition:none!important}.look-option{transform:scale(1);transform-origin:center;transition:transform .34s cubic-bezier(.2,.7,.2,1),box-shadow .34s,background .34s;z-index:1}.look-option:hover,.look-option:focus-visible,.look-option[aria-pressed=true]{transform:scale(1.045);z-index:2;box-shadow:0 7px 17px #57718f20}.look-list{gap:14px}.look-option[data-look=classic] .era-copy{display:flex;align-items:center;gap:12px}.classic-aperture{width:25px;height:25px;fill:none;stroke:#465d6d;stroke-width:1.6;flex:none}.look-option[data-look=classic] .era-title{font:28px/.9 'Apple Garamond Condensed','Apple Garamond',Georgia,serif;letter-spacing:-.6px;margin:0}.look-option[data-look=classic] .look-era{display:none}
.rear-camera{container-type:inline-size}.skin-control{transform:translate(-50%,-50%);display:flex;justify-content:center;align-items:center}.skin-control:active{transform:translate(-50%,-50%)!important}.physical-glyph{display:flex;align-items:center;justify-content:center;width:44%;height:70%;max-width:30px;max-height:30px;pointer-events:none;color:#4b5053}.physical-glyph svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round;filter:drop-shadow(0 1px #fff7)}.physical-glyph .play-glyph{stroke:#2685a6;stroke-width:2.4}.play-glyph path{fill:#2685a6;stroke-width:0}.physical-glyph #flash-symbol{width:100%;height:100%}.physical-glyph .bolt{fill:#535d62;stroke:#535d62;stroke-width:1}.physical-glyph .flash-slash{stroke:#535d62;stroke-width:1.8}.physical-glyph [data-enabled=true] .bolt{fill:#b87900;stroke:#956405}.physical-glyph [data-enabled=true] .flash-slash{display:none}.skin-control.pressed .physical-glyph{transform:translateY(1px)}.sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.printed-label{position:absolute;z-index:2;pointer-events:none;text-align:center;line-height:1;font:700 1.48cqw/1 Arial,sans-serif;color:#30383c;background-image:url('assets/digicam-v2-skin.webp');background-size:1600% 3130.435%;background-position:36.2% 16.5%;text-shadow:0 1px #fff6}.timer-printed{left:26.5%;top:16.05%;width:7.5%;height:3.9%;padding-top:.15%}.flash-printed{left:75.8%;top:51.6%;width:6.6%;height:3.5%;background-position:88.3% 54%;padding-top:.1%}.classic-printed{left:13.55%;top:16%;width:7.9%;height:3.9%;font:2.1cqw/.95 'Apple Garamond Condensed','Apple Garamond',Georgia,serif;letter-spacing:-.06em}
.action-camera-icon{width:22px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linejoin:round}
/* Logical 282 × 188 HUD: narrow, outlined lettering and dense edge rails. */
.camera-screen{container-type:inline-size;--lcd-font:'Arial Narrow','Helvetica Neue',Arial,sans-serif}.screen-hud{inset:0;z-index:3;font-family:var(--lcd-font);font-stretch:condensed;font-size:5cqw;font-weight:700;letter-spacing:-.025em;text-shadow:-1px -1px #111,1px -1px #111,-1px 1px #111,1px 1px #111;color:#fff;line-height:1}.screen-hud span{padding:0;position:absolute}.screen-hud #mode-label{left:2.13%;top:3.2%;font-size:4.3cqw}.screen-hud #hud-format{left:2.13%;bottom:1.5%;top:auto;right:auto;font-size:4.25cqw}.screen-hud #look-label{left:27%;bottom:1.5%;font-size:4.1cqw}.screen-hud #counter{right:2.13%;bottom:1.5%;font-size:4.1cqw}.screen-hud #hud-timer{right:2.13%;top:3.2%;font-size:5cqw}.screen-hud:before{content:'';position:absolute;left:0;right:0;bottom:0;height:9%;background:#10171b94}.viewfinder-corner{display:none}
.gallery-hud{padding:2.1%;background:#11232be8;color:white;font-family:var(--lcd-font);font-stretch:condensed;font-size:4.6cqw;font-weight:700;letter-spacing:0;line-height:1.05;text-shadow:1px 1px #000,-1px -1px #000}.gallery-bar{font:inherit;letter-spacing:0;color:white;padding:1% 0 2%;border-color:#d2d9dd}.gallery-empty{font:inherit;letter-spacing:0;gap:3%;text-align:center}.empty-photo-icon{font-size:12cqw}.gallery-grid{gap:2%;padding:2% 0}.gallery-tile span{font:700 3.6cqw var(--lcd-font)}.gallery-back{font:700 4.5cqw var(--lcd-font);background:#142940;border:1px solid #d4e7ef;color:white;padding:1% 4%;min-height:0;text-shadow:1px 1px #111;border-radius:0}
.settings-panel:not(.regular-settings){padding:2.1%;font:700 4.6cqw/1.05 var(--lcd-font);font-stretch:condensed;letter-spacing:0;color:#fff;background:#10212bed;text-shadow:1px 1px #000,-1px -1px #000;overflow:auto;gap:0}.settings-panel:not(.regular-settings) .settings-title{font:inherit;letter-spacing:0;color:#fff;padding:0 0 2%;border-bottom:1px solid #aebec7;min-height:14%;background:#223d53}.settings-panel:not(.regular-settings) .settings-title button{font:700 6cqw var(--lcd-font);color:#fff;min-width:14%;min-height:0;padding:0}.settings-panel:not(.regular-settings) .setting-row{font:inherit;min-height:25%;padding:1.5% 0;gap:3%;border-color:#506a77;flex:0 0 auto;line-height:1.05}.settings-panel:not(.regular-settings) .setting-row small{display:none}.settings-panel:not(.regular-settings) .secondary-button{font:700 4.8cqw/1 var(--lcd-font);min-width:30%;min-height:0;padding:3% 3%;gap:8%;color:white;background:#1f4159;border:1px solid #9fbac9;text-shadow:1px 1px #000;border-radius:0}.settings-panel:not(.regular-settings) .secondary-button:focus{background:#9ed2ed;color:#112d43;outline:1px solid #eefaff;outline-offset:0;text-shadow:none}.settings-panel:not(.regular-settings) p{font:700 3.8cqw/1 var(--lcd-font);margin:2% 0;color:#e6edf2}.settings-panel:not(.regular-settings) .settings-done{font:700 4.5cqw/1 var(--lcd-font);min-height:0;padding:2% 5%;color:#fff;border:1px solid #9eb4c1;background:#223d53}.settings-panel:not(.regular-settings) .timer-glyph{width:5.3cqw;height:5.3cqw;stroke-width:1.8}
@media(max-width:760px){.hero-camera,.hero-camera:hover,.hero-camera:active{width:400px;height:270px}.intro-stage{height:345px}.camera-invitation{font-size:11px;bottom:-35px}.skin-control.expanded-target .physical-glyph{width:16px;height:16px}.look-option:hover,.look-option:focus-visible,.look-option[aria-pressed=true]{transform:scale(1.025)}}
@media(max-width:450px){.hero-camera,.hero-camera:hover,.hero-camera:active{width:330px;height:225px}.intro-stage{height:310px}.camera-invitation{bottom:-38px;font-size:10px}.studio-attribution{font-size:9px;margin-top:5px}.skin-control.expanded-target .physical-glyph{width:11px;height:11px}.look-option[data-look=classic] .era-title{font-size:26px}}
@media(prefers-reduced-motion:reduce){.look-option,.look-option:hover,.look-option:focus-visible,.look-option[aria-pressed=true]{transition:none;transform:none}.hero-camera{transition:none}}
/* The label masks sample no letters: keep only neutral silver behind new print. */
.printed-label{background-image:none;background:linear-gradient(95deg,#c8cbcb,#ced0d0);box-shadow:none;border:0}.classic-printed{left:13.55%;width:7.9%}.timer-printed{left:26.5%;width:7.5%}
.digicam-wordmark img{width:228px;height:auto}.site-header{height:116px}.header-brand .studio-attribution{margin-top:5px;margin-left:1px}
@media(max-width:760px){.digicam-wordmark img{width:174px}.site-header{height:96px}}
@media(max-width:450px){.digicam-wordmark img{width:151px}}
/* One quiet, staggered arrival; the settled scene has no looping animation. */
.look-option[data-look=phone] .phone-era{font:30px/1 'Apple Garamond Condensed','Apple Garamond',Georgia,serif;letter-spacing:-.5px;margin:0 0 6px;color:#293a46}
#flash .physical-glyph{width:69%;height:69%;max-width:32px;max-height:32px;aspect-ratio:1}
#flash-symbol{display:flex;align-items:center;justify-content:center}
#flash .flash-glyph{filter:none}
#flash .bolt{fill:#36464e;stroke:none}
#flash .flash-ring{fill:#d5d9d9;stroke:#36464e;stroke-width:2}
#flash .flash-strike{stroke:#36464e;stroke-width:2}
#flash [data-enabled=true] .bolt{fill:#ae7100;stroke:none}
@media(max-width:760px){#flash.expanded-target .physical-glyph{width:20px;height:20px}}
@media(max-width:450px){#flash.expanded-target .physical-glyph{width:15px;height:15px}}
#landing .edition{animation:unfold-copy .8s both cubic-bezier(.2,.7,.2,1)}
#landing h1{animation:unfold-copy 1s .07s both cubic-bezier(.2,.75,.2,1)}
#landing .hero-camera{animation:unfold-camera 1.25s .08s both cubic-bezier(.16,.8,.23,1)}
#landing .spark-one{animation:unfold-left 1.1s .12s both cubic-bezier(.18,.8,.24,1)}
#landing .spark-two{animation:unfold-right 1.18s .2s both cubic-bezier(.18,.8,.24,1)}
#landing .sticker{animation:unfold-sticker 1.13s .24s both cubic-bezier(.18,.8,.24,1)}
#landing .orbit{animation:unfold-orbit 1.25s .05s both ease-out}
#landing .hand-note,#landing .intro-bottom{animation:unfold-copy 1s .25s both ease-out}
.digicam-wordmark{position:relative}.digicam-wordmark:after{content:'';position:absolute;inset:0;pointer-events:none;mask:url('assets/wordmarks/digicam-liquid-metal.webp') center/contain no-repeat;-webkit-mask:url('assets/wordmarks/digicam-liquid-metal.webp') center/contain no-repeat;background:linear-gradient(110deg,transparent 35%,#fff9 47%,#ffd9f47a 50%,transparent 61%);background-size:250% 100%;opacity:0;animation:metal-arrival 1.5s .55s ease-in-out both}
@keyframes unfold-copy{0%{opacity:0;transform:translateY(60px) scale(.72)}75%{opacity:1;transform:translateY(-3px) scale(1.015)}100%{opacity:1;transform:none}}
@keyframes unfold-camera{0%{opacity:0;transform:translateY(-45px) scale(.13);filter:drop-shadow(0 0 1px #8e69a333)}70%{opacity:1;transform:translateY(4px) scale(1.045);filter:drop-shadow(0 17px 14px #786c9c19)}100%{opacity:1;transform:none;filter:none}}
@keyframes unfold-left{0%{opacity:0;transform:translate(210px,50px) scale(.04) rotate(-20deg)}75%{opacity:1;transform:translate(-5px,-2px) scale(1.06) rotate(12deg)}100%{opacity:1;transform:rotate(12deg)}}
@keyframes unfold-right{0%{opacity:0;transform:translate(-200px,-35px) scale(.04) rotate(40deg)}75%{opacity:1;transform:translate(5px,2px) scale(1.06)}100%{opacity:1;transform:none}}
@keyframes unfold-sticker{0%{opacity:0;transform:translate(-170px,100px) scale(.05) rotate(-20deg)}75%{opacity:1;transform:translate(3px,-4px) scale(1.045) rotate(14deg)}100%{opacity:1;transform:rotate(12deg)}}
@keyframes unfold-orbit{0%{opacity:0;scale:.15}100%{opacity:1;scale:1}}
@keyframes metal-arrival{0%{background-position:150% 0;opacity:0}20%{opacity:1}85%{opacity:.65}100%{background-position:-80% 0;opacity:0}}
@media(prefers-reduced-motion:reduce){#landing .edition,#landing h1,#landing .hero-camera,#landing .spark,#landing .sticker,#landing .orbit,#landing .hand-note,#landing .intro-bottom,.digicam-wordmark:after{animation:none!important}.digicam-wordmark:after{display:none}}

/* The textured mesh owns camera motion; CSS never rotates/scales it separately. */
#landing .hero-camera{animation:none!important;transform:none!important;overflow:visible}.hero-model{overflow:visible}.hero-model[data-geometry-state=loading]>.front-asset{visibility:hidden}.camera-transition{overflow:visible}.rear-camera{overflow:visible}
/* Quiet foil on the existing footer area; low-amplitude color drift, no flashes. */
.intro-foot,.studio-footer{position:relative;isolation:isolate;background:linear-gradient(115deg,#dbe9f2 0%,#e8e0f1 24%,#d8eeec 52%,#e6e3f2 76%,#dceaf3 100%);background-size:160% 100%;color:#526879;border-top:1px solid #c3d1df;animation:footer-foil 24s ease-in-out infinite alternate;border-radius:10px 10px 0 0;padding-left:18px;padding-right:18px}.intro-foot span:first-child,.studio-footer a{color:#526879}
@keyframes footer-foil{from{background-position:40% 50%}to{background-position:60% 50%}}
@media(prefers-reduced-motion:reduce){.intro-foot,.studio-footer{animation:none;background-position:50% 50%}}

.look-option:not([data-look=classic]){grid-template-columns:84px minmax(0,1fr) 13px;min-height:84px;padding:8px 12px 8px 5px}.era-wordmark{max-width:132px;height:26px;margin-bottom:6px}.look-list{gap:11px}.look-option[data-look=phone] .phone-era{font-size:28px}.look-era{font-size:8px;line-height:1.4}
@media(max-width:760px){.look-option:not([data-look=classic]){grid-template-columns:80px minmax(0,1fr) 13px;min-height:86px;padding:8px 12px 8px 5px}}
html:is([data-body-finish=purple],[data-body-finish=lime]) .printed-label{color:#f5f9ff;text-shadow:0 1px #364154}
.photo-options-menu a{display:block;padding:12px;border-radius:5px;font-size:10px;min-height:42px;text-decoration:none;color:#3c627e}.photo-options-menu a:hover{background:#d8eaf6}

/* Printed foil navigation; the returning camera is exclusively the shared mesh. */
#back.foil-back{border:1px solid #b8c6d1;border-radius:24px;min-height:44px;padding:11px 19px;background:linear-gradient(115deg,#f7fbff,#d9e5ef 24%,#e5d9ef 45%,#d5eeeb 66%,#eef1fa);box-shadow:inset 0 1px 1px #fff,0 2px 4px #516b7c20;color:#42566a;font-size:10px;letter-spacing:.07em;font-weight:700;text-decoration:none;transition:transform .18s,box-shadow .18s}#back.foil-back:hover{box-shadow:inset 0 1px 2px #fff,0 3px 9px #8195b73d}#back.foil-back:active{transform:translateY(1px);box-shadow:inset 0 2px 4px #8298ac66}#landing.returning .hero-model{visibility:hidden}@media(prefers-reduced-motion:reduce){#back.foil-back{transition:none}}

/* Full-bleed footer remains the bottom flex item on short and long pages. */
body{min-height:100svh;display:flex;flex-direction:column}.site-header{flex:none}main{min-height:0;flex:1;display:flex;flex-direction:column}#landing,#studio{flex:1;width:100%;max-width:none;margin:0;padding:0;display:flex;flex-direction:column}#studio>.studio-heading,#studio>.orientation-hint,#studio>.studio-layout{width:91.4%;max-width:1462px;margin-left:auto;margin-right:auto}#studio>.studio-layout{margin-bottom:35px}.intro-foot,.studio-footer{width:100%;margin:auto 0 0;border-radius:0;padding:25px max(4.3%,env(safe-area-inset-right)) calc(25px + env(safe-area-inset-bottom)) max(4.3%,env(safe-area-inset-left));min-height:65px}.intro-stage{width:100%;flex:none}.camera-focused #studio>.studio-layout{width:100%;max-width:none}

:root{--jelly-top:#c6faff;--jelly-mid:#53d9ff;--jelly-base:#20c0f7;--jelly-edge:#67c9eb;--jelly-ink:#123e67}
:root[data-body-finish=aqua]{--jelly-top:#c6faff;--jelly-mid:#53d9ff;--jelly-base:#20c0f7;--jelly-edge:#67c9eb;--jelly-ink:#123e67}
:root[data-body-finish=pink]{--jelly-top:#ffe0f2;--jelly-mid:#ff9ed6;--jelly-base:#ff73c0;--jelly-edge:#e58bbe;--jelly-ink:#6a2454}
:root[data-body-finish=lime]{--jelly-top:#f1ffd0;--jelly-mid:#d4f77c;--jelly-base:#b6ed40;--jelly-edge:#a4cd63;--jelly-ink:#345215}
:root[data-body-finish=purple]{--jelly-top:#f0e1ff;--jelly-mid:#c8a4ff;--jelly-base:#b582ff;--jelly-edge:#ae8bdf;--jelly-ink:#492275}
:is(.camera-invitation,.camera-actions .primary-button){overflow:hidden;color:var(--jelly-ink);text-shadow:0 1px 1px #fff9;border-color:var(--jelly-edge);background:linear-gradient(180deg,#fff 0%,var(--jelly-top) 9%,var(--jelly-mid) 46%,var(--jelly-base) 51%,var(--jelly-mid) 90%,var(--jelly-top));box-shadow:inset 0 1px 2px white,inset 0 -2px 3px #fff7,0 3px 7px #659fc133;animation:none!important;transition:color .3s,border-color .3s,box-shadow .3s}
.camera-invitation:before{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent,#b4aaff44,transparent);opacity:0;animation:blue-nuance 18s ease-in-out infinite alternate}:root:not([data-body-finish=silver]) .camera-invitation:before{display:none}
:is(.camera-invitation,.camera-actions .primary-button):after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 30%,#fff7 49%,transparent 68%);transform:translateX(-130%);animation:jelly-shimmer 12s ease-in-out infinite}@keyframes blue-nuance{to{opacity:.25}}@keyframes jelly-shimmer{0%,65%{transform:translateX(-130%)}90%,100%{transform:translateX(130%)}}
@media(prefers-reduced-motion:reduce){:is(.camera-invitation,.camera-actions .primary-button){transition:none}:is(.camera-invitation,.camera-actions .primary-button):after,.camera-invitation:before{display:none;animation:none}}


body,#studio{overflow-x:clip}.camera-workspace{min-width:0}@media(max-width:450px){.rear-camera{width:100%;max-width:100%;margin-left:auto;margin-right:auto}}
.landing-finish-options{position:relative;display:flex;justify-content:center;align-items:center;gap:5px;margin:20px auto 0;width:max-content}.landing-finish-options .body-finish{width:44px;height:44px;padding:10px;border:0;border-radius:50%;background:transparent;box-shadow:none}.landing-finish-options .body-finish>span{border-radius:50%;border:1px solid #aebdc5}.landing-finish-options .body-finish[aria-pressed=true]>span{box-shadow:0 0 0 2px #f7fbff,0 0 0 3px #3c8ac4;animation:swatch-breathe 3.2s ease-in-out infinite alternate}.landing-finish-options .body-finish[aria-pressed=true]:after{display:none}.landing-finish-options .body-finish:hover>span{box-shadow:0 0 0 2px #edfaff,0 0 0 3px #159cff,0 0 10px #159cff55}@keyframes swatch-breathe{from{filter:brightness(1)}to{filter:brightness(1.12)}}@media(prefers-reduced-motion:reduce){.landing-finish-options .body-finish>span{animation:none!important}}

#landing .intro-bottom{margin:5px auto 25px}#landing .intro-bottom p{margin:0 15px}.era-intro{font-size:11px;line-height:1.5;color:#63798b;margin:-12px 0 15px;max-width:260px}

.camera-actions .primary-button:active{background:linear-gradient(var(--jelly-mid),var(--jelly-top));border-color:var(--jelly-edge);box-shadow:inset 0 2px 4px #6886a344}

.camera-actions .primary-button{position:relative}

/* Small optical spacing adjustment; renderer size and rotation clearance stay intact. */
#landing .edition{margin-bottom:14px}#landing .intro-stage{margin-top:-8px}#landing .camera-invitation{bottom:-30px}
@media(max-width:760px){#landing .camera-invitation{bottom:-25px}}
@media(max-width:450px){#landing .camera-invitation{bottom:-28px}}

/* Footer text follows the hero; the foil surface alone fills unused page height. */
#landing .intro-bottom{margin-bottom:0}.intro-foot{margin:60px 0 0;flex:1;align-items:flex-start}.studio-footer{flex:1;align-items:flex-start;margin-top:0}
@media(max-width:760px){.intro-foot{margin-top:28px}}
/* Restore the softer original blue Aqua and white lettering for silver/blue. */
:root,:root[data-body-finish=aqua]{--jelly-top:#d8efff;--jelly-mid:#8fc8ef;--jelly-base:#68b3e8;--jelly-edge:#78a9ca;--jelly-ink:#fff}
:root:is([data-body-finish=silver],[data-body-finish=aqua]) :is(.camera-invitation,.camera-actions .primary-button){text-shadow:0 1px 2px #27638f,0 -1px 1px #36739f}
