@import url('https://fonts.googleapis.com/css2?family=Lora:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Manrope:wght@400;500;600;700&display=swap');
:root{font-family:'DM Sans',sans-serif;color:#263c35;background:#f7f9f7;font-size:16px;--green:#315c4e;--line:#dfe6e1;--muted:#738179}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid #ba9257;outline-offset:4px}.shell{display:grid;grid-template-columns:238px 1fr;min-height:100vh}.sidebar{padding:36px 25px;border-right:1px solid var(--line);background:#fff;display:flex;flex-direction:column;position:fixed;width:238px;height:100vh}.brand{display:flex;gap:10px;align-items:center;font-weight:700;font-size:21px;letter-spacing:-.6px}.mark{background:var(--green);color:#fff;width:36px;height:36px;border-radius:11px;display:grid;place-items:center}.sidebar nav{margin-top:48px;display:grid;gap:10px}.navlink{padding:13px 15px;border-radius:9px;color:#6b7b73;font-size:14px;display:flex;gap:12px;align-items:center}.navlink.active{color:var(--green);background:#eaf1ec;font-weight:700}.sidebottom{margin-top:auto;border-top:1px solid var(--line);padding-top:20px}.avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#ebeee7;font-weight:600}.user{display:flex;gap:11px;align-items:center;font-size:14px}.muted{color:var(--muted)}small{font-size:13px}.main{grid-column:2;padding:0 52px 48px;max-width:1500px;width:100%;margin:auto}.topbar{height:88px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-size:14px}.pill{border:1px solid #d5dfd7;border-radius:30px;padding:7px 12px;font-size:12px;color:#5b7669;background:#f0f5f0}.intro{padding:38px 0 26px;display:flex;align-items:end;justify-content:space-between;gap:20px}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:12px;color:#87958c;font-weight:700}h1,h2,h3,p{margin-top:0}h1{font-family:'Playfair Display',Georgia,serif;font-weight:500;font-size:38px;letter-spacing:-1px;margin:9px 0 10px}h2{font-size:21px;font-weight:600;letter-spacing:-.5px}h3{font-size:18px;font-weight:600}p{line-height:1.65}.btn{border:0;background:var(--green);color:white;border-radius:8px;padding:13px 20px;font-weight:500;display:inline-flex;gap:10px;align-items:center;justify-content:center;font-size:14px}.btn.secondary{background:white;border:1px solid var(--line);color:#40594b}.btn.ghost{background:transparent;color:#43614f;padding:8px}.btn:disabled{opacity:.45;cursor:not-allowed}.hero{background:#eaf0e9;border-radius:18px;display:grid;grid-template-columns:1.15fr 1fr;min-height:330px;overflow:hidden;margin:6px 0 30px}.herotext{padding:38px 36px;align-self:center}.herotext h1{font-size:43px;line-height:1.16;max-width:400px}.herotext p{max-width:360px;font-size:14px;color:#617568;margin-bottom:24px}.heroimage{position:relative;overflow:hidden}.heroimage img{width:100%;height:100%;object-fit:cover;position:absolute}.heroimage:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#eaf0e9,transparent 35%)}.photo-caption{position:absolute;z-index:1;bottom:24px;right:24px;background:#ffffffec;padding:12px 18px;border-radius:10px;font-size:13px;box-shadow:0 10px 30px #18281f15}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:24px 0 35px}.stat{background:white;border:1px solid var(--line);border-radius:12px;padding:20px 24px;display:flex;justify-content:space-between;align-items:center}.stat strong{font-size:28px;display:block;margin-bottom:4px}.stat span{font-size:13px;color:#7d8a80}.stat i{font-style:normal;color:#728b75;background:#f1f5ef;border-radius:12px;padding:13px}.sectionhead{display:flex;justify-content:space-between;align-items:center;margin:24px 0 18px;gap:16px}.sectionhead h2{margin:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{border:1px solid var(--line);background:white;border-radius:13px;overflow:hidden}.cover{height:210px;position:relative;background:#e5ebe6;overflow:hidden}.cover img{width:100%;height:100%;object-fit:cover}.cover .pill{position:absolute;left:14px;top:14px;background:#ffffffed;color:#446953;border:0}.play{position:absolute;right:14px;bottom:14px;border-radius:50%;background:#ffffffec;color:var(--green);width:36px;height:36px;display:grid;place-items:center}.cardbody{padding:20px}.cardbody h3{margin-bottom:8px}.cardbody p{font-size:13px;color:#849087;margin-bottom:18px}.cardactions{display:flex;gap:6px;justify-content:space-between;border-top:1px solid #eef1ed;padding-top:12px}.cardactions button{font-size:13px}.newcard{border:1.5px dashed #b8cabe;border-radius:13px;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:330px;background:#f1f5f0;text-align:center;padding:28px}.plus{font-size:28px;background:#e1ebdf;color:#567d58;border-radius:50%;width:52px;height:52px;display:grid;place-items:center;margin-bottom:20px}.newcard p{font-size:14px;max-width:220px;color:#7b8b7e}.notice{border-radius:10px;background:#eef3ee;padding:14px 18px;color:#637366;font-size:13px;line-height:1.6;margin:22px 0}.footer{display:flex;justify-content:space-between;margin-top:42px;color:#8b958e;font-size:12px}.panel{background:white;border:1px solid var(--line);border-radius:16px;padding:30px;max-width:780px;margin:24px auto}.steps{display:flex;justify-content:space-between;gap:10px;font-size:14px;color:#8c978e;margin:18px 0 35px}.step.active{color:var(--green);font-weight:700}.step b{border-radius:50%;background:#edf1eb;padding:7px 12px;display:inline-block;margin-right:6px}.upload{border:1.5px dashed #b7c9bc;background:#f5f8f3;border-radius:14px;min-height:240px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;padding:30px;text-align:center}.upload img,.upload video{max-width:100%;max-height:250px;border-radius:8px}.field{display:grid;gap:9px;margin:20px 0;font-size:14px}input,textarea,select{padding:13px 14px;border:1px solid #d8e0d9;border-radius:8px;background:#fff;color:#334b3c;width:100%}textarea{min-height:110px;resize:vertical}.controls{display:flex;justify-content:space-between;gap:12px;margin-top:28px}.qrpanel{text-align:center}.qrpanel img{max-height:220px;max-width:100%;border-radius:12px}.qr svg{width:230px;height:230px}.qr{margin:20px auto;background:#fff;width:fit-content;padding:14px}.qrpanel .controls{justify-content:center;flex-wrap:wrap}.public{max-width:760px;margin:0 auto;padding:30px 22px 60px;text-align:center}.public>.brand{justify-content:center;margin:16px 0 34px}.public .memoryphoto{width:100%;max-height:500px;object-fit:cover;border-radius:15px;animation:appear .6s ease-out}.public video{width:100%;max-height:540px;background:#17271e;border-radius:14px}.public h1{margin-top:30px}.login{max-width:420px;margin:50px auto}.tools{display:flex;gap:12px;align-items:center}.tools input{width:260px}.tools select{width:150px}.empty{text-align:center;padding:50px}.inlineerror{color:#a03d32;font-size:14px}.future{display:flex;justify-content:space-between;gap:20px;border:1px solid var(--line);padding:22px;border-radius:12px;margin-top:28px;background:#fff}.future p{font-size:14px;margin:8px 0 0}.future h3{margin:0}.mobilebrand{display:none}#toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);background:#244f3e;color:#fff;padding:12px 20px;border-radius:9px;z-index:99;display:none;font-size:14px;max-width:90vw}@keyframes appear{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(min-width:1500px){.main{padding-left:70px;padding-right:70px}}@media(max-width:1100px){.main{padding:0 28px 40px}.sidebar{width:200px;padding:30px 18px}.shell{grid-template-columns:200px 1fr}.brand{font-size:18px}.hero{grid-template-columns:1fr 1fr}.herotext{padding:28px}.herotext h1{font-size:35px}.cards{grid-template-columns:repeat(2,1fr)}.stats{gap:10px}.stat{padding:16px}.stat i{display:none}}@media(max-width:720px){.shell{display:block}.sidebar{height:68px;bottom:0;width:100%;padding:5px 8px;border-top:1px solid var(--line);z-index:50;display:block}.sidebar>.brand,.sidebottom{display:none}.sidebar nav{display:flex;margin:0;justify-content:space-around;gap:0}.navlink{display:flex;flex-direction:column;gap:4px;font-size:10px;padding:8px}.navlink span:first-child{font-size:19px}.main{padding:0 20px 100px}.topbar{height:76px}.topbar>.muted{display:none}.mobilebrand{display:block}.intro{padding:25px 0 18px;align-items:start}.intro h1{font-size:30px}.intro p{font-size:14px}.intro>.btn{padding:12px;font-size:12px}.hero{display:flex;flex-direction:column;margin-bottom:20px}.herotext{padding:26px}.herotext h1{font-size:35px}.heroimage{height:210px}.heroimage:after{background:linear-gradient(180deg,#eaf0e9,transparent 25%)}.stats{gap:8px}.stat{padding:13px 10px}.stat strong{font-size:24px}.stat span{font-size:11px}.cards{grid-template-columns:1fr}.cover{height:250px}.sectionhead{flex-wrap:wrap}.tools{width:100%}.tools input{width:100%}.tools select{width:140px}.panel{padding:22px 18px}.steps{font-size:11px;gap:3px}.step b{display:block;width:30px;padding:6px;text-align:center;margin-bottom:7px}.footer{gap:15px;line-height:1.7}.future{flex-direction:column}.public h1{font-size:32px}}@media print{body *{visibility:hidden}.qrpanel,.qrpanel *{visibility:visible}.qrpanel{position:absolute;left:0;top:0;width:100%;border:0}.qrpanel .controls,.qrpanel .notice{display:none}.qrpanel img{max-height:180px}.qr svg{width:280px;height:280px}}

.camera-preview{width:100%;max-height:420px;object-fit:cover;border-radius:18px;background:#182c24;margin-top:20px}.camera-preview[hidden]{display:none}.memory-dialog{width:min(620px,calc(100% - 32px));max-height:90dvh;overflow:auto;border:0;border-radius:20px;padding:24px;color:#243c32;background:#f8fbf8}.memory-dialog::backdrop{background:rgba(8,22,16,.75)}.memory-dialog video{width:100%;max-height:60dvh;border-radius:14px;background:#000}.close-memory{float:right}.memory-dialog h2{padding-right:95px}.memory-dialog p{overflow-wrap:anywhere}

.scanner-stage{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:#101914;color:#fff;overflow:hidden}.scanner-stage::backdrop{background:#101914}.scanner-stage>video{width:100%;height:100%;object-fit:cover}.scanner-stage>video[hidden]{display:none}.camera-heading{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:calc(20px + env(safe-area-inset-top)) 24px 24px;background:linear-gradient(#0009,transparent)}.camera-exit{width:48px;height:48px;border-radius:50%;border:1px solid #fff8;background:#0007;color:white;font-size:32px;cursor:pointer}.camera-frame{position:absolute;width:min(36vw,170px);aspect-ratio:1;top:calc(100px + env(safe-area-inset-top));left:50%;transform:translateX(-50%);border:2px solid #fff9;border-radius:24px;pointer-events:none}.camera-bottom{position:absolute;bottom:0;left:0;right:0;text-align:center;padding:28px 24px calc(24px + env(safe-area-inset-bottom));background:linear-gradient(transparent,#000c)}.camera-bottom p{color:white}.memory-dialog [hidden]{display:none}.memory-dialog::backdrop{background:rgba(8,22,16,.55)}

.memory-dialog{background:rgba(248,251,248,.22);color:white;padding:16px;border:1px solid #ffffff30;box-shadow:0 8px 36px #0003}.memory-dialog::backdrop{background:rgba(8,22,16,.12)}.memory-dialog h2,.memory-dialog p{color:white;text-shadow:0 1px 4px #000,0 1px 10px #0009}.memory-dialog video{border-radius:8px}.memory-dialog .close-memory{background:#152c24b3;border-color:#ffffff70;color:white}.scanner-stage:has(+ .memory-dialog) .camera-frame{opacity:.2}@media(max-height:500px){.camera-frame{top:85px;width:100px}.camera-bottom{padding-top:8px}}

/* Diseño de la propuesta: crema, bosque y dorado. */
:root{font-family:'Manrope',sans-serif;color:#263b34;background:#faf7f2;--green:#315c50;--line:#e6e5dc;--muted:#656c67}body{background:#faf7f2}h1,h2,h3,.brand{font-family:'Lora',Georgia,serif;letter-spacing:-.035em}h1{font-size:42px;line-height:1.15}h2{font-weight:500}h3{font-weight:500}.brand{font-size:25px;font-weight:600;gap:13px}.mark{width:44px;height:44px;border-radius:14px;font-family:Georgia,serif;font-size:32px;background:#315c50}.sidebar{background:#fcfaf6;border-color:#eae7df}.sidebar .brand{font-size:21px}.sidebar nav .navlink{font-size:14px}.navlink.active{background:#e8eee8;color:#315c50}.ui-icon{width:25px;height:25px;display:block}.main{max-width:1480px}.topbar{border-color:#eae7df}.topbar .pill{background:#e8eee8}.eyebrow{color:#71766d;font-size:13px;letter-spacing:3px}.hero{background:transparent;gap:35px;border-radius:0;margin:12px 0 40px}.herotext{padding:25px 0}.herotext h1{font-size:clamp(40px,4.8vw,64px);max-width:580px;line-height:1.15;margin:20px 0}.herotext em{display:block;color:#987626;font-weight:400}.herotext p{font-size:18px;max-width:450px;color:#656c67;margin-bottom:28px}.heroimage{border-radius:24px;min-height:390px}.heroimage:after{display:none}.photo-caption{background:#315c509c;backdrop-filter:blur(5px)}.btn{background:#315c50;border-radius:14px;padding:15px 22px;font-size:15px}.btn.secondary{background:#fcfaf6}.btn.ghost{color:#315c50}.herotext>.btn:not(.ghost){font-family:'Lora',Georgia,serif;font-size:20px}.stats{gap:18px}.stat{background:#e8eee8;border:0;border-radius:20px;flex-direction:column-reverse;align-items:center;text-align:center;padding:22px 14px;gap:10px}.stat>div{display:flex;flex-direction:column-reverse;align-items:center;gap:5px}.stat i{font-style:normal;color:#315c50}.stat .ui-icon{width:29px;height:29px}.stat strong{font-family:'Lora',Georgia,serif;font-size:36px;font-weight:600;color:#1e3d33}.stat span{font-size:15px;color:#33483e}.card{border:0;border-radius:24px;padding:6px;background:#fff;box-shadow:0 9px 28px #263b3409}.cover{border-radius:19px;height:270px}.cover .pill{background:#faf7f2ed;font-size:14px;color:#263b34;border:0}.cardbody{padding:18px 16px 14px}.cardbody h3{font-size:26px;margin-bottom:8px}.cardbody p{font-size:14px}.cardactions{border-top:1px solid #ecebe5;padding-top:13px;display:flex}.cardactions .btn{flex:1;border-radius:0;font-size:14px}.cardactions .btn+.btn{border-left:1px solid #eae9e3}.newcard{background:#e8eee8;border:1px dashed #c9d4ca;border-radius:24px;color:#263b34;min-height:250px}.newcard h3{font-size:25px}.newcard .plus{color:#315c50;background:transparent}.newcard p{font-size:15px}.panel{background:#fffdfa;border-color:#eae7df;border-radius:24px}.field input,.field textarea,.field select,.tools input,.tools select{border-radius:12px;background:#fffdfa}.notice{background:#e8eee8;border-radius:16px}.future{background:#f5f1e8}.pill{background:#e8eee8}.footer{border-color:#eae7df}.public{background:#faf7f2}.public .brand{justify-content:center}.public .memoryphoto,.public video{border-radius:20px}
@media(max-width:760px){.main{padding:0 22px 115px}.topbar{height:95px;border:0}.mobilebrand .brand{font-size:25px}.topbar>.pill{display:none}.intro{padding:15px 0 22px}.intro>.eyebrow,.intro>.btn{display:none}.hero{margin:0 0 28px;gap:0}.herotext{padding:0 0 22px}.herotext .eyebrow{font-size:12px}.herotext h1{font-size:clamp(37px,10.4vw,55px);line-height:1.13;margin:17px 0 20px;max-width:440px}.herotext p{font-size:17px;margin-bottom:26px}.herotext>.btn:not(.ghost){width:100%;padding:19px 14px}.herotext>.btn.ghost{margin-top:10px}.heroimage{height:390px;min-height:0;border-radius:23px}.photo-caption{font-size:12px}.stats{gap:10px;margin-bottom:25px}.stat{padding:19px 8px;border-radius:18px}.stat span{font-size:14px}.stat strong{font-size:34px}.stat .ui-icon{width:27px;height:27px}.intro h1{font-size:36px}.intro p{font-size:16px}.intro:has(h1)>.btn{display:inline-flex;font-size:12px;padding:11px}.cover{height:255px}.cards{gap:20px}.cardbody h3{font-size:26px}.newcard{min-height:225px}.sidebar{background:#fffdf9f5;border:0;border-radius:24px 24px 0 0;box-shadow:0 -3px 25px #263b3409;padding:11px 6px calc(11px + env(safe-area-inset-bottom))}.navlink{font-size:12px;padding:7px 5px;gap:7px;background:transparent!important}.navlink .ui-icon{width:26px;height:26px}.navlink.active{font-weight:700;color:#315c50}.navlink[href='/crear'] .ui-icon{width:37px;height:37px;margin-top:-7px}.footer{font-size:12px}.sectionhead h2{font-size:24px}}

.photo-caption{color:#fff;background:rgba(31,70,57,.92);text-shadow:none;font-weight:500}

.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.heroimage{isolation:isolate}
@media(max-width:760px){.sidebar{left:14px;right:14px;bottom:calc(18px + env(safe-area-inset-bottom,0px));width:auto;height:auto;border:1px solid #e6e5dc;border-radius:25px;padding:10px 8px;background:rgba(255,253,249,.97);box-shadow:0 8px 32px #263b3426;backdrop-filter:blur(14px);z-index:50}.sidebar nav{align-items:center;gap:0}.sidebar .navlink{flex:1;min-width:0;min-height:58px;padding:6px 2px;font-size:12px;line-height:1.3}.main{padding-bottom:150px}.sidebar .navlink[href='/crear'] .ui-icon{margin-top:0;width:32px;height:32px}.sidebar .navlink span:last-child{white-space:nowrap}}
@media(max-width:350px){.sidebar{left:8px;right:8px;padding-left:4px;padding-right:4px}.sidebar .navlink{font-size:11px}}

.brand-logo{width:46px;height:46px;object-fit:contain;border-radius:14px;flex-shrink:0}.sidebar .brand-logo{width:38px;height:38px}.newcard .plus .ui-icon{width:46px;height:46px}.btn .ui-icon{width:20px;height:20px}.navlink[href="/crear"] .ui-icon{filter:drop-shadow(0 1px 1px #c5a56820)}

.how-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:32px}.how-tab{border:0;border-radius:14px;padding:13px 8px;background:#e8eee8;color:#315c50;font-size:14px;display:flex;flex-direction:column;align-items:center;gap:7px}.how-tab span{border:1px solid currentColor;border-radius:50%;width:28px;height:28px;display:grid;place-items:center}.how-tab.selected{background:#315c50;color:#fff}.how-detail{max-width:650px;margin:auto;text-align:center}.how-detail h2{font-size:32px;margin:14px 0}.how-detail p{font-size:17px}.how-symbol{width:86px;height:86px;background:#e8eee8;border-radius:24px;display:grid;place-items:center;margin:0 auto 22px}.how-symbol .ui-icon{width:44px;height:44px}.how-detail .notice{text-align:left}.how-panel .controls{justify-content:space-between;margin-top:28px}@media(max-width:500px){.how-progress{gap:6px}.how-tab{font-size:12px;padding:12px 3px}.how-detail h2{font-size:27px}}

/* Readable creation steps on mobile. */
.steps{font-size:1rem;gap:8px}.step b{font-size:1rem;min-width:38px;min-height:38px;display:inline-flex;align-items:center;justify-content:center;padding:7px;box-sizing:border-box}
@media(max-width:760px){.steps{font-size:.875rem;gap:6px}.step b{display:flex;width:38px;height:38px;margin-bottom:9px}.step{line-height:1.4}}

.memory-dialog .close-memory{display:flex;align-items:center;justify-content:center;float:right;width:48px;height:48px;padding:0;margin:0 0 8px 12px;border:1px solid rgba(255,255,255,.65);border-radius:50%;background:#263b34;color:#fff;cursor:pointer;box-shadow:0 2px 8px #0003}.memory-dialog .close-memory:hover{background:#315c50}.memory-dialog .close-memory:focus-visible{outline:3px solid #fff;outline-offset:3px}.memory-dialog .close-memory svg{display:block;flex-shrink:0}

.qrpanel .qr{width:min(100%,430px);margin:24px auto;background:transparent;padding:0}.qrpanel .qr svg{display:block;width:100%;height:auto}

.app-loading{min-height:100dvh;display:grid;place-items:center;padding:24px}.app-loading img{width:88px;height:88px;border-radius:24px;animation:logo-fade 1.6s ease-in-out infinite}@keyframes logo-fade{0%,100%{opacity:.15}50%{opacity:1}}@media(prefers-reduced-motion:reduce){.app-loading img{animation:none;opacity:1}}

.footer{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center}.footer span{display:block;width:100%;line-height:1.6}

.qrpanel>img{display:block;margin:0 auto 18px;max-width:100%}.qrpanel>strong{display:block;text-align:center;margin:0 0 22px;overflow-wrap:anywhere}

.how-video-options{display:grid;gap:18px}.how-video-options>div+div{border-top:1px solid #315c5030;padding-top:18px}.how-video-options strong{display:block;color:#263b34;font-size:1rem}.how-video-options p{margin:8px 0 0;font-size:1rem;line-height:1.6}
.video-choices{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}.ia-confirm{display:flex;align-items:flex-start;gap:12px;margin:24px 0;font-size:1rem;line-height:1.6}.ia-confirm input{width:22px;height:22px;flex-shrink:0;margin-top:3px;accent-color:#315c50}.ai-preview{display:block;width:100%;max-height:460px;background:#152c24;border-radius:18px;margin:20px 0}
.ia-progress{display:flex;flex-direction:column;align-items:center;gap:14px;padding:24px;border-radius:20px;background:#e8efe8;text-align:center;margin:24px 0}.ia-progress img{animation:logo-breathe 1.6s ease-in-out infinite}.ia-progress p{margin:0;font-size:1rem}.ia-track{width:100%;height:10px;border-radius:8px;background:#cbdcd3;overflow:hidden}.ia-track span{display:block;width:100%;height:100%;border-radius:8px;background:#315c50;transform-origin:left center;animation:ia-fill 1s ease-out infinite}@keyframes ia-fill{0%{transform:scaleX(0)}85%,100%{transform:scaleX(1)}}@media(prefers-reduced-motion:reduce){.ia-track span,.ia-progress img{animation:none}.ia-track span{width:100%;opacity:.6}}
.ar-setup{text-align:left;border:1px solid #cbdcd3;border-radius:18px;padding:20px;margin:24px 0}.ar-setup h2{font-size:1.3rem}.photo-ar-dialog{box-sizing:border-box;width:100vw;height:100dvh;max-width:none;max-height:none;border:0;padding:0;margin:0;background:#132b24;color:white;overflow:hidden}.photo-ar-dialog::backdrop{background:#132b24}.photo-ar-dialog h2{position:absolute;top:16px;left:20px;right:78px;z-index:5;font-size:1.1rem;pointer-events:none}.photo-ar-close{position:absolute;right:16px;top:16px;width:48px;height:48px;border-radius:50%;background:#fff;color:#132b24;border:2px solid #132b24;font-size:34px;line-height:1;z-index:10}.photo-ar-close:focus-visible{outline:4px solid #e6ca83;outline-offset:3px}.photo-ar-stage{position:absolute;inset:0;display:grid;place-items:center}.photo-ar-stage>p{padding:80px 24px;line-height:1.6}.photo-ar-stage iframe{width:100%;height:100%;border:0}.photo-ar-dialog>select{position:absolute;top:80px;left:20px;z-index:6;max-width:70%;padding:12px;font-size:16px}
.compression-panel{padding:20px;border-radius:18px;background:#edf3ee;border:1px solid #cbdcd3;margin:18px 0;text-align:left}.compression-panel strong{font-size:1rem}.compression-panel p{font-size:1rem;line-height:1.6;margin:12px 0}.compression-panel progress{display:block;width:100%;height:12px;accent-color:#315c50;margin:16px 0}.compression-panel .btn{margin:4px 8px 4px 0}
/* Layered memories */
.style-options{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0}.style-option{border:1px solid #d7dfd9;background:#fffdfa;color:#224b3d;border-radius:18px;padding:20px 12px;cursor:pointer;display:grid;gap:7px;text-align:center}.style-option>span{font-size:30px}.style-option.selected{border:2px solid #255140;background:#edf3ee;box-shadow:0 0 0 3px #25514012}.style-option strong{font-size:18px}.style-option small{font-size:13px}.scene-preview{position:relative;width:min(100%,440px);aspect-ratio:1/1.12;margin:25px auto 38px;perspective:900px;background:radial-gradient(ellipse at 50% 70%,#e8e4da,transparent 65%);isolation:isolate}.scene-base{position:absolute;inset:10% 15% 8%;padding:12px;background:#fff;box-shadow:8px 16px 28px #203d3026;transform:rotateY(-8deg);border:1px solid #dedad1}.scene-base img{width:100%;height:100%;object-fit:cover}.scene-floating{position:absolute;padding:6px;background:#fff;box-shadow:4px 8px 16px #153d302b}.scene-floating img{width:100%;height:100%;object-fit:cover}.scene-video{width:40%;height:30%;top:20%;right:1%;transform:rotate(5deg)}.scene-video>span,.scene-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:50%;background:#153c35b5;color:#fff;font-size:28px;padding:3px 12px}.scene-video small{position:absolute;bottom:8px;left:10px;background:#fff;color:#264537;padding:1px 6px}.scene-photo.one{width:38%;height:34%;bottom:20%;left:2%;transform:rotate(-6deg)}.scene-photo.two{width:29%;height:25%;bottom:22%;right:1%;transform:rotate(3deg)}.scene-caption{position:absolute;left:18%;bottom:9%;width:65%;text-align:center;background:#fffdfa;padding:10px;box-shadow:2px 5px 12px #183c3020}.scene-caption strong{display:block;font:20px Georgia,serif;overflow-wrap:anywhere}.scene-caption small{display:block;letter-spacing:2px;margin-top:5px}.scene-hearts{position:absolute;top:13%;left:3%;font-size:43px;line-height:1.6;color:#a95568;transform:rotate(-15deg)}.romantico .scene-caption{color:#82394a;background:#fff0ed;transform:rotate(-3deg)}.romantico .scene-caption strong{font-style:italic}.minimalista .scene-floating{transform:none}.scene-assets{display:flex;gap:12px;margin:12px 0}.scene-assets>div{width:130px}.scene-assets img{width:100%;height:110px;object-fit:cover;border-radius:12px}.style-showcase{margin:48px 0}.style-examples{display:grid;grid-template-columns:1fr 1fr;gap:25px}.style-examples article{border:1px solid #dce1d9;padding:20px;border-radius:24px;background:#fffdfa}.style-examples h3{margin:0}.style-examples p{color:#697970}.style-examples .scene-preview{margin-top:0}.scene-assets+.btn input{max-width:100%;display:block;margin-top:8px}.steps{overflow-x:auto}.step{flex-shrink:0}.style-option:focus-visible{outline:3px solid #bd9c60;outline-offset:3px}@media(max-width:600px){.style-options{gap:6px}.style-option{padding:14px 6px}.style-option strong{font-size:15px}.style-option small{font-size:11px}.style-examples{grid-template-columns:1fr}.scene-caption strong{font-size:17px}}
.btn.danger{color:#a12d3c}.btn.danger:not(.ghost){background:#a12d3c;color:white;border-color:#a12d3c}.cardactions{flex-wrap:wrap}.delete-dialog{width:min(92vw,520px);border:1px solid #dce1da;border-radius:24px;padding:28px;background:#fffdfa;color:#203e34;box-shadow:0 24px 80px #0004}.delete-dialog::backdrop{background:#112d2677}.delete-dialog h2{margin-top:0}.delete-files{display:flex;gap:12px;align-items:flex-start;font-size:14px;line-height:1.6;margin:20px 0}.delete-files input{width:20px;height:20px;flex-shrink:0;accent-color:#285541}.delete-dialog .controls{flex-wrap:wrap}.delete-dialog .btn:focus-visible{outline:3px solid #bda16a;outline-offset:3px}
.memory-trash{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;min-width:46px;padding:0;border:1px solid #f0d6da;border-radius:50%;background:#fff9fa;color:#a02b40;box-shadow:0 3px 12px #193b3026;cursor:pointer;touch-action:manipulation}.cover>.memory-trash{position:absolute;top:12px;right:12px;z-index:4}.memory-trash svg{display:block;width:23px;height:23px;pointer-events:none}.memory-trash:hover{background:#ffe7eb;color:#7d1730}.memory-trash:focus-visible{outline:3px solid #a02b40;outline-offset:3px}.memory-trash:disabled{opacity:.6;cursor:wait}.memory-detail-heading{display:flex;align-items:center;justify-content:center;gap:16px}.memory-detail-heading h1{margin-bottom:16px}.memory-detail-heading .memory-trash{flex-shrink:0}@media print{.memory-trash{display:none!important}}
.gift-panel{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:center;margin:24px 0}.gift-panel h2{margin:8px 0}.gift-panel .field{margin-top:0}.trial-layout{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}.trial-layout video{width:100%;max-height:320px;background:#17362d;border-radius:20px}.trial-confirm{display:flex;gap:12px;align-items:flex-start;font-size:16px;line-height:1.6;margin:20px 0}.trial-confirm input{width:22px;height:22px;accent-color:#295743;flex-shrink:0}.checkout-summary{border:1px solid #d9e1d8;border-radius:20px;background:#edf2ea;padding:24px;margin:24px 0}.checkout-summary strong{font:28px Georgia,serif}.btn:disabled{opacity:.55;cursor:not-allowed}.trial-layout .notice{font-size:14px;line-height:1.7}@media(max-width:700px){.trial-layout,.gift-panel{grid-template-columns:1fr}.trial-layout .scene-preview{max-width:280px;margin:0 auto}.gift-panel{padding:24px}.checkout-summary{padding:18px}}
.photo-guide{position:relative;width:min(92vw,620px);max-height:calc(100dvh - 28px);box-sizing:border-box;overflow-y:auto;border:1px solid #dce3d9;border-radius:26px;padding:32px;background:#fffdfa;color:#203e34;box-shadow:0 24px 90px #102d264d}.photo-guide::backdrop{background:#102b25b8}.photo-guide>.eyebrow{display:block;padding-right:40px;font-size:11px}.photo-guide h2{font:clamp(27px,5vw,36px)/1.15 Georgia,serif;margin:14px 36px 14px 0}.photo-guide p{line-height:1.6}.photo-guide-close{position:absolute;right:16px;top:16px;border:1px solid #d9e2d8;width:42px;height:42px;background:#fff;color:#173b31;border-radius:50%;display:grid;place-items:center;cursor:pointer}.photo-guide-examples{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:24px 0}.photo-guide-examples figure{margin:0;padding:10px;border:1px solid #d6e4d8;border-radius:18px;background:#f0f6ef}.photo-guide-examples .photo-guide-bad{border-color:#eed3d7;background:#fff1f2}.photo-guide-sample{height:185px;display:grid;place-items:center;overflow:hidden;border-radius:10px}.photo-guide-good .photo-guide-sample>img{width:100%;height:100%;object-fit:cover}.photo-guide-bad .photo-guide-sample{background:#ded6ca;padding:22px;box-sizing:border-box}.photo-guide-frame{border:12px solid #fffaf1;padding:3px;background:#c7beaf;box-shadow:4px 8px 9px #51483850;transform:rotate(-5deg);height:115px;box-sizing:border-box;width:100%}.photo-guide-frame img{display:block;width:100%;height:100%;object-fit:cover}.photo-guide-examples figcaption{display:grid;text-align:center;gap:4px;margin:12px 0 3px}.photo-guide-good strong{color:#22633e}.photo-guide-bad strong{color:#a52c42}.photo-guide-examples figcaption span{font-size:13px}.photo-guide-tip{background:#f0f2e9;border-radius:15px;padding:16px}.photo-guide-tip p{margin:6px 0 0;font-size:14px}.photo-guide-crop{font-size:14px;color:#596c61}.photo-guide-accept{width:100%;margin-top:6px}.photo-guide button:focus-visible{outline:3px solid #ba995d;outline-offset:3px}@media(max-width:480px){.photo-guide{width:calc(100vw - 24px);padding:24px 18px;border-radius:22px}.photo-guide-sample{height:135px}.photo-guide-examples{gap:10px;margin:18px 0}.photo-guide-bad .photo-guide-sample{padding:16px}.photo-guide-frame{border-width:9px;height:90px}.photo-guide-examples figure{padding:7px}}
.scene-lettering{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.scene-lettering>.field:first-child{grid-column:1/-1}.scene-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:24px 0}.scene-slot{min-width:0;border:1px solid #dbe2d7;background:#f9faf5;border-radius:20px;padding:14px}.scene-slot h4{margin:0 0 12px;font-size:18px;color:#244a3a}.scene-slot-media{height:150px;border-radius:12px;overflow:hidden;background:#eee9df;display:grid;place-items:center;color:#6c766b;text-align:center}.scene-slot-media img,.scene-slot-media video{width:100%;height:100%;object-fit:contain}.scene-slot-upload{display:block;font-weight:600;font-size:14px;color:#234e3c;margin:16px 0 8px}.scene-slot-upload input{display:block;max-width:100%;margin-top:9px;font:12px system-ui}.scene-slot small{display:block;font-size:11px;color:#697a6e;line-height:1.5}.scene-slot .btn{padding:8px 2px;font-size:12px}.scene-floating video{width:100%;height:100%;object-fit:cover}.scene-floating small{position:absolute;bottom:5px;left:5px;background:#fffdf7ed;color:#284b3c;padding:2px 6px;font:11px system-ui;z-index:2}.scene-placeholder{display:grid;place-items:center;border:1px dashed #b6c8b4;background:#fffdf4;text-align:center;color:#62765e}.scene-placeholder>span{position:static;transform:none;background:none;border:0;border-radius:0;color:inherit;font:14px/1.3 system-ui;padding:0}.scene-caption strong{line-height:1.15}.font-caligrafica .scene-caption strong{font-family:Allura,cursive;font-size:34px;font-style:normal}.font-cursiva .scene-caption strong{font-family:Georgia,serif;font-style:italic}.font-clasica .scene-caption strong{font-family:Georgia,serif;font-style:normal}.scene-photo.two{bottom:24%;right:0;width:32%;height:28%}@media(max-width:640px){.scene-slots{grid-template-columns:1fr}.scene-slot{display:grid;grid-template-columns:110px 1fr;gap:0 14px}.scene-slot h4{grid-column:1/-1}.scene-slot-media{height:110px;grid-row:2/5}.scene-slot-upload{margin-top:0}.scene-slot small{grid-column:2}.scene-slot .btn{grid-column:2}.scene-lettering{grid-template-columns:1fr}.font-caligrafica .scene-caption strong{font-size:30px}.scene-placeholder>span{font-size:12px}}
.scene-lettering{border:1px solid #dce2d6;border-radius:22px;padding:22px;background:#f5f5ed;margin:26px 0}.scene-lettering>h3,.scene-lettering>.field,.scene-lettering>.initials-fields,.scene-lettering>.monogram-options{grid-column:1/-1}.scene-lettering h3{margin:0 0 16px}.initials-fields{display:grid;grid-template-columns:1fr 30px 1fr;gap:12px;align-items:center}.initials-fields>.field input{font-family:Allura,cursive;font-size:42px;line-height:1.2;text-align:center;text-transform:uppercase;min-height:70px;color:#244b39}.initials-fields>span{font:28px Georgia,serif;color:#b59a65;text-align:center}.monogram-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:10px 0 18px}.monogram-option{border:1px solid #d2dccc;border-radius:16px;padding:16px 8px;background:#fffdf6;color:#234737;cursor:pointer}.monogram-option.selected{border:2px solid #285b43;background:#edf3e9}.monogram-option>span{display:block;font:38px Allura,cursive;line-height:1.4}.monogram-option i{font:16px Georgia;color:#b59a65}.monogram-option small{display:block;font:12px system-ui;margin-top:8px}.monogram-option.monogram-sello>span{border:1px solid #b59a65;border-radius:50%;width:75px;height:55px;margin:auto}.monogram-option.monogram-editorial>span{font:29px Georgia;line-height:1.8;border-bottom:1px solid #b59a65}.scene-caption.has-monogram{padding:6px 10px 8px}.scene-monogram{position:relative;height:72px;display:flex;align-items:center;justify-content:center;color:inherit;font:64px Allura,cursive;line-height:1;gap:4px}.scene-monogram .monogram-amp{font:21px Georgia;color:#b59a65}.monogram-entrelazado .monogram-first{transform:translate(6px,-8px)}.monogram-entrelazado .monogram-second{transform:translate(-6px,7px)}.monogram-rule{position:absolute;bottom:-2px;left:0;right:0;text-align:center;font:9px Georgia;color:#b59a65}.scene-monogram.monogram-sello{border:1px solid #b59a65;border-radius:50%;max-width:170px;margin:0 auto 5px;font-size:52px;gap:6px}.scene-monogram.monogram-sello .monogram-rule{display:none}.scene-monogram.monogram-editorial{font:38px Georgia,serif;letter-spacing:3px;border-bottom:1px solid #b59a65;height:66px}.scene-monogram.monogram-editorial .monogram-rule{display:none}.scene-text-placeholder{display:block;padding:12px;font:15px system-ui;color:#78816e}.scene-caption.has-monogram>small{font-size:11px;margin:5px 0 0}.monogram-option:focus-visible{outline:3px solid #b59a65;outline-offset:3px}@media(max-width:520px){.scene-lettering{padding:17px}.monogram-options{gap:6px}.monogram-option{padding:10px 4px}.monogram-option>span{font-size:31px}.monogram-option small{font-size:10px}.monogram-option.monogram-sello>span{width:60px}.initials-fields{gap:7px}.scene-monogram{font-size:54px;height:65px}}

/* Keep nested initial labels out of the parent lettering grid rule. */
.initials-fields{grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr);align-items:end;width:100%;min-width:0}.initials-fields>.field{grid-column:auto!important;min-width:0;margin:0}.initials-fields>.field input{box-sizing:border-box;width:100%;min-width:0;padding:12px 8px;line-height:1.5;height:88px;overflow:visible}.initials-fields>span{align-self:center;padding-top:22px}.initials-help{grid-column:1/-1;color:#67776b;font:13px/1.6 system-ui;margin:10px 0 2px}.monogram-options{min-width:0}.monogram-option{min-width:0;overflow:visible}.monogram-option>span{white-space:nowrap;display:flex;align-items:center;justify-content:center;gap:4px;line-height:1.25;min-height:66px}.monogram-option.monogram-sello>span{width:100%;max-width:100px;height:66px;box-sizing:border-box;font-size:28px}.monogram-option.monogram-editorial>span{line-height:1.25;font-size:27px}.monogram-option small{line-height:1.4;min-height:28px;display:flex;align-items:center;justify-content:center;margin-top:10px}.scene-monogram{white-space:nowrap;flex-wrap:nowrap;min-height:90px;height:90px;box-sizing:border-box;padding:10px 4px}.scene-monogram>.monogram-first,.scene-monogram>.monogram-second{flex-shrink:1;min-width:0;white-space:nowrap;line-height:1.35}.scene-monogram.monogram-sello{height:90px;max-width:190px;padding:8px 14px;gap:8px}.scene-monogram.monogram-editorial{height:82px}.scene-caption.has-monogram{overflow:visible;box-sizing:border-box}.scene-monogram .monogram-rule{bottom:0}@media(max-width:520px){.initials-fields{gap:8px;grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr)}.initials-fields>.field{font-size:14px}.initials-fields>.field input{font-size:38px;height:84px}.monogram-option>span{font-size:28px;gap:2px}.monogram-option.monogram-sello>span{font-size:24px;max-width:85px}.monogram-option.monogram-editorial>span{font-size:24px}.monogram-option i{font-size:13px}.monogram-option small{font-size:10px}.scene-monogram{font-size:52px;min-height:84px;height:84px}.scene-monogram.monogram-sello{height:84px;font-size:46px}.scene-monogram .monogram-amp{font-size:18px}}
@media(max-width:360px){.monogram-option>span{font-size:22px}.monogram-option.monogram-sello>span{font-size:19px}.monogram-option.monogram-editorial>span{font-size:20px}.monogram-option i{font-size:10px}}
/* Auré identity. Existing type families and custom lettering are preserved. */
:root{--green:#1F4B3F;--muted:#6E7F76;--aure-gold:#B08C39;--aure-ivory:#F9F6EF}.brand-copy{display:flex;flex-direction:column;gap:4px;text-align:left;border-left:1px solid var(--aure-gold);padding-left:12px}.brand-name{line-height:1.1}.brand-tagline{font-size:10px;line-height:1.4;font-style:italic;font-weight:400;letter-spacing:0;color:#866b2d}.brand .brand-logo{border-radius:0;width:52px;height:60px}.brand-hero-slogan{color:#866b2d!important;font-style:italic}.footer>span:first-child{font-family:'Lora',Georgia,serif;font-size:23px;color:var(--green)}.footer>span:last-child{color:#866b2d;font-style:italic}@media(max-width:900px){.mobilebrand .brand{gap:9px}.mobilebrand .brand-copy{padding-left:10px}.mobilebrand .brand-tagline{display:none}.mobilebrand .brand-logo{width:38px;height:42px}}

/* Main experiences: plain video or a layered design. */
.solo-video-example{width:min(100%,440px);aspect-ratio:1/1.12;margin:0 auto 38px;display:flex;align-items:center;justify-content:center}.solo-video-example video{display:block;width:100%;height:82%;object-fit:cover;border:0;border-radius:0;box-shadow:none}.showcase-substyles{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.showcase-substyles span{padding:5px 12px;border-radius:20px;background:#edf2ea;color:var(--green);font-size:14px}

/* Auré editorial comparison, proposal 02. */
.experience-editorial{margin:64px 0;padding:12px 0 24px}.experience-editorial>h2{text-align:center;margin:0 0 38px}.experience-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.experience-columns article{min-width:0;padding:0 30px}.experience-columns article:first-child{padding-left:0;border-right:1px solid #1F4B3F}.experience-columns article:last-child{padding-right:0}.experience-number{display:block;font:italic 25px Georgia,serif;color:#B08C39;margin-bottom:3px}.experience-columns h3{font-size:clamp(24px,2.6vw,34px);line-height:1.2;margin:0 0 7px}.experience-columns p{margin:0 0 24px;color:#62736a;font-size:16px;min-height:24px}.experience-photo{width:100%;aspect-ratio:4/3;border-radius:22px;background-image:url('/experience-scan-at-home.png');background-size:200% 100%;background-repeat:no-repeat}.experience-simple{background-position:left center}.experience-layered{background-position:right center}.experience-action{display:flex;justify-content:center;margin-top:30px}.experience-action .btn{min-width:240px;justify-content:center;gap:25px}
@media(max-width:650px){.experience-editorial{margin:42px 0}.experience-editorial>h2{font-size:29px;margin-bottom:28px}.experience-columns{grid-template-columns:1fr;gap:28px}.experience-columns article,.experience-columns article:first-child,.experience-columns article:last-child{padding:0;border:0}.experience-columns article+article{border-top:1px solid #d6ded6;padding-top:26px}.experience-columns h3{font-size:27px}.experience-columns p{font-size:15px;margin-bottom:16px}.experience-photo{border-radius:17px}.experience-action .btn{width:100%}}

/* Full composition keeps the phone, frame and tropical living room visible. */
.heroimage.hero-memory-home{align-self:center;aspect-ratio:16/9;height:auto;min-height:0}.hero-memory-home img{position:relative;display:block;width:100%;height:auto;object-fit:contain}.hero-memory-home:after{display:none}@media(max-width:760px){.heroimage.hero-memory-home{height:auto;aspect-ratio:16/9;min-height:0;border-radius:20px}}

/* Compact account header without changing the mobile brand layout. */
@media(min-width:901px){.topbar{height:48px;min-height:0;padding-top:0;padding-bottom:0}}

/* Readable sidebar slogan with its own full-width line. */
@media(min-width:901px){.sidebar>.brand{display:grid;grid-template-columns:52px minmax(0,1fr);column-gap:12px;row-gap:12px;align-items:center}.sidebar>.brand .brand-copy{display:contents}.sidebar>.brand .brand-name{grid-column:2;grid-row:1}.sidebar>.brand .brand-tagline{display:block;grid-column:1/-1;font-size:14px;line-height:1.55;font-weight:500;color:#695221;letter-spacing:0;padding-top:10px;border-top:1px solid #d9c99f}}

/* Bring the home heading directly below the compact header. */
.main>.topbar+.hero{margin-top:28px;min-height:0;align-items:start}.main>.topbar+.hero .herotext{align-self:start;padding-top:0}.main>.topbar+.hero .herotext h1{margin-top:0}.main>.topbar+.hero .hero-memory-home{align-self:start}@media(min-width:901px){.topbar{height:44px}}

.hero-media{min-width:0;align-self:start}.hero-how{display:flex;justify-content:flex-start;margin-top:12px}.hero-how .btn.ghost{padding:8px 0;text-align:left}

/* Give the home visual the full phone width and a taller portrait-screen crop. */
@media(max-width:760px) and (orientation:portrait){.hero-media{width:100%;align-self:stretch}.heroimage.hero-memory-home{width:100%;aspect-ratio:1/1;min-height:0;height:auto}.hero-memory-home img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:65% center}}

/* Taller image on portrait tablets as well as phones. */
@media(orientation:portrait){.hero-media{width:100%;align-self:stretch}.heroimage.hero-memory-home{width:100%;height:auto;aspect-ratio:1/1;min-height:0}.hero-memory-home img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:65% center}}

/* Keep the brand promise visible in the mobile header. */
@media(max-width:900px){.mobilebrand .brand-tagline{display:block;font-size:13px;line-height:1.45;font-weight:500;color:#695221;letter-spacing:0}.mobilebrand .brand-copy{gap:6px;min-width:0}.mobilebrand .brand{align-items:center}.topbar{height:auto;min-height:108px;padding-top:14px;padding-bottom:14px}}

/* Match the photo bottom to the adjacent create button in the two-column hero. */
@media(min-width:901px){.main>.topbar+.hero{align-items:stretch;overflow:visible;margin-bottom:64px}.main>.topbar+.hero .herotext{padding-bottom:0}.main>.topbar+.hero .hero-media{position:relative;align-self:stretch}.main>.topbar+.hero .heroimage.hero-memory-home{height:100%;aspect-ratio:auto;min-height:340px}.main>.topbar+.hero .hero-memory-home img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% center}.hero-media .hero-how{position:absolute;top:100%;left:0;margin-top:12px}}

.how-cards-modal{width:min(680px,calc(100% - 32px));max-height:calc(100dvh - 40px);overflow:auto;border:1px solid #dddccf;border-radius:26px;padding:28px;background:#fffdf8;color:#263c35;box-shadow:0 24px 80px #102a3040}.how-cards-modal::backdrop{background:#102f28aa}.how-modal-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.how-modal-header h2{margin:0;font-size:30px}.how-close{width:44px;height:44px;flex-shrink:0;border:1px solid #d5ddd5;border-radius:50%;background:white;color:#1F4B3F;font-size:32px;line-height:1}.how-cards-modal .how-progress{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.how-cards-modal .how-tab{padding:10px 4px;font-size:12px;min-width:0}.how-cards-modal .how-detail{border:1px solid #dce2d9;border-radius:20px;padding:24px;margin-top:18px;background:#f7f5ed}.how-cards-modal .how-detail h2{font-size:28px}.how-cards-modal .controls{justify-content:space-between}.how-cards-modal .notice{font-size:14px}body:has(.how-cards-modal[open]){overflow:hidden}@media(max-width:500px){.how-cards-modal{padding:18px}.how-cards-modal .how-detail{padding:20px 16px}.how-cards-modal .how-tab{font-size:11px}}

/* End the desktop photo at the explanatory paragraph rather than the CTA. */
@media(min-width:901px){.main>.topbar+.hero .heroimage.hero-memory-home{height:calc(100% - 80px);min-height:280px}.hero-media .hero-how{top:calc(100% - 80px)}}

.how-cards-modal .how-visual-detail{background:transparent;border:0;padding:12px 0;margin-top:12px}.how-visual-detail .photo-guide-tip p{margin:0}.how-visual-detail h2{margin-top:10px}.how-scan-example{border:1px solid #dce2d9;background:#edf3ed;padding:10px;border-radius:20px;margin:20px 0}.how-scan-example .experience-photo{border-radius:14px}.how-scan-example>strong{display:block;text-align:center;margin:12px 0 5px;color:#295e40}.how-visual-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0}.how-visual-pair>div{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;background:#edf3ed;border:1px solid #d9e2d6;border-radius:20px;padding:28px 12px}.how-visual-pair svg,.how-gift-example svg{width:48px;height:48px;color:#315c4e}.how-visual-pair span{font-size:14px}.how-gift-example{display:flex;align-items:center;gap:14px;margin:24px 0}.how-gift-card{background:#edf3ed;border:1px solid #cddccc;border-radius:20px;padding:22px 12px;display:grid;justify-items:center;gap:10px;flex:1}.how-gift-card strong{letter-spacing:2px;color:#315c4e}.how-gift-example>div:last-child{flex:1;display:grid;justify-items:center;gap:14px;text-align:center}.how-gift-arrow{font-size:30px;color:#987626}.how-visual-detail .photo-guide-examples{margin:20px 0}.how-cards-modal .controls{margin-top:14px}
