:root{--paper:#f4efe6;--paper-2:#ebe4d7;--ink:#2e1f19;--soft:#7a6a5d;--line:#d9cfbf;--accent:#7d2e2c;--on-accent:#f8f3eb;--halo:#7d2e2c17;--object-filter:drop-shadow(0 16px 18px #2e1f194d);--serif:"Cormorant Garamond", "Iowan Old Style", Georgia, serif;--sans:"Hanken Grotesk", system-ui, -apple-system, "Segoe UI", sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--paper:#1c1613;--paper-2:#262019;--ink:#eee5d8;--soft:#a7978a;--line:#3a3029;--accent:#d99a8a;--on-accent:#1c1613;--halo:#eedec833;--object-filter:brightness(1.45) contrast(1.05) drop-shadow(0 16px 18px #0000008c);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);font:400 1rem/1.55 var(--sans);-webkit-font-smoothing:antialiased;margin:0}::selection{background:var(--accent);color:var(--on-accent)}.page{max-width:62rem;margin:0 auto;padding-inline:clamp(1.25rem,5vw,2.5rem)}main,footer{max-width:52rem;margin-inline:auto}.masthead{grid-template-columns:1fr;align-items:center;column-gap:2rem;padding-block:clamp(2.5rem,9vw,5.5rem) clamp(2.5rem,7vw,4.5rem);display:grid}.masthead>*{grid-column:1}.eyebrow{border-bottom:1px solid var(--line);letter-spacing:.14em;text-transform:uppercase;color:var(--soft);justify-content:space-between;gap:1rem;margin:0 0 clamp(1.5rem,5vw,3rem);padding-bottom:.9rem;font-size:.75rem;font-weight:500;display:flex}h1{font:500 clamp(3rem, 11vw, 6rem)/.98 var(--serif);letter-spacing:-.015em;text-wrap:balance;margin:0}h1 em{color:var(--accent);padding-right:.06em;font-style:italic}.lead{max-width:34rem;font:italic 500 clamp(1.25rem, 3.2vw, 1.5rem)/1.4 var(--serif);color:var(--soft);margin:1.5rem 0 0}.stage{pointer-events:none;height:clamp(15rem,62vw,22rem);margin-bottom:1.5rem;position:relative}.float{will-change:transform;position:absolute}.bob{width:100%}.f1{z-index:3;width:44%;top:2%;right:2%}.f2{z-index:2;width:27%;top:18%;left:6%}.f3{z-index:4;width:22%;bottom:8%;right:34%}.f4{z-index:1;width:18%;top:0;left:36%}@media (width>=56rem){.masthead{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}.eyebrow{grid-column:1/-1}.stage{grid-area:2/2/span 3;height:30rem;margin:0}}.gate{border-left:2px solid var(--accent);background:var(--paper-2);border-radius:0 10px 10px 0;max-width:34rem;margin-top:2.25rem;padding:1.1rem 1.25rem}.gate p{color:var(--soft);margin:0;font-size:.9375rem}.gate p+.row{margin-top:.85rem}.gate label{color:var(--soft);margin-bottom:.6rem;font-size:.9375rem;display:block}.row{flex-wrap:wrap;align-items:center;gap:.5rem .75rem;display:flex}input{font:inherit;border:1px solid var(--line);background:var(--paper);min-width:0;min-height:2.6rem;color:var(--ink);border-radius:999px;flex:10rem;padding:0 1rem}input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.book{--t:10px;perspective:900px}.book-hero{--t:18px;width:100%}.book-row{width:4.4rem}.book-inner{transform-style:preserve-3d;transition:transform .8s cubic-bezier(.2,.7,.2,1);position:relative;transform:rotateY(26deg)}.book-inner img{aspect-ratio:2/3;object-fit:cover;border-radius:1px 3px 3px 1px;width:100%;display:block;box-shadow:14px 18px 28px -10px #2e1f1973}.book-inner:before{content:"";width:var(--t);transform-origin:0;background:linear-gradient(90deg,#2a1d17,#4a3529 60%,#2a1d17);height:100%;position:absolute;top:0;left:0;transform:rotateY(90deg)}.book-inner:after{content:"";width:var(--t);transform-origin:0;background:repeating-linear-gradient(90deg,#f6f0e4 0 1px,#ddd2bf 1px 2px);height:97%;position:absolute;top:1.5%;left:100%;transform:rotateY(90deg)}.gift:hover .book-inner,.gift:focus-within .book-inner{transform:rotateY(-16deg)translateY(-4px)}.object{place-items:center;display:grid}.object img{object-fit:contain;max-width:100%;max-height:100%;filter:var(--object-filter);transition:transform .7s cubic-bezier(.2,.7,.2,1);display:block}.object-hero{width:100%}.object{isolation:isolate;position:relative}.object:before{content:"";z-index:-1;background:radial-gradient(closest-side, var(--halo), transparent);border-radius:50%;position:absolute;inset:-6%}.object img{position:relative}.object-row{width:5.4rem;height:6.4rem}.gift:hover .object img,.gift:focus-within .object img{transform:translateY(-6px)rotate(-4deg)}.placeholder{aspect-ratio:2/3;background:var(--paper-2);border:1px solid var(--line);width:4.4rem;font:italic 500 2.4rem/1 var(--serif);color:var(--accent);border-radius:6px;place-items:center;display:grid}.group{margin-top:clamp(2.5rem,7vw,4rem)}.group h2{border-bottom:1px solid var(--ink);font:600 .75rem/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;margin:0;padding-bottom:.7rem}.gifts{margin:0;padding:0;list-style:none}.gift{border-bottom:1px solid var(--line);grid-template-columns:5.4rem 1fr;align-items:center;gap:.4rem 1.25rem;padding-block:1.6rem;display:grid}.visual{place-items:center;transition:filter .4s,opacity .4s;display:grid}.gift.taken .visual{filter:grayscale();opacity:.55}.gift.taken .info{opacity:.6}.num{font:500 .75rem/1 var(--sans);font-variant-numeric:tabular-nums;color:var(--soft);letter-spacing:.08em;margin-bottom:.35rem;display:block}.info{min-width:0;transition:opacity .4s}h3{font:500 clamp(1.5rem, 4.2vw, 1.875rem)/1.15 var(--serif);letter-spacing:-.005em;text-wrap:balance;margin:0}.by{font:italic 500 1.125rem/1.3 var(--serif);color:var(--soft);margin:.2rem 0 0}.note{color:var(--soft);max-width:32rem;margin:.5rem 0 0;font-size:.9375rem}.actions{flex-wrap:wrap;grid-column:2;align-items:center;gap:.6rem 1.25rem;margin-top:.4rem;display:flex}.actions a{color:var(--ink);text-decoration:underline;-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line);text-underline-offset:.3em;font-size:.9375rem;font-weight:500;text-decoration-thickness:1px;transition:text-decoration-color .2s,color .2s}.actions a:hover{color:var(--accent);text-decoration-color:currentColor}.status{color:var(--soft);font-size:.9375rem;font-style:italic}.status.mine{color:var(--accent);font-style:normal;font-weight:500}@media (width>=44rem){.gift{grid-template-columns:7rem 1fr auto;column-gap:1.75rem}.book-row{width:5.4rem}.object-row{width:6.6rem;height:7.4rem}.placeholder{width:5.4rem}.actions{text-align:right;grid-column:3;justify-content:flex-end;max-width:15rem;margin-top:0}}button{font:500 .9375rem/1 var(--sans);cursor:pointer;border:1px solid var(--ink);background:var(--ink);min-height:2.6rem;color:var(--paper);border-radius:999px;padding:0 1.25rem;transition:background .2s,color .2s,border-color .2s}button:hover{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}button.ghost{color:var(--ink);border-color:var(--line);background:0 0}button.ghost:hover{border-color:var(--accent);color:var(--accent);background:0 0}button.small{min-height:2.2rem;padding:0 1rem;font-size:.875rem}button.link{min-height:0;color:var(--soft);font-weight:400;font-size:inherit;text-underline-offset:.25em;background:0 0;border:0;padding:0;text-decoration:underline}button.link:hover{color:var(--accent);background:0 0}button:disabled{opacity:.5;cursor:default}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}footer{border-top:1px solid var(--line);text-align:center;color:var(--soft);margin-top:clamp(4rem,10vw,6.5rem);padding-block:2.5rem 3.5rem;font-size:.9375rem}footer p{margin:0}.sign{font:italic 500 1.75rem/1.2 var(--serif);color:var(--ink);margin-bottom:.4rem}@media (prefers-reduced-motion:reduce){*{transition:none!important}}
