:root{--ink:#16394d;--navy:#102c3d;--blue:#c8e1eb;--paper:#f8f5ee;--muted:#5f7480;--line:#cedce1;--accent:#ab5942}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.6 Arial,sans-serif}button,input,textarea{font:inherit}button,a,input,summary{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%}button{color:inherit}button:disabled{cursor:not-allowed;opacity:.48}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #3b7d9b;outline-offset:4px}.skip-link{position:fixed;top:-70px;left:20px;z-index:30;background:white;padding:12px}.skip-link:focus{top:10px}.announce{text-align:center;background:var(--navy);color:#dbeef5;font-size:10px;letter-spacing:.14em;padding:9px 15px}header{height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 6%;position:sticky;top:0;z-index:5;background:#f8f5eef2;backdrop-filter:blur(16px);border-bottom:1px solid #16394d13}.brand-logo{display:block;width:92px;height:70px;object-fit:contain;filter:brightness(0) saturate(100%) invert(18%) sepia(20%) saturate(1600%) hue-rotate(157deg)}nav{display:flex;gap:34px;font-size:12px}nav a{padding:10px 0}.actions{display:flex;gap:12px;align-items:center}.actions button{background:transparent;border:0}.actions .bag{border:1px solid #9ab3bf;border-radius:28px;padding:10px 15px;font-size:12px}.bag #count{display:inline-grid;place-items:center;min-width:23px;height:23px;margin-left:9px;background:var(--ink);color:white;border-radius:50%}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:680px;background:var(--navy)}.hero-copy{position:relative;padding:100px 10% 52px 12%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;color:var(--paper);overflow:hidden;background:radial-gradient(ellipse at 5% 100%,#285e7280,transparent 65%),var(--navy)}.hero-copy:after{content:"";position:absolute;width:500px;height:500px;border:1px solid #c8e1eb10;border-radius:50%;left:-270px;bottom:-350px;pointer-events:none}.hero-topline{position:absolute;top:25px;left:12%;right:8%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:17px;border-bottom:1px solid #b9d6e330;font-size:8px;letter-spacing:.12em}.hero-topline span:nth-child(2){display:none}.motion-toggle{border:1px solid #a9ccd259;border-radius:20px;background:transparent;color:#dcecf2;font-size:10px;padding:8px 10px}.eyebrow,.step-label{display:block;font-size:10px;font-weight:600;letter-spacing:.15em;line-height:1.5}.hero .eyebrow{color:#a8cbdc}.hero h1{font:clamp(48px,5.2vw,78px)/1.06 Georgia,serif;letter-spacing:-.045em;margin:24px 0}.hero h1 em{font-weight:normal;color:#c4e3ef}.hero-copy>p{max-width:360px;color:#c4d3db;line-height:1.8;font-size:15px}.button{display:inline-flex;justify-content:center;align-items:center;gap:35px;border:0;border-radius:32px;padding:17px 24px;font-size:12px;font-weight:600;letter-spacing:.02em;margin-top:22px;transition:transform .25s,background .25s,box-shadow .25s}.button.dark{background:var(--ink);color:white}.hero .button.dark{background:#d2e8f1;color:var(--ink)}.button:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 10px 25px #102c3d26;background:#3e7188;color:white}.hero-note{display:flex;gap:14px;align-items:center;margin-top:32px;font-size:10px;color:#a7c1ce;line-height:1.5}.hero-note>span{font-size:23px;color:#c7a070}.hero-image{position:relative;overflow:hidden;min-height:620px;background:#e4ded1}.hero-image>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;animation:hero-drift 20s ease-in-out infinite alternate}.hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#122e3e35,transparent 30%);pointer-events:none}.hero-stamp{position:absolute;right:25px;top:28px;width:90px;height:90px;border:1px solid #16394d6b;border-radius:50%;display:grid;place-content:center;text-align:center;font-size:8px;letter-spacing:.1em;line-height:1.1;transform:rotate(12deg);background:#f8f5eea8}.hero-stamp span{font-size:20px;line-height:1.3}.image-label{position:absolute;bottom:38px;left:28px;z-index:1;background:var(--paper);padding:13px 19px;font:italic 17px Georgia;box-shadow:0 8px 30px #0a24321c;transform:rotate(-2deg)}.image-label span{margin-left:25px;color:var(--accent)}.concept-label{position:absolute;bottom:10px;right:15px;font-size:9px;color:#244454;background:#f8f5eec9;padding:2px 6px;z-index:1}.memory-ribbon{overflow:hidden;background:#c8e1eb;padding:14px 0}.ribbon-track{width:max-content;display:flex;font-size:10px;letter-spacing:.18em;animation:ribbon 36s linear infinite}.qualities{display:flex;justify-content:space-around;gap:20px;padding:25px 6%;border-bottom:1px solid var(--line);font-size:12px;color:var(--accent)}.qualities b{color:var(--ink);font-weight:400;margin-left:9px}.collection,.editor-section,.faq{padding:100px 7%}.showcase{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:9%;overflow:hidden}.showcase-visual{position:relative;min-height:570px;display:grid;place-items:center;background:radial-gradient(ellipse at center,#f4f8f8 10%,#deedf1 65%,#c2dbe6);border-radius:45% 45% 8px 8px;overflow:hidden;perspective:1000px}.scene-orbit{position:absolute;width:80%;aspect-ratio:1;border-radius:50%;border:1px solid #abc9d599;box-shadow:0 0 0 45px #fff3,0 0 0 90px #fff2}.falling-card{position:relative;width:54%;max-width:275px;aspect-ratio:2/3;box-shadow:12px 26px 30px #183e5130,0 2px 5px #193e5130;transform:rotate(-7deg);animation:card-landing 1.2s both,card-float 7s 1.2s infinite ease-in-out;z-index:1}.falling-card>img:first-child{display:block;width:100%;height:100%;object-fit:cover}.falling-card .scene-photo{position:absolute;left:25%;top:32.1%;width:50%;height:33.4%;object-fit:cover;box-shadow:2px 5px 8px #0003}.scene-greeting,.scene-from{position:absolute;left:15%;width:70%;text-align:center;font-family:Georgia;color:#173c29;line-height:1.25}.scene-greeting{top:23%;font-size:17px}.scene-from{top:72%;font-size:11px;font-style:italic}.scene-caption{position:absolute;bottom:25px;left:0;width:100%;text-align:center;font:italic 16px Georgia;color:#496c7e}.showcase-copy h2,.editorial-copy h2,.section-heading h2,.faq h2{font:clamp(35px,3.8vw,56px)/1.12 Georgia,serif;letter-spacing:-.035em;margin:18px 0 23px}.showcase-copy>p:not(.fine),.editorial-copy>p,.section-heading p{color:var(--muted);font-size:14px;line-height:1.8;max-width:450px}.showcase-detail{display:flex;gap:20px;padding:20px 0;border-top:1px solid var(--line);max-width:420px}.showcase-detail>span{font:italic 16px Georgia;color:#8da6b2}.showcase-detail strong{font:21px Georgia;display:block}.showcase-detail small{display:block;margin-top:8px;font-size:12px;line-height:1.7;color:var(--muted)}.fine{font-size:11px;line-height:1.7;color:#586f7c}.showcase-copy .fine{max-width:415px;margin-top:20px}.snowfall{position:absolute;inset:0;z-index:2;pointer-events:none}.snowfall i{position:absolute;top:-10%;font-style:normal;color:white;text-shadow:0 0 5px #7faec8;animation:snow-fall 11s linear infinite}.snowfall i:nth-child(3n){font-size:20px}.snowfall i:nth-child(1){left:5%;animation-delay:-1s}.snowfall i:nth-child(2){left:14%;animation-delay:-3s}.snowfall i:nth-child(3){left:23%;animation-delay:-6s}.snowfall i:nth-child(4){left:32%;animation-delay:-2s}.snowfall i:nth-child(5){left:41%;animation-delay:-5s}.snowfall i:nth-child(6){left:50%;animation-delay:-7s}.snowfall i:nth-child(7){left:59%;animation-delay:-4s}.snowfall i:nth-child(8){left:68%;animation-delay:-1s}.snowfall i:nth-child(9){left:76%;animation-delay:-5s}.snowfall i:nth-child(10){left:84%;animation-delay:-3s}.snowfall i:nth-child(11){left:92%;animation-delay:-6s}.snowfall i:nth-child(12){left:97%;animation-delay:-2s}.editorial{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;padding:30px 7% 100px}.editorial-photo{position:relative;overflow:hidden;border-radius:6px;box-shadow:0 18px 38px #12394e14;order:2}.editorial-photo>img{display:block;width:100%;aspect-ratio:1;object-fit:cover}.editorial-copy{padding:20px 4% 20px 0}.textlink{display:inline-block;font-size:12px;border-bottom:1px solid;padding-bottom:5px;margin-top:15px}.material-notes{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:38px;font-size:10px}.material-notes span{border:1px solid #c2cfd5;border-radius:30px;padding:8px 12px}.material-notes i{font-style:normal}.how{padding:80px 7%;background:#e4eff2;position:relative}.how .section-heading{text-align:center}.section-heading{margin-bottom:38px}.steps-art{max-width:390px;margin:-20px auto 25px}.steps-art img{display:block;width:100%}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.steps article{border-top:1px solid #acc5d0;padding:22px 8px 0}.steps span{font:italic 20px Georgia;color:#718f9e}.steps h3{font:25px Georgia;margin:12px 0}.steps p{font-size:13px;color:var(--muted);line-height:1.7;max-width:290px}.editor-section{background:#f6f8f7}.studio{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:start}.card-preview{background:radial-gradient(ellipse at 30% 0%,#f9fbfb,#d9e6eb);padding:35px;position:sticky;top:110px;text-align:center;border-radius:5px;box-shadow:0 17px 35px #143f5410}.preview-label{font-size:9px;letter-spacing:.2em;margin-bottom:20px}.artboard{position:relative;width:min(100%,400px);margin:auto;box-shadow:6px 13px 23px #203e482e}.artboard>img{width:100%;display:block}.pv{position:absolute;text-align:center;left:16%;width:68%;font-family:Georgia;overflow:hidden;white-space:pre-line;line-height:1.25;pointer-events:none}.pv.title{top:23%;font-size:clamp(12px,1.7vw,20px)}.pv.message{top:68%;font-size:10px;font-style:italic}.pv.family{top:74%;font-size:11px}.pv.year{top:79%;font-size:10px}.magnet{position:absolute;left:25%;top:32.1%;width:50%;aspect-ratio:1;display:grid;place-items:center;background:#e6e4df;box-shadow:2px 5px 9px #102b3d38;overflow:hidden;cursor:grab;touch-action:none}.magnet:active{cursor:grabbing}.magnet span{font-size:8px;letter-spacing:.07em;color:#657983}.magnet img{position:absolute;max-width:none;object-fit:fill;pointer-events:none;user-select:none;transform-origin:0 0}.controls .step-label{margin:0 0 13px}.controls .step-label:not(:first-child){margin-top:26px}.packs{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.pack{padding:12px 4px;border:1px solid #c8d7dd;background:white;border-radius:3px;text-align:center;transition:background .2s,transform .2s}.pack.active,.design.active{outline:2px solid #2c617a;outline-offset:-2px;background:#e7f1f5}.pack strong,.pack small,.pack .pack-name{display:block}.pack strong{font:23px Georgia}.pack .pack-name{font-size:9px;margin-bottom:3px}.pack small{font-size:11px;margin-top:5px}.pack:hover{transform:translateY(-2px)}.design-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:7px}.design{padding:4px;border:1px solid #ccd9df;background:white;border-radius:3px}.design img{width:100%;display:block}.upload{border:1px dashed #94b1bf;background:white;padding:22px;display:flex;flex-direction:column;align-items:center;gap:5px;cursor:pointer;border-radius:4px}.upload:focus-within{outline:3px solid #3b7d9b;outline-offset:3px}.upload input{position:absolute;opacity:0;width:1px;height:1px}.upload>span{font-size:23px}.upload strong{font-size:13px}.upload small{font-size:10px;color:var(--muted)}.photo-actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:12px}.photo-actions button{font-size:10px;background:none;border:0;text-decoration:underline;padding:3px 0}.sliders{display:grid;gap:9px}.sliders label{display:grid;grid-template-columns:140px 1fr;align-items:center;font-size:11px}.sliders input{width:100%;accent-color:#255e78}.fields{display:grid;grid-template-columns:1fr 1fr;gap:13px}.fields label{font-size:11px;color:var(--muted)}.fields .wide{grid-column:1/-1}.fields input,.fields textarea{display:block;width:100%;margin-top:5px;padding:11px;background:white;border:1px solid #c6d5dc;color:var(--ink);border-radius:3px}.fields textarea{resize:vertical}.full{width:100%}.set-summary{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:25px;padding-top:18px;border-top:1px solid var(--line);font-size:12px}.set-summary strong{font:24px Georgia}.error{font-size:12px;color:#a13b2c}.faq{max-width:940px;margin:auto}.faq details{border-bottom:1px solid var(--line);padding:20px 0}.faq summary{cursor:pointer;font-size:14px}.faq details p{font-size:13px;color:var(--muted);line-height:1.8;max-width:680px}footer{background:var(--navy);padding:50px 7%;color:#deebf0;display:flex;align-items:center;justify-content:space-between;gap:25px}footer p,footer a{font-size:12px;color:#b8ced9}.footer-logo img{width:105px;display:block}dialog.drawer{position:fixed;inset:0 0 0 auto;width:min(450px,100%);height:100%;max-height:100%;max-width:100%;margin:0;border:0;background:#fbfbf8;color:var(--ink);padding:28px;box-shadow:-10px 0 50px #102c3d22}dialog.drawer[open]{display:flex;flex-direction:column;animation:drawer-in .25s ease}dialog::backdrop{background:#0b263966;backdrop-filter:blur(3px)}.drawer-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.drawer-head h2{font:32px Georgia}.drawer-head button{font-size:30px;background:none;border:0;padding:6px 14px}.items{flex:1;overflow:auto}.cart-item{display:flex;gap:15px;padding:20px 0;border-bottom:1px solid var(--line)}.cart-item img{width:100px;height:150px;object-fit:contain;align-self:flex-start;background:#edf2f3}.cart-item h4{font:20px/1.3 Georgia;margin:0 0 8px}.cart-item p{font-size:11px;color:var(--muted);margin:6px 0;overflow-wrap:anywhere}.remove{background:none;border:0;padding:3px 0;font-size:11px;text-decoration:underline}.drawer-bottom{border-top:1px solid var(--line);padding-top:18px}.subtotal{display:flex;justify-content:space-between}.drawer-bottom .button{margin-top:10px}.motion-in{animation:section-rise .8s ease both}.hero-copy>.eyebrow,.hero-copy>h1,.hero-copy>p,.hero-copy>.button{animation:section-rise .9s ease both}.hero-copy>h1{animation-delay:.12s}.hero-copy>p{animation-delay:.2s}.hero-copy>.button{animation-delay:.3s}.motion-paused *,.motion-paused *::before,.motion-paused *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal-ready .showcase-visual .falling-card{animation-play-state:paused}.showcase-visual.motion-in .falling-card{animation-play-state:running}.showcase-visual.motion-in{animation:none}@keyframes hero-drift{from{transform:scale(1)}to{transform:scale(1.04)}}@keyframes ribbon{to{transform:translateX(-50%)}}@keyframes section-rise{from{opacity:.4;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes card-landing{from{opacity:0;transform:translateY(-80px) rotate(7deg)}to{opacity:1;transform:rotate(-7deg)}}@keyframes card-float{0%,100%{transform:rotate(-7deg) translateY(0)}50%{transform:rotate(-4deg) translateY(-9px)}}@keyframes snow-fall{0%{transform:translateY(-30px) rotate(0);opacity:0}10%,85%{opacity:.85}100%{transform:translateY(650px) rotate(120deg);opacity:0}}@keyframes drawer-in{from{transform:translateX(100%)}to{transform:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}@media(max-width:1050px){.hero-topline{left:8%}.hero-copy{padding-left:8%;padding-right:8%}.hero h1{font-size:55px}.hero{min-height:610px}.hero-image{min-height:610px}.showcase{gap:6%}.showcase-visual{min-height:500px}.studio{gap:4%}.card-preview{padding:23px}.pv.message{font-size:9px}.pv.family{font-size:10px}.material-notes{gap:6px}.material-notes span{padding:6px 9px}}@media(max-width:750px){html{scroll-padding-top:80px}header{height:70px;padding:0 5%}.brand-logo{width:75px;height:58px}nav{display:none}.announce{font-size:8px;letter-spacing:.1em}.hero{grid-template-columns:1fr}.hero-copy{padding:85px 7% 40px}.hero h1{font-size:clamp(44px,10.5vw,65px);margin:18px 0}.hero-image{min-height:0;aspect-ratio:1.04}.hero-topline{top:22px;left:7%;right:7%}.hero-copy>p{max-width:100%;font-size:14px}.hero-note{margin-top:25px}.image-label{bottom:35px;left:20px;font-size:15px}.hero-stamp{width:75px;height:75px;right:18px;top:18px;font-size:7px}.qualities{gap:8px;padding:20px 4%;font-size:10px}.qualities b{margin-left:4px}.collection,.editor-section,.faq,.how{padding:65px 6%}.showcase{grid-template-columns:1fr;gap:40px}.showcase-visual{min-height:440px}.falling-card{max-width:230px;width:54%}.scene-greeting{font-size:15px}.showcase-copy h2,.editorial-copy h2,.section-heading h2,.faq h2{font-size:37px}.showcase-copy>p{font-size:14px}.editorial{grid-template-columns:1fr;gap:24px;padding:0 6% 65px}.editorial-photo{order:0}.editorial-copy{padding:0}.editorial-copy h2 br{display:none}.material-notes{margin-top:25px}.steps{grid-template-columns:1fr;gap:22px}.steps article{position:relative;padding:18px 0 0 42px}.steps span{position:absolute;left:0;top:21px}.steps h3{font-size:23px;margin-top:0}.steps p{max-width:none}.steps-art{max-width:300px;margin:0 auto 24px}.studio{grid-template-columns:1fr;gap:32px}.card-preview{position:static;padding:25px 20px}.artboard{max-width:300px}.pv.title{font-size:16px}.pv.message{font-size:8px}.pv.family{font-size:10px}.pv.year{font-size:8px}.set-summary{position:static}.pack .pack-name{font-size:8px}.sliders label{grid-template-columns:132px 1fr}.faq{padding-top:55px;padding-bottom:55px}footer{flex-direction:column;align-items:flex-start;padding:40px 6%}.section-heading{margin-bottom:28px}.hero .button{margin-top:18px}.card-preview .fine{font-size:10px}.scene-caption{font-size:14px}}@media(max-width:360px){.qualities{font-size:9px}.hero h1{font-size:42px}.fields{grid-template-columns:1fr}.sliders label{grid-template-columns:120px 1fr}.drawer{padding:20px!important}}

/* Product clarity and shorter personalization flow. */
.hero-copy>p.quick-price{font-size:10px;color:#c5dce6;margin:10px 0 0}.hero-mini-steps{display:flex;align-items:center;flex-wrap:wrap;gap:9px;font-size:9px;margin-top:28px;color:#bad0db}.hero-mini-steps i{font-style:normal;color:#8baab9}.hero h1{font-size:clamp(45px,4.8vw,72px)}.hero-copy{padding-top:95px}.hero-image>img{object-position:center}.scene-message,.scene-year{position:absolute;left:15%;width:70%;text-align:center;color:#173c29;font:italic 8px/1.25 Georgia;pointer-events:none}.scene-message{top:68%}.scene-year{top:79%;font-style:normal}.scene-from{top:74%;font-size:9px}.scene-underlay{position:absolute;left:25%;top:32.1%;width:50%;height:33.4%;display:grid;place-items:center;font:24px Georgia;color:#a77a70;background:#e9dedb}.falling-card .scene-photo{transition:transform .7s ease,box-shadow .7s ease;transform-origin:bottom right}.falling-card.lifted .scene-photo{transform:translate(58%,-8%) rotate(9deg);box-shadow:8px 16px 20px #142c3d40}.demo-toggle{position:absolute;bottom:23px;left:50%;transform:translateX(-50%);white-space:nowrap;border:1px solid #9dbdcb;border-radius:24px;padding:11px 16px;background:#f8f5eef2;font-size:11px;z-index:3;box-shadow:0 5px 15px #193f5115}.demo-toggle:hover{background:white}.showcase-detail{padding:15px 0}.showcase-copy .button{margin-top:16px}.showcase{gap:7%}.collection{padding-top:70px;padding-bottom:70px}.minor-label{font-size:9px;letter-spacing:.12em;margin:22px 0 10px}.crop-options,.message-options{margin-top:15px;border:1px solid #c9d8de;border-radius:5px;background:#fff9;padding:12px 15px}.crop-options summary,.message-options summary{cursor:pointer;font-size:11px;font-weight:600;min-height:22px}.crop-options[open] summary,.message-options[open] summary{margin-bottom:15px}.sender-field{display:block;font-size:11px;color:var(--muted)}.sender-field input{display:block;width:100%;margin-top:6px;padding:12px;background:white;border:1px solid #c6d5dc;color:var(--ink);border-radius:3px}.message-options .fields{gap:12px}.message-options .fields label:first-child{grid-column:1/-1}.photo-actions button{min-height:34px}.upload{padding:19px}.controls .step-label:not(:first-child){margin-top:27px}.controls .step-label{font-size:11px}.quick-start{display:none}.studio .card-preview{transition:box-shadow .3s}.has-photo .card-preview{box-shadow:0 17px 35px #143f5424}.how{padding-top:60px;padding-bottom:65px}.editorial{padding-top:75px}.steps-art{max-width:270px}.editor-section>.section-heading p{margin-bottom:0}.editor-section .section-heading{margin-bottom:30px}.photo-actions{gap:14px}.design{min-height:55px}.design img{pointer-events:none}.fine{overflow-wrap:anywhere}
@media(max-width:750px){.hero-copy{padding:80px 7% 32px}.hero h1{font-size:clamp(42px,10.1vw,63px)}.hero-copy>p{margin:6px 0}.hero-mini-steps{font-size:9px;margin-top:23px;gap:6px}.hero-image{aspect-ratio:.97}.hero-image>img{object-position:center 46%}.hero .button{padding:15px 22px}.collection{padding-top:46px;padding-bottom:48px}.showcase{gap:28px}.showcase-visual{min-height:415px}.falling-card{max-width:210px}.scene-greeting{font-size:14px}.scene-message{font-size:7px}.scene-from{font-size:8px}.scene-year{font-size:7px}.showcase-copy h2{font-size:34px;margin:13px 0 17px}.showcase-detail strong{font-size:20px}.showcase-copy .fine{font-size:10px}.editor-section{padding:45px 5%}.studio{display:block}.controls .step-label{font-size:10px}.card-preview{margin-top:14px;padding:18px 15px 12px}.card-preview .artboard{max-width:220px}.card-preview .preview-label{margin-bottom:12px;font-size:8px}.card-preview .fine{font-size:9px;margin:10px 0 0}.card-preview .pv.title{font-size:12px}.card-preview .pv.message{font-size:6.5px}.card-preview .pv.family{font-size:8px}.card-preview .pv.year{font-size:7px}.magnet span{font-size:6px}.photo-actions button{font-size:11px}.sliders label{grid-template-columns:125px 1fr}.fields input,.fields textarea,.sender-field input{font-size:16px}.quick-start{position:fixed;bottom:0;left:0;right:0;z-index:4;display:flex;justify-content:space-between;align-items:center;gap:12px;background:#f8f5eef5;backdrop-filter:blur(15px);padding:10px 5% calc(10px + env(safe-area-inset-bottom));border-top:1px solid #b6cbd5;box-shadow:0 -4px 20px #12394e12;transition:transform .25s}.quick-start strong{font-size:11px;display:block}.quick-start small{font-size:9px;color:var(--muted);display:block;margin-top:2px}.quick-start .button{margin:0;padding:12px 15px;font-size:11px;white-space:nowrap}.in-editor .quick-start{transform:translateY(120%);pointer-events:none}.editorial{padding-top:50px;padding-bottom:50px}.how{padding-top:45px;padding-bottom:45px}.steps-art{max-width:235px}.steps{gap:17px}.steps article{padding-top:15px}.steps p{font-size:12px;margin-bottom:0}footer{padding-bottom:115px}.motion-toggle{padding:9px 11px}}

.hero-image>img{object-fit:contain}.hero-image{background:#d7cebd}@media(max-width:750px){.hero-image{aspect-ratio:4/5}}

.editorial-gallery{display:grid;grid-template-columns:1.05fr 1fr;gap:10px;background:transparent;overflow:visible;box-shadow:none}.editorial-gallery>img{aspect-ratio:4/5;border-radius:5px;box-shadow:0 12px 25px #12394e18;object-fit:cover}.editorial-gallery>img:nth-child(2){margin-top:45px}.editorial-gallery .concept-label{bottom:-30px;right:0}@media(max-width:750px){.editorial-gallery{margin-bottom:30px;gap:9px}.editorial-gallery>img:nth-child(2){margin-top:25px}}

/* The gift's journey: one calm, accessible photographic sequence. */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.story-watch-link{margin-top:18px;font-size:10px;color:#d6e9f1;border-bottom:1px solid #a8cbdc70;padding-bottom:3px}.gift-story{padding:85px 7%;display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;background:#e8eff0}.story-viewer{min-width:0}.story-scenes{position:relative;aspect-ratio:4/5;isolation:isolate;overflow:hidden;border-radius:7px;background:#d5c9b9;box-shadow:0 20px 45px #102c3d25}.story-frame{position:absolute;inset:0;margin:0;opacity:0;transition:opacity 1s ease,transform 1s ease;transform:scale(1.025);pointer-events:none}.story-frame.is-active{opacity:1;transform:scale(1);z-index:1}.story-frame img{width:100%;height:100%;object-fit:cover;display:block}.story-frame:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#102c3d95);pointer-events:none}.story-frame figcaption{position:absolute;left:24px;right:24px;bottom:25px;z-index:2;color:white;display:flex;align-items:center;gap:13px;text-shadow:0 1px 8px #142f3e60}.story-frame figcaption>span{width:29px;height:29px;border:1px solid #fff8;border-radius:50%;display:grid;place-items:center;font-size:10px}.story-frame figcaption strong{font:italic 21px Georgia}.story-controls{display:flex;align-items:center;gap:16px;margin-top:18px;min-height:44px}.story-counter{font-size:10px;letter-spacing:.1em;white-space:nowrap}.story-progress{height:2px;background:#c0cfd5;flex:1;overflow:hidden}.story-progress span{height:100%;display:block;width:0;background:#1c546d}.story-playing .story-progress span{animation:story-progress var(--story-duration) linear both}.story-controls button{border:1px solid #abc1cb;border-radius:24px;background:#f8f5eec9;padding:11px 15px;font-size:10px;min-height:42px;white-space:nowrap}.story-controls button:hover{background:white}.story-disclaimer{display:block;font-size:9px;color:#576d78;margin-top:8px}.story-copy h2{font:clamp(36px,3.9vw,58px)/1.12 Georgia;letter-spacing:-.035em;margin:18px 0}.story-copy h2 em{font-weight:normal;color:#537e91}.story-copy>p{font-size:14px;color:var(--muted);margin-bottom:25px}.story-steps{display:grid;gap:0}.story-step{display:flex;align-items:center;gap:15px;width:100%;text-align:left;background:transparent;border:0;border-top:1px solid #bacdd5;padding:19px 5px;transition:background .3s,padding .3s}.story-step:last-child{border-bottom:1px solid #bacdd5}.story-step-number{font:italic 17px Georgia;color:#7795a3}.story-step>span:nth-child(2){flex:1}.story-step strong{display:block;font:22px Georgia}.story-step small{display:block;font-size:11px;color:var(--muted);margin-top:6px;line-height:1.6}.story-step i{font:18px Georgia;opacity:.4}.story-step.is-active{background:#fbfcfa9e;padding-left:14px;padding-right:14px}.story-step.is-active .story-step-number,.story-step.is-active i{color:#19465e;opacity:1}.story-copy>.button{margin-top:28px}.story-step:focus-visible,.story-controls button:focus-visible{outline:3px solid #236483;outline-offset:3px}@keyframes story-progress{from{width:0}to{width:100%}}.motion-paused .story-progress span{width:0}
@media(max-width:750px){.gift-story{padding:48px 6%;grid-template-columns:1fr;gap:30px}.story-copy{order:0}.story-viewer{order:1}.story-copy h2{font-size:37px;margin:13px 0}.story-copy>p{font-size:13px;margin-bottom:20px}.story-steps{grid-template-columns:repeat(3,1fr);gap:7px}.story-step,.story-step:last-child{display:block;text-align:left;border:1px solid #b9cdd6;border-radius:5px;padding:11px 8px;min-height:108px}.story-step.is-active{padding:11px 8px;background:#fff;box-shadow:0 5px 15px #173c4d0b}.story-step-number{display:block;font-size:13px;margin-bottom:6px}.story-step strong{font:15px/1.2 Georgia}.story-step small,.story-step i{display:none}.story-copy>.button{margin-top:22px;width:100%;font-size:12px}.story-frame figcaption{left:16px;right:16px;bottom:20px;gap:10px}.story-frame figcaption strong{font-size:18px}.story-controls{gap:12px;margin-top:13px}.story-disclaimer{font-size:8px}.story-watch-link{font-size:10px;margin-top:17px}.story-controls button{font-size:10px}.story-scenes{aspect-ratio:4/5}.gift-story .eyebrow{font-size:9px}}
@media(prefers-reduced-motion:reduce){.story-frame{transition:none;transform:none}.story-progress span{animation:none!important}}
@media(max-width:750px){.gift-story{display:flex;flex-direction:column;align-items:stretch;gap:0}.story-copy{display:contents}.story-copy>.eyebrow{order:0}.story-copy>h2{order:1}.story-copy>p{order:2;margin:0 0 5px}.story-viewer{order:3;margin:20px 0}.story-steps{order:4}.story-copy>.button{order:5}.story-step,.story-step:last-child{min-height:98px}.story-copy>.sr-only{order:6}}

/* Combined edition: v6's warm product story and compact editor, v7's clear choices. */
.packs{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.pack{position:relative;padding:11px 6px 10px;min-width:0;background:#fffefa}.pack .pack-name{font-size:10px;margin:0 0 5px;font-weight:600}.pack strong{font:28px/1.1 Georgia}.pack strong>span{display:none}.pack-detail{display:block;font-size:9px;line-height:1.4;color:#526b78;max-width:100px;margin:6px auto 0}.pack small{font-size:12px;font-weight:600;margin-top:7px}.pack small>span{display:none}.pack-check{position:absolute;top:5px;right:5px;font-size:11px;color:#315c70}.pack.active{background:#e1eef2;outline:2px solid #24536a;outline-offset:-2px}.design-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 10px}.design{padding:0;border:0;background:transparent;text-align:left;min-width:0;border-radius:4px}.design.active{background:transparent;outline:none}.design-stage{position:relative;display:grid;place-items:center;background:#e6e8e1;border:1px solid #cbd7db;border-radius:4px;aspect-ratio:1.3;overflow:hidden}.design:nth-child(2) .design-stage{background:#e2e9df}.design:nth-child(3) .design-stage{background:#eee3dd}.design:nth-child(4) .design-stage{background:#dce8ee}.design:nth-child(5) .design-stage{background:#ece1dc}.design:nth-child(6) .design-stage{background:#e9e3d6}.design-paper{position:relative;display:block;height:82%;aspect-ratio:2/3;transform:rotate(-4deg);box-shadow:3px 6px 9px #153c4c2a;transition:transform .2s}.design:nth-child(even) .design-paper{transform:rotate(4deg)}.design-paper>img:first-child{width:100%;height:100%;display:block}.design-paper>.design-dog{position:absolute;aspect-ratio:1;object-fit:cover;box-shadow:1px 2px 3px #102c3d30}.design-greeting{position:absolute;width:100%;left:0;text-align:center;font:4px Georgia;white-space:nowrap}.design-check{position:absolute;top:6px;right:6px;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;border:1px solid #9cb4bf;background:#fbfcfa;font-size:12px}.design.active .design-stage{border:2px solid #24536a;box-shadow:0 3px 8px #102c3d12}.design.active .design-check{background:#16394d;color:white;border-color:#16394d}.design:hover .design-paper{transform:rotate(0)}.design-name{display:block;font-size:12px;line-height:1.3;font-weight:600;margin:8px 0 3px;min-height:31px}.design-state{display:flex;justify-content:space-between;font-size:10px;line-height:1.3;color:#526b78}.design.active .design-state{font-weight:700;color:#16394d}.design:focus-visible{outline:3px solid #3b7d9b;outline-offset:4px}.selection-note{font-size:10px;line-height:1.5;margin:14px 0 0;padding:9px 11px;border-left:3px solid #729aaa;background:#e5edef;color:#375b6d}.minor-label{font-size:10px;margin-top:21px}.photo-actions button{min-height:44px}.photo-actions{gap:13px}.controls>.step-label{font-size:11px}.detail-photo{margin:20px 0 0;border-top:1px solid #b5cbd4;border-bottom:1px solid #b5cbd4;padding:0}.detail-photo summary{cursor:pointer;font-size:12px;padding:14px 4px;min-height:46px}.detail-photo figure{margin:0 0 15px}.detail-photo img{display:block;width:min(100%,330px);height:auto;border-radius:4px;margin:auto}.detail-photo figcaption{font-size:10px;line-height:1.5;color:#526b78;margin-top:9px;text-align:center}.ribbon-track{animation:none}.photo-actions button,.crop-options summary,.message-options summary{font-size:11px}.crop-options summary,.message-options summary{min-height:28px}
@media(max-width:750px){.packs{gap:6px}.pack{padding:10px 4px}.pack .pack-name{font-size:9px;margin-bottom:7px}.pack strong{font-size:26px}.pack-detail{font-size:8px;max-width:65px;min-height:23px}.pack small{font-size:12px;margin-top:7px}.pack-check{right:4px;top:3px;font-size:9px}.design-grid{gap:12px 9px}.design-stage{aspect-ratio:1.15}.design-paper{height:82%}.design-name{font-size:11px;min-height:29px;margin-top:7px}.design-state{font-size:9px}.design-check{width:18px;height:18px;font-size:11px;top:4px;right:4px}.design-greeting{font-size:3px}.selection-note{font-size:10px;margin-top:12px;padding:8px 10px}.controls>.step-label{font-size:10px}.detail-photo summary{font-size:12px}.detail-photo img{width:min(100%,290px)}.detail-photo figcaption{font-size:10px}.photo-actions{gap:12px}.card-preview .fine{font-size:10px}.studio .card-preview{margin-top:12px}.crop-options,.message-options{padding:13px 15px}}
@media(max-width:360px){.pack .pack-name{font-size:8px}.pack-detail{font-size:7.5px}.pack strong{font-size:24px}.design-name{font-size:10px;min-height:27px}.design-state{font-size:8.5px}.design-grid{gap:11px 7px}}
/* Explicit paper dimensions avoid intrinsic image sizing inside the compact grid. */
.design-paper{width:44%;height:auto;aspect-ratio:2/3}.design-paper>img:first-child{height:auto}.design-name{min-height:28px;margin-top:6px}
@media(max-width:750px){.design-stage{aspect-ratio:1.35}.design-paper{width:45%;height:auto}.design-name{min-height:27px;margin-top:6px}.selection-note{margin-top:10px}}

/* A calm, bilingual memory ribbon. Only this strip moves. */
.memory-ribbon{position:relative;display:flex;align-items:center;padding:0;background:#c8e1eb;min-height:58px}
.ribbon-window{min-width:0;flex:1;overflow:hidden}
.ribbon-track{display:flex;width:max-content;animation:memory-ribbon-drift 80s linear infinite;letter-spacing:normal}
.ribbon-group{display:flex;align-items:center;justify-content:space-around;gap:28px;flex-shrink:0;min-width:100vw;padding:15px 28px;white-space:nowrap}
.ribbon-message{font:italic 19px/1.4 Georgia,serif;letter-spacing:-.01em}
.ribbon-values{font-size:10px;letter-spacing:.15em;line-height:1.4}
.ribbon-heart{font:23px/1 Georgia,serif}.ribbon-separator{font-size:14px;color:#4c7588}
.ribbon-toggle{flex:none;width:44px;height:44px;display:grid;place-items:center;border:1px solid #759bab;border-radius:50%;margin:0 12px 0 4px;background:#c8e1eb;color:#16394d;font-size:15px;line-height:1}
.ribbon-toggle:hover{background:#d9edf4}.ribbon-toggle:focus-visible{outline-offset:2px}
.ribbon-accessible{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.ribbon-is-paused .ribbon-track{animation-play-state:paused}
@keyframes memory-ribbon-drift{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.motion-paused .memory-ribbon .ribbon-track{width:100%;transform:none}
.motion-paused .ribbon-group{min-width:0;width:100%;white-space:normal;flex-wrap:wrap;justify-content:center;gap:10px 20px;padding:17px 6%}
.motion-paused .ribbon-group+.ribbon-group,.motion-paused .ribbon-toggle{display:none}
.motion-paused .ribbon-message{flex-basis:100%;text-align:center}.motion-paused .ribbon-heart{display:none}
@media(max-width:750px){.ribbon-group{gap:22px;padding:14px 22px}.ribbon-message{font-size:17px}.ribbon-values{font-size:9px}.ribbon-toggle{margin-right:8px}.motion-paused .ribbon-separator{display:none}.motion-paused .ribbon-values{font-size:9px}}
@media(prefers-reduced-motion:reduce){.memory-ribbon .ribbon-track{animation:none!important;width:100%;transform:none}.ribbon-group{min-width:0;width:100%;white-space:normal;flex-wrap:wrap;justify-content:center;gap:10px 20px;padding:17px 6%}.ribbon-group+.ribbon-group,.ribbon-toggle,.ribbon-heart{display:none}.ribbon-message{flex-basis:100%;text-align:center}}
/* Draw transport icons in CSS so every device has a clear pause/play symbol. */
.ribbon-toggle span{display:block;width:10px;height:12px;border-left:2px solid currentColor;border-right:2px solid currentColor;font-size:0}
.ribbon-toggle[aria-pressed="true"] span{width:0;height:0;border-left:9px solid currentColor;border-right:0;border-top:6px solid transparent;border-bottom:6px solid transparent;margin-left:2px}
