:root{--ink: #1f271b;--ink-soft: #4a5441;--cream: #f6f0e4;--cream-2: #efe6d6;--paper: #fbf8f2;--cream-dim: rgba(246, 240, 228, .8);--olive: #5e6a46;--olive-deep: #44503a;--blush: #d98ea2;--blush-soft: #f3d7dd;--line: rgba(31, 39, 27, .12);--font-display: "Archivo", "Helvetica Neue", Arial, sans-serif;--font-frak: "UnifrakturMaguntia", "Old English Text MT", serif;--font-serif: "Instrument Serif", "Times New Roman", serif;--font-sans: "Archivo", "Helvetica Neue", Arial, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace;--gutter: clamp(18px, 4vw, 56px);--header-h: 68px;--track: 520vh;--radius: 18px}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}html.is-loading{overflow:hidden}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-sans);font-stretch:100%;-webkit-font-smoothing:antialiased;overflow-x:hidden}a{color:inherit}ul{list-style:none;margin:0;padding:0}p,h1,h2,h3{margin:0}img{display:block;max-width:100%}section[id]{scroll-margin-top:var(--header-h)}:focus-visible{outline:3px solid var(--olive-deep);outline-offset:3px;border-radius:4px}.stage :focus-visible,.static-shot :focus-visible,.footer :focus-visible{outline-color:var(--cream)}section[tabindex="-1"]:focus,[tabindex="-1"]:focus:not(:focus-visible){outline:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 24px;border-radius:999px;border:1px solid transparent;cursor:pointer;font:600 15px/1 var(--font-sans);letter-spacing:.01em;text-decoration:none;transition:background-color .2s ease,color .2s ease,transform .2s ease,border-color .2s ease}.btn:hover{transform:translateY(-1px)}.btn:focus-visible{border-radius:999px}.btn-primary{background:var(--olive);color:var(--cream)}.btn-primary:hover{background:var(--olive-deep)}.btn-ghost{background:#161b124d;color:var(--cream);border:1px solid rgba(246,240,228,.6);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.btn-ghost:hover{background:#161b1270}.btn-outline{border:1px solid var(--olive);color:var(--olive-deep);background:transparent}.btn-outline:hover{background:var(--olive);color:var(--cream)}.btn-small{min-height:44px;padding:0 20px;font-size:14px}.loader{position:fixed;inset:0;z-index:50;display:grid;place-content:center;gap:18px;background:var(--cream-2);color:var(--ink);transition:opacity .45s ease,visibility 0s linear .45s}.loader.is-done{opacity:0;visibility:hidden;pointer-events:none}.loader-word{font-family:var(--font-serif);font-size:clamp(44px,9vw,96px);line-height:1;text-align:center}.loader-bar{width:min(280px,70vw);height:2px;background:#1f271b26;overflow:hidden}.loader-bar span{display:block;height:100%;background:var(--olive);transform-origin:left;transition:transform .25s ease}.loader-meta{display:flex;justify-content:space-between;gap:16px;font:500 11px/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase}.nav{position:fixed;inset:0 0 auto;z-index:20;height:var(--header-h);display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 var(--gutter);color:var(--ink);transition:background-color .3s ease,box-shadow .3s ease}.nav:before{content:"";position:absolute;inset:0 0 -18px;z-index:-1;pointer-events:none;background:#fbf8f29e;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);-webkit-mask-image:linear-gradient(to bottom,#000 calc(100% - 28px),transparent);mask-image:linear-gradient(to bottom,#000 calc(100% - 28px),transparent);transition:opacity .3s ease}.nav.is-solid:before{opacity:0}.nav.is-solid{background:#fbf8f2f0;box-shadow:0 1px 0 var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.brand{font-family:var(--font-serif);font-size:30px;line-height:1;text-decoration:none;letter-spacing:-.01em;white-space:nowrap}.nav-links{display:flex;align-items:center;gap:clamp(16px,2.4vw,34px)}.nav-links a:not(.btn){font:500 15px/1 var(--font-sans);text-decoration:none;padding:14px 0;border-bottom:1px solid transparent;transition:border-color .2s ease}.nav-links a:not(.btn):hover{border-color:currentColor}.nav-links a[aria-current]:not(.btn){border-color:currentColor}.nav-cta[aria-current]{box-shadow:0 0 0 2px var(--paper),0 0 0 4px var(--olive)}.nav-toggle{display:none;width:44px;height:44px;border-radius:50%;border:0;cursor:pointer;background:var(--olive);color:var(--cream);place-items:center}.icon-x,.icon-menu{position:relative;width:16px;height:12px}.icon-x:before,.icon-x:after,.icon-menu:before,.icon-menu:after{content:"";position:absolute;left:0;right:0;height:1.5px;background:currentColor}.icon-menu:before{top:2px}.icon-menu:after{bottom:2px}.icon-x:before,.icon-x:after{top:50%}.icon-x:before{transform:rotate(45deg)}.icon-x:after{transform:rotate(-45deg)}.journey{position:relative}.stage{position:sticky;top:0;height:100vh;height:100svh;margin-bottom:-100vh;margin-bottom:-100svh;overflow:hidden;background:#d9d1c0}.stage-poster,.stage-canvas{position:absolute;inset:0;width:100%;height:100%}.stage-poster{background:#d9d1c0 center 47% / cover no-repeat}.stage-canvas{display:block}.stage-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(to top,#161b12b8,#161b1233 55%,#161b1200 75%)}.track{height:var(--track)}.hero-copy{position:absolute;left:var(--gutter);right:var(--gutter);bottom:clamp(36px,9vh,96px);max-width:760px;color:var(--cream);isolation:isolate}.hero-scrim{position:absolute;inset:-34% -14% -16% -12%;z-index:-1;pointer-events:none;background:radial-gradient(closest-side,#161b128c,#161b1266 58%,#161b1200)}.hero-eyebrow{font:500 12px/1.4 var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--cream);margin-bottom:18px;text-shadow:0 1px 10px rgba(20,24,16,.5)}.hero-title{font-family:var(--font-serif);font-weight:400;font-size:clamp(42px,6.4vw,92px);line-height:.98;letter-spacing:-.015em;max-width:13ch;text-wrap:balance;text-shadow:0 2px 30px rgba(20,24,16,.35)}.hero-lead{margin-top:20px;max-width:34ch;font-size:clamp(16px,1.45vw,20px);line-height:1.5;color:var(--cream);text-shadow:0 1px 14px rgba(20,24,16,.45)}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.welcome{position:absolute;left:50%;top:64%;width:min(80vw,520px);transform:translate(-50%);text-align:center;pointer-events:none}.welcome-title{font-family:var(--font-serif);font-size:clamp(30px,3.2vw,56px);line-height:1;letter-spacing:-.02em;color:#2b3123;opacity:0;text-shadow:0 0 18px rgba(255,250,244,.95),0 0 42px rgba(255,250,244,.8)}.welcome-sub{display:inline-block;margin-top:16px;padding:6px 14px;border-radius:999px;background:#faf6eed1;font:500 11px/1.4 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:#3d4433;opacity:0}.scroll-cue{position:absolute;right:var(--gutter);bottom:clamp(36px,9vh,96px);font:500 11px/1 var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--cream-dim);writing-mode:vertical-rl}.stream-bar{position:absolute;left:0;right:0;bottom:0;height:2px;background:#f6f0e4b3;transform-origin:left;transition:transform .3s ease,opacity .6s ease}.shop{position:relative;z-index:3;background:var(--paper)}.section{padding:clamp(72px,11vw,140px) var(--gutter)}.section-tint{background:var(--cream)}.section-head{max-width:680px;margin:0 auto clamp(40px,6vw,72px);text-align:center}.eyebrow{font:500 12px/1.4 var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--olive);margin-bottom:14px}.section-title{font-family:var(--font-serif);font-weight:400;font-size:clamp(36px,4.6vw,64px);line-height:1.02;letter-spacing:-.015em;text-wrap:balance}.section-intro{margin-top:18px;font-size:clamp(16px,1.3vw,18px);line-height:1.6;color:var(--ink-soft)}.cards{display:grid;gap:clamp(20px,2.4vw,32px);max-width:1240px;margin:0 auto}.cards-3{grid-template-columns:repeat(3,minmax(0,1fr))}.cards-4{grid-template-columns:repeat(4,minmax(0,1fr))}.card{display:flex;flex-direction:column;background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:0 1px 0 var(--line),0 18px 40px -28px #1f271b59}.card-media{aspect-ratio:4 / 5;overflow:hidden;background:var(--cream-2)}.card-media img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.card:hover .card-media img{transform:scale(1.03)}.card-body{display:flex;flex-direction:column;gap:10px;padding:22px 22px 24px;flex:1}.card-kicker{font:500 11px/1.4 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:#9b4d63}.card-title{font-family:var(--font-serif);font-weight:400;font-size:clamp(26px,2.2vw,32px);line-height:1.05}.card-text{font-size:15px;line-height:1.6;color:var(--ink-soft)}.card-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:14px;border-top:1px solid var(--line)}.card-tag{font-size:13px;color:var(--olive)}.card-details{display:grid;gap:12px;margin-top:4px;padding:16px 0 2px;border-top:1px dashed var(--line);animation:rise .3s ease both}.card-details[hidden]{display:none}.card-details dt{font:500 11px/1.4 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--olive)}.card-details dd{margin:3px 0 0;font-size:15px;line-height:1.5;color:var(--ink)}.card-occasion .card-media{aspect-ratio:1 / 1}.card-occasion .card-title{font-size:clamp(24px,1.9vw,28px)}.about{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(32px,6vw,96px);align-items:center;max-width:1240px;margin:0 auto}.about-media{border-radius:var(--radius);overflow:hidden;aspect-ratio:4 / 5}.about-media img{width:100%;height:100%;object-fit:cover}.about-copy{max-width:560px}.about-copy p:not(.eyebrow){margin-top:20px;font-size:clamp(16px,1.3vw,18px);line-height:1.7;color:var(--ink-soft)}.about-points{margin-top:28px;display:grid;gap:10px}.about-points li{display:flex;align-items:center;gap:12px;font-size:15px}.about-points li:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--blush);flex:none}.contact{display:grid;place-items:center;min-height:80vh;background:var(--olive);position:relative;overflow:hidden}.contact-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.contact:before{content:"";position:absolute;inset:0;z-index:1;background:#242c1e73}.contact-card{position:relative;z-index:2;max-width:640px;text-align:center;background:var(--paper);border-radius:calc(var(--radius) + 6px);padding:clamp(32px,5vw,64px);box-shadow:0 30px 80px -30px #00000073}.contact-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:30px}.demo-note{margin-top:26px;padding-top:18px;border-top:1px solid var(--line);font:500 11px/1.6 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft)}.footer{display:grid;grid-template-columns:1fr auto;gap:28px 40px;align-items:start;padding:56px var(--gutter) 32px;background:var(--ink);color:var(--cream)}.footer-brand p{margin-top:10px;color:var(--cream-dim);font-family:var(--font-serif);font-size:20px}.footer-links{display:flex;flex-wrap:wrap;gap:4px 28px}.footer-links a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;font-size:15px;color:var(--cream-dim)}.footer-links a:hover{color:var(--cream)}.footer-meta{grid-column:1 / -1;display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 24px;padding-top:20px;border-top:1px solid rgba(246,240,228,.15);font:500 11px/1.4 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--cream-dim)}.static-hero{position:relative}.static-shot{position:relative;height:100vh;height:100svh;overflow:hidden;background:linear-gradient(160deg,#e7dfcf,#c9d4bf) center 47% / cover no-repeat}.noscript{padding:24px}.noscript img{width:100%;height:auto;display:block}@media(max-width:1080px){.cards-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){.cards-3{grid-template-columns:minmax(0,1fr);max-width:560px}.cards-3 .card-media{aspect-ratio:4 / 3}.cards-3 .card-media img{object-position:50% 38%}.about{grid-template-columns:minmax(0,1fr);justify-items:center}.about-media{width:100%;max-width:560px;aspect-ratio:4 / 3}.about-copy{width:100%}.footer{grid-template-columns:minmax(0,1fr)}}@media(max-width:760px){:root{--track: 460vh;--header-h: 62px}.nav-toggle{display:grid}.nav-links{position:absolute;top:var(--header-h);left:0;right:0;flex-direction:column;align-items:stretch;gap:0;padding:8px var(--gutter) 22px;background:#fbf8f2fa;color:var(--ink);box-shadow:0 16px 30px -20px #00000059;opacity:0;transform:translateY(-8px);pointer-events:none;visibility:hidden;transition:opacity .2s ease,transform .2s ease,visibility 0s linear .2s}.nav.is-open .nav-links{opacity:1;transform:none;pointer-events:auto;visibility:visible;transition-delay:0s}.nav-links a:not(.btn){padding:16px 0;font-size:18px;border-bottom:1px solid var(--line);text-shadow:none!important}.nav-cta{margin-top:18px;min-height:48px}.brand{font-size:26px}.hero-copy{bottom:calc(28px + env(safe-area-inset-bottom,0px))}.hero-title{font-size:clamp(38px,11vw,56px)}.hero-eyebrow-more{display:none}.stage-shade,.static-shot .stage-shade{background:linear-gradient(to top,#161b12cc,#161b124d 55%,#161b1200 78%)}.hero-actions .btn{flex:1 1 100%}.scroll-cue{display:none}.welcome{top:66%}.welcome-title{font-size:7.6vw}.welcome-sub{font-size:9px;letter-spacing:.1em}.cards-4{grid-template-columns:minmax(0,1fr);max-width:520px}.card-occasion{flex-direction:row}.card-occasion .card-media{width:38%;flex:none;aspect-ratio:auto}.card-occasion .card-body{padding:16px 18px}.contact{min-height:0}.contact-actions .btn{flex:1 1 100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important}}.hero-invite{margin-top:14px;font-family:var(--font-serif);font-style:italic;font-size:clamp(20px,2vw,28px);color:var(--blush-soft);text-shadow:0 1px 14px rgba(20,24,16,.5)}.btn-hero{min-height:54px;padding:0 30px;font-size:16px;box-shadow:0 10px 30px -10px #00000073}.link-btn{appearance:none;border:0;background:none;padding:8px 4px;min-height:32px;cursor:pointer;font:600 13px/1 var(--font-sans);color:var(--olive-deep);text-decoration:underline;text-underline-offset:3px}.btn-text{background:transparent;color:var(--olive-deep);text-decoration:underline;text-underline-offset:4px;padding:0 14px}.btn-text:hover{color:var(--ink)}.finder{background:radial-gradient(60% 40% at 15% 10%,rgba(255,255,255,.9),transparent 70%),radial-gradient(50% 35% at 90% 30%,rgba(243,215,221,.45),transparent 70%),var(--cream)}.finder .section-head{margin-bottom:clamp(28px,4vw,44px)}.finder-top{scroll-margin-top:calc(var(--header-h) + 16px);display:grid;justify-items:center;gap:14px;margin-bottom:clamp(24px,4vw,40px)}.finder-top .stepper{margin-bottom:0;width:100%}.finder-occasion{display:inline-flex;align-items:center;gap:10px;margin-top:18px;padding:4px 8px 4px 16px;border-radius:999px;background:#fff;box-shadow:0 1px 0 var(--line);font-size:14px}.finder-picks{display:none}.stepper{list-style:none;padding:0;display:flex;justify-content:center;gap:8px;max-width:900px;margin:0 auto clamp(24px,4vw,40px)}.stepper li{flex:1 1 0;min-width:0}.stepper button{width:100%;display:flex;align-items:center;gap:10px;padding:10px 12px;min-height:52px;border:1px solid var(--line);border-radius:14px;background:#ffffffb3;cursor:pointer;font:500 14px/1.2 var(--font-sans);color:var(--ink);text-align:left}.stepper button:disabled{cursor:default;opacity:.5}.stepper-num{flex:none;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--cream-2);font-weight:600;font-size:13px}.stepper-text{display:grid;min-width:0}.stepper-text small{font-size:12px;color:var(--olive);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stepper .is-done .stepper-num{background:var(--olive);color:var(--cream)}.stepper .is-current button{border-color:var(--olive);background:#fff;box-shadow:0 8px 24px -16px #1f271b80}.stepper .is-current .stepper-num{background:var(--blush);color:#fff}.finder-step{border:0;margin:0 auto;padding:0;max-width:1180px;min-width:0}.finder-step legend{display:block;width:100%;padding:0;margin:0 0 22px;text-align:center;font-family:var(--font-serif);font-size:clamp(28px,3.2vw,44px);line-height:1.1}.finder-step legend:focus{outline:none}.finder-count{display:block;margin-bottom:8px;font:500 12px/1 var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--olive)}.options{display:grid;gap:clamp(12px,1.6vw,20px);grid-template-columns:repeat(3,minmax(0,1fr))}.options-5{grid-template-columns:repeat(5,minmax(0,1fr))}.option{position:relative;display:flex;flex-direction:column;gap:6px;padding:12px 12px 18px;cursor:pointer;border:1.5px solid transparent;border-radius:20px;background:#fff;box-shadow:0 1px 0 var(--line),0 16px 40px -30px #1f271b73;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}.option:hover{transform:translateY(-2px)}.option input{position:absolute;opacity:0;pointer-events:none}.option:has(input:focus-visible){outline:3px solid var(--olive-deep);outline-offset:3px}.option.is-selected{border-color:var(--olive);box-shadow:0 0 0 3px #5e6a4626,0 18px 40px -26px #1f271b8c}.option.is-selected:after{content:"✓";position:absolute;top:12px;right:12px;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--olive);color:var(--cream);font-size:14px;font-weight:700}.option-art{display:block;aspect-ratio:1 / 1;border-radius:14px;overflow:hidden;background:linear-gradient(180deg,#f6efe6,#ece3d6);margin-bottom:8px}.option-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 32%}.size-icon{display:block;width:100%;height:100%}.size-icon .ruler,.size-icon .tick{stroke:#1f271b59;stroke-width:1}.size-icon text{font:500 7px var(--font-mono);fill:#1f271b8c}.size-icon .shape{fill:#5e6a4624;stroke:var(--olive);stroke-width:1.2}.size-icon .shape-dome{fill:#d696a052;stroke:#c5848f}.option.is-selected .size-icon .shape-dome{fill:#d696a08c}.option-label{font-family:var(--font-serif);font-size:clamp(22px,1.9vw,28px);line-height:1.05;padding:0 6px}.option-hint{font-size:14px;line-height:1.4;color:var(--ink-soft);padding:0 6px}.finder-nav{display:flex;justify-content:center;gap:12px;margin-top:clamp(24px,3vw,36px)}.finder-nav .btn{min-width:150px}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.result{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:start;max-width:1180px;margin:0 auto}.result-art{position:sticky;top:calc(var(--header-h) + 20px);margin:0}.result-frame{aspect-ratio:4 / 5;border-radius:28px;overflow:hidden;background:#ece4d8;box-shadow:0 30px 70px -40px #1f271b8c}.result-photo{display:block;width:100%;height:100%;object-fit:cover;opacity:0}.result-frame.is-loaded .result-photo{animation:develop 1.15s cubic-bezier(.2,.7,.2,1) both}@keyframes develop{0%{opacity:0;transform:scale(1.045);filter:blur(10px) saturate(.4) brightness(1.08)}55%{opacity:1}to{opacity:1;transform:none;filter:none}}.result-art figcaption{display:grid;gap:6px;margin-top:14px;padding:0 6px}.size-scale{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--ink-soft)}.size-scale strong{color:var(--ink);font-weight:600}.size-bars{display:inline-flex;align-items:flex-end;gap:3px;height:20px;flex:none}.size-bars i{width:7px;border-radius:2px;background:#1f271b29}.size-bars i:nth-child(1){height:45%}.size-bars i:nth-child(2){height:72%}.size-bars i:nth-child(3){height:100%}.size-bars i.is-on{background:var(--olive)}.result-note{font-size:12.5px;line-height:1.45;color:var(--ink-soft)}.result-copy{animation:rise .6s ease both .15s}.result-name{font-family:var(--font-serif);font-weight:400;font-size:clamp(40px,5vw,72px);line-height:1;letter-spacing:-.02em}.result-name:focus{outline:none}.result-desc{margin-top:18px;font-size:clamp(16px,1.3vw,18px);line-height:1.65;color:var(--ink-soft)}.result-choices{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.result-choices li{display:inline-flex;align-items:center;gap:8px;padding:6px 8px 6px 14px;border-radius:999px;background:#fff;box-shadow:0 1px 0 var(--line);font-size:14px}.result-choices li>span{color:var(--ink-soft)}.result-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}.result-grid h4{margin:0 0 12px;font:500 12px/1 var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--olive)}.flower-list{display:grid;gap:6px;font-size:15px}.flower-list li:before{content:"✿ ";color:var(--blush)}.result-size{margin-top:12px;font-size:14px;color:var(--ink-soft)}.palette{display:grid;gap:8px;font-size:14px}.palette li{display:flex;align-items:center;gap:10px}.swatch{width:26px;height:26px;border-radius:50%;box-shadow:inset 0 0 0 1px #00000014;flex:none}.dedication{display:grid;gap:8px;margin-top:26px;padding:18px 20px;border-radius:16px;background:#fffdf9;box-shadow:0 1px 0 var(--line),0 12px 30px -24px #1f271b80}.dedication>span{font:500 12px/1 var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--olive)}.dedication textarea{width:100%;resize:vertical;border:0;border-bottom:1px dashed rgba(31,39,27,.25);background:transparent;font-family:var(--font-serif);font-style:italic;font-size:24px;line-height:1.3;color:var(--ink);padding:4px 0}.dedication textarea:focus{outline:none;border-bottom-style:solid;border-bottom-color:var(--olive-deep);box-shadow:0 2px 0 var(--olive-deep)}.dedication small{justify-self:end;font-size:12px;color:var(--ink-soft)}.result-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:24px}.result-hint{margin-top:10px;font-size:13px;line-height:1.5;color:var(--ink-soft)}.result-status{display:grid;gap:10px;margin-top:16px}.result-status:empty{margin-top:0}.confirm{display:flex;align-items:center;gap:14px;padding:12px 16px;border-radius:14px;background:#5e6a461a;color:var(--olive-deep);font-size:14px;line-height:1.45;font-weight:500;animation:rise .3s ease both}.confirm>span[aria-hidden],.confirm p>span[aria-hidden]{font-weight:700}.confirm a{color:var(--olive-deep);font-weight:600;text-underline-offset:3px}.confirm-card img{flex:none;width:54px;height:auto;border-radius:6px;box-shadow:0 6px 16px -8px #1f271b99}.confirm-card strong{overflow-wrap:anywhere}.confirm-error{background:#9b4d631a;color:#7d3a4d}.manual-copy{display:grid;gap:10px;margin-top:12px;padding:16px;border-radius:14px;background:#fff;box-shadow:0 1px 0 var(--line);font-size:14px;line-height:1.5;color:var(--ink-soft)}.manual-copy textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:10px 12px;font:400 13px/1.5 var(--font-mono);color:var(--ink);background:var(--paper);resize:vertical}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.card-cta{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;min-height:44px;margin-top:auto;padding:0;border:0;background:none;cursor:pointer;font:600 14px/1 var(--font-sans);color:var(--olive-deep)}.card-foot .card-cta{margin-top:0}.card-cta:hover{text-decoration:underline}@media(max-width:1080px){.options-5{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:900px){.result{grid-template-columns:minmax(0,1fr)}.result-art{position:relative;top:0;max-width:520px;width:100%;margin:0 auto}}@media(max-width:760px){.stepper{gap:6px}.stepper button{flex-direction:column;justify-content:center;gap:4px;padding:8px 4px;text-align:center;font-size:12px}.stepper-text small{display:none}.finder-picks{display:flex;align-items:center;gap:10px;max-width:100%;margin:-2px 0 0;padding:6px 14px;border-radius:999px;background:#ffffffb3;font-size:14px;font-weight:600;color:var(--ink)}.finder-picks span{font:500 11px/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--olive);flex:none}.options,.options-5{grid-template-columns:repeat(2,minmax(0,1fr))}.options-3{grid-template-columns:minmax(0,1fr)}.options-3 .option{display:grid;grid-template-columns:96px 1fr;grid-template-rows:auto auto;column-gap:14px;align-items:center;padding:10px}.options-3 .option-art{grid-row:span 2;margin:0}.options-3 .option-label{align-self:end}.options-3 .option-hint{align-self:start}.options-5 .option:last-child{grid-column:1 / -1}.options-5 .option-art{aspect-ratio:4 / 3}.options-5 .option:last-child .option-art{aspect-ratio:2.4 / 1}.option-label{font-size:22px}.finder-nav .btn{flex:1 1 0;min-width:0}.result-grid{grid-template-columns:1fr}.result-actions .btn{flex:1 1 100%}.result-actions .btn-text{min-height:44px}.hero-invite{font-size:20px}.card-occasion .card-body{gap:6px}}@media(prefers-reduced-motion:reduce){.result-frame .result-photo,.result-copy,.confirm,.card-details{animation:none!important}.result-frame.is-loaded .result-photo{opacity:1}.option:hover{transform:none}}
