:root{--night:#121512;--paper:#f5f0e6;--gold:#dec596;--ink:#292c25;--muted:#797b70;--line:#dcd6c9;--serif:Georgia,'Times New Roman','Songti SC',serif;--sans:Arial,'PingFang SC',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.7 var(--sans)}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}a{color:inherit;text-decoration:none}button{border:0;background:none}button:disabled{cursor:not-allowed;opacity:.55}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.1}h2{font-size:clamp(34px,3.6vw,56px);letter-spacing:-1.7px}em{font-weight:400;color:#9e8356}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid #af8c52;outline-offset:5px}.skip{position:fixed;top:-80px;left:15px;background:var(--paper);padding:12px;z-index:100}.skip:focus{top:10px}.announcement{text-align:center;background:#121512;color:#e9dfcb;padding:8px 12px;font-size:9px;letter-spacing:2.2px}header{height:88px;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:0 5.5%;background:var(--night);color:var(--paper);position:sticky;top:0;z-index:20;border-bottom:1px solid #ffffff13}.brand{display:flex;align-items:center;gap:12px;font:20px/1.25 var(--serif);white-space:nowrap}.brand-symbol{display:block;flex-shrink:0;width:1em;height:1em;color:var(--gold);font-size:56px;line-height:1}.brand small{display:block;letter-spacing:2.6px;font:8px/1.8 var(--sans);margin-top:5px}header nav{display:flex;gap:32px;font-size:12px}header nav a:hover{color:var(--gold)}.header-end{display:flex;align-items:center;gap:24px;font-size:11px}.bag{display:flex;align-items:center;gap:8px}.bag svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.2}#menu{display:none}.hero{height:clamp(570px,48vw,760px);background:#080a09;position:relative;color:var(--paper);overflow:hidden}.hero>picture{position:absolute;inset:0}.hero>picture img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#080a09d9 0%,#080a0970 38%,transparent 70%)}.hero-copy{position:relative;z-index:1;padding:100px 0 70px 7%;max-width:780px}.eyebrow{font:9px/1.7 var(--sans);letter-spacing:2.2px;color:#907343}.hero .eyebrow{color:#dec596}.hero h1{font-size:clamp(53px,5.2vw,81px);letter-spacing:-2.7px;line-height:1.09;margin-top:22px}.hero h1 em{color:#e4cb9f}.hero-desc{font:17px/1.8 var(--serif);max-width:390px;color:#dfd9cd;margin-top:25px}.actions{display:flex;gap:28px;align-items:center;margin-top:31px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 26px;font-size:12px;letter-spacing:.25px;border:1px solid transparent;border-radius:3px;cursor:pointer;box-shadow:0 1px 2px #0000002e,0 3px 10px #0000003d;transition:background .2s,transform .2s,box-shadow .2s}.button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 2px 4px #00000033,0 7px 18px #00000047}
.button:active:not(:disabled){transform:translateY(0);box-shadow:0 1px 2px #0000002e}.gold{background:var(--gold);color:#282419;box-shadow:0 1px 2px #6b56203d,0 4px 12px #6b562052}.dark{background:#121512;color:var(--paper);box-shadow:0 1px 2px #00000047,0 4px 14px #0000005c}.outline{border-color:#d9caa85c;color:var(--paper);box-shadow:0 2px 10px #0000003d}.quiet-link{font:14px var(--serif);border-bottom:1px solid #d0c4ae8c;padding-bottom:5px}.hero-foot{font-size:8px;letter-spacing:2.2px;color:#c9c2b2;margin-top:55px}.hero-index{position:absolute;right:5.5%;bottom:28px;letter-spacing:2px;font-size:8px;color:#ccc4b4}.promise-bar{display:flex;justify-content:center;gap:9%;background:#eae5d9;border-bottom:1px solid var(--line);padding:18px 5%;font:12px var(--serif);color:#686453}.section{padding:85px 7%}.section-top{display:flex;justify-content:space-between;gap:30px;align-items:flex-end;margin-bottom:38px}.section-top h2{margin-top:15px}.section-note{max-width:270px;color:#76756b;font:16px/1.8 var(--serif)}.gift-feature{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);background:#fffaf0;border:1px solid var(--line)}.gift-image{position:relative;min-height:480px;background:#e3dccb;overflow:hidden}.gift-image img{width:100%;height:100%;position:absolute;object-fit:cover}.image-caption{position:absolute;bottom:15px;left:15px;right:15px;text-align:center;font-size:8px;letter-spacing:1px;color:#fff8e8;text-shadow:0 1px 5px #000;background:#15181499;padding:6px}.gift-copy{padding:44px 44px 35px}.gift-copy h3{font-size:35px;margin:14px 0 18px;letter-spacing:-.9px}.gift-copy>p:not(.eyebrow):not(.fine){font:16px/1.8 var(--serif);color:#787265}.gift-details{list-style:none;margin:22px 0;padding:0;border-top:1px solid var(--line)}.gift-details li{padding:10px 0;border-bottom:1px solid var(--line);font-size:12px}.gift-details li:before{content:'✧';color:#ac8c58;margin-right:12px}.price-line{display:flex;gap:15px;justify-content:space-between;align-items:center;margin:25px 0 20px}.price-line strong{font:21px var(--serif)}.price-line span{font-size:7px;letter-spacing:1.4px;color:#8a795a}.gift-copy>.button{width:100%}.fine{font-size:10px;color:#848073;line-height:1.65;margin-top:14px}.personal{background:#eae5d8;display:grid;grid-template-columns:.9fr 1.25fr;gap:8%;align-items:center}.personal h2{margin:16px 0 25px}.personal>div>p:not(.eyebrow){font:16px/1.8 var(--serif);max-width:350px;color:#7b7364}.name-label{display:block;font-size:9px;letter-spacing:1.5px;color:#8d7652;margin-top:28px}.quick-input{display:flex;align-items:center;max-width:330px;border-bottom:1px solid #a89473}.quick-input input{width:100%;min-width:0;font:32px var(--serif);background:none;border:0;padding:12px 0;color:var(--ink)}.quick-input span{font-size:28px;color:#a4875a}.text-button{font:15px var(--serif);border-bottom:1px solid #a89473;margin-top:25px;padding:8px 0}.certificate-stage{position:relative}#quick-certificate{transform:rotate(-3deg);box-shadow:8px 20px 40px #3e2e192b;background:#f8f0df}#quick-certificate{aspect-ratio:1320/915}#quick-certificate img,#quick-certificate svg{width:100%;height:auto;display:block}.paper-note{position:absolute;right:-10px;bottom:22px;padding:9px 19px;background:#fffaf0;box-shadow:0 3px 10px #3332;transform:rotate(4deg);font:italic 20px var(--serif);color:#937649}.certificate-stage .fine{text-align:center;margin-top:30px;font-size:8px;letter-spacing:1px}.occasion-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:23px}.occasion{padding:0;text-align:left}.occasion img{width:100%;height:200px;object-fit:cover;display:block;filter:saturate(.8);transition:filter .3s}.occasion:hover img{filter:saturate(1.2)}.occasion .eyebrow{display:block;margin-top:20px;font-size:8px}.occasion-title{display:block;font:21px/1.3 var(--serif);margin-top:6px}.how{background:#efeade;text-align:center;border-top:1px solid var(--line)}.how h2{margin-top:15px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:45px}.steps article{position:relative;padding:0 20px}.steps article+article{border-left:1px solid #cfc5b0}.steps article>span{font:italic 28px var(--serif);color:#ae9063}.steps h3{font-size:25px;margin:16px 0}.steps p{font-size:12px;color:#7b776b;max-width:265px;margin:auto}.registry-banner{display:flex;gap:35px;align-items:center;background:#121512;color:var(--paper);padding-top:55px;padding-bottom:55px}.registry-banner h2{font-size:27px;letter-spacing:-.7px;margin:0}.registry-banner p:not(.eyebrow){font:14px/1.7 var(--serif);color:#c6c0b3}.registry-banner .eyebrow{color:#c6b184}.registry-banner>.button{margin-left:auto;flex-shrink:0}.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px}.faq h2{font-size:42px}.faq details{border-bottom:1px solid var(--line);padding:18px 0}.faq details:first-child{padding-top:0}.faq summary{font:19px/1.5 var(--serif);cursor:pointer}.faq details p{font-size:12px;max-width:550px;color:#7c776d;margin-top:16px}.closing{text-align:center;background:#e9e1d1}.closing h2{margin:19px 0 30px;font-size:43px}.footer-top{display:flex;align-items:center;gap:35px;margin-bottom:28px}.footer-top .brand{margin-right:auto}.footer-top>a:not(.brand),.footer-top>button{font-size:11px}footer.section{padding-top:48px;padding-bottom:27px}.copyright{border-top:1px solid var(--line);margin-top:25px;padding-top:18px;font-size:9px;color:#8d887d}.wide{width:100%}dialog{border:1px solid var(--line);padding:0;background:var(--paper);color:var(--ink);max-height:90dvh;border-radius:5px;box-shadow:0 20px 100px #0006}dialog::backdrop{background:#070c09b8;backdrop-filter:blur(5px)}body.modal-open{overflow:hidden}.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 26px;border-bottom:1px solid var(--line)}.dialog-top button{font-size:28px;line-height:1;min-width:40px;min-height:40px}.dialog-top h2{font-size:28px;letter-spacing:-.5px}#designer{width:min(1120px,95vw)}.designer-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}.preview-side{background:#e7e0d1;display:flex;flex-direction:column;justify-content:center;padding:35px;text-align:center}.preview-side svg{width:100%;height:auto;display:block;box-shadow:5px 10px 25px #3f2c1929}.preview-side .fine{font-size:8px;letter-spacing:1.4px}#gift-form{padding:28px 34px}#gift-form h2{margin:7px 0 24px;font-size:38px}#gift-form label:not(.check){display:block;font-size:11px;margin:12px 0 5px}input,textarea{color:var(--ink)}#gift-form input:not([type=checkbox]),textarea{width:100%;border:1px solid #d2cab9;background:#fffaf1;border-radius:2px;padding:9px 10px;min-height:40px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-row>div{min-width:0}.message-tools{display:flex;justify-content:space-between;font-size:10px;color:#8b7656}.message-tools button{padding:0;border-bottom:1px solid #cbb995}.check{display:flex;gap:10px;align-items:flex-start;font-size:10px;margin:22px 0}.check input{margin:3px 0;width:15px;height:15px;flex-shrink:0;accent-color:#24261f}#form-error{color:#9f362c;font-size:12px}#bag-dialog{width:min(550px,94vw)}#bag-content,#checkout-area{padding:24px 28px}.bag-item{display:grid;grid-template-columns:90px 1fr;gap:20px;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:20px}.bag-item img{display:block;width:90px;height:auto;object-fit:contain;align-self:start}.bag-item h3{font-size:23px}.bag-item p{font-size:12px;color:#847b6c;margin:8px 0;overflow-wrap:anywhere}.bag-item button{padding:0;margin-right:16px;text-decoration:underline;font-size:11px}.empty-bag{text-align:center;padding:25px 0}.empty-bag h3{font-size:29px;margin-bottom:15px}.empty-bag .button{margin-top:20px}#checkout-area{background:#eae4d6}#checkout-note{font-size:12px;margin-bottom:15px;color:#716b5e}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);opacity:0;pointer-events:none;z-index:100;background:#121512;color:#fff;padding:12px 20px;max-width:90%;transition:.2s;font-size:12px}#toast.visible{opacity:1;transform:translate(-50%,0)}
@media(min-width:1500px){.section{padding-left:max(7%,calc((100vw - 1320px)/2));padding-right:max(7%,calc((100vw - 1320px)/2))}.hero-copy{padding-left:max(7%,calc((100vw - 1320px)/2))}}
@media(max-width:1050px){header{padding:0 4%;gap:15px}.brand{font-size:17px}header nav{gap:20px}.header-end{gap:15px}.hero-copy{padding-top:85px}.section{padding:65px 5%}.gift-copy{padding:30px}.gift-image{min-height:450px}.occasion-grid{gap:15px}.occasion-title{font-size:18px}.occasion img{height:150px}.registry-banner{gap:20px}.footer-top{flex-wrap:wrap;gap:20px}.footer-top .brand{flex-basis:100%}.steps{gap:20px}.steps article{padding:0 10px}}
@media(max-width:720px){.announcement{font-size:7px;letter-spacing:1.5px;padding:7px}header{height:72px;padding:0 5%}.brand{font-size:15px;gap:6px}.brand-symbol{font-size:37px}.brand small{font-size:6px;letter-spacing:1.6px}.header-end{gap:14px}#menu{display:block;font-size:19px;padding:0}header nav{display:none;position:absolute;top:72px;left:0;right:0;padding:22px 6%;background:#171a17;border-bottom:1px solid #ffffff22}header nav.open{display:flex;flex-direction:column;gap:18px}.hero{height:660px}.hero>picture img{object-position:62% center;opacity:.7}.hero-shade{background:linear-gradient(180deg,#080a09aa,#080a0933 60%,#080a09a6)}.hero-copy{padding:65px 7% 40px;max-width:100%}.hero h1{font-size:55px;letter-spacing:-2px}.hero .eyebrow{font-size:8px;letter-spacing:1.6px}.hero-desc{font-size:16px;max-width:290px}.hero-foot{margin-top:36px;font-size:7px;letter-spacing:1.7px}.actions{gap:22px;flex-wrap:wrap}.hero-index{font-size:7px}.promise-bar{gap:15px;padding:15px 5%;font-size:10px;align-items:center;text-align:center}.promise-bar span{flex:1}.section{padding:55px 6%}.section-top{display:block;margin-bottom:25px}.section-note{font-size:14px;margin-top:20px;max-width:100%}.gift-feature{grid-template-columns:1fr}.gift-image{min-height:0}.gift-copy{padding:26px}.gift-copy h3{font-size:30px}.gift-copy>p:not(.eyebrow):not(.fine){font-size:15px}.personal{grid-template-columns:1fr;gap:45px}.personal h2{font-size:42px}.certificate-stage{padding:0 5px}.paper-note{font-size:16px;right:0}.occasion-grid{grid-template-columns:1fr 1fr;gap:28px 14px}.occasion img{height:145px}.occasion-title{font-size:19px}.occasion .eyebrow{margin-top:12px;font-size:7px}.how h2{font-size:40px}.steps{grid-template-columns:1fr;gap:28px;margin-top:30px}.steps article+article{border-left:0;border-top:1px solid var(--line);padding-top:28px}.steps h3{margin:10px 0}.steps p{max-width:290px}.registry-banner{display:block}.registry-banner h2{font-size:33px}.registry-banner .button{margin:25px 0 0}.faq{grid-template-columns:1fr;gap:28px}.faq h2{font-size:37px}.faq summary{font-size:18px}.closing h2{font-size:36px;line-height:1.2}.footer-top{gap:22px}.footer-top .brand{font-size:19px}.designer-layout{grid-template-columns:minmax(0,1fr)}.preview-side{padding:20px}.preview-side>div{max-width:560px;margin:auto}#gift-form{padding:23px}.dialog-top{padding:10px 18px}.dialog-top .eyebrow{font-size:7px}#gift-form h2{font-size:34px;margin-bottom:20px}dialog{max-height:94dvh}.form-row{gap:10px}#bag-content,#checkout-area{padding:22px}.button{min-height:48px}.fine{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* Compact product layouts use the photograph's intrinsic proportions.
   Grid items must shrink before they can force the viewport wider. */
.gift-feature>*{min-width:0}
.preview-side>div{width:100%;min-width:0}
#gift-form input,#gift-form textarea{min-width:0;max-width:100%}
@media(max-width:960px){
 .gift-feature{grid-template-columns:minmax(0,1fr)}
 .gift-image{min-height:0}
 .gift-image img{position:static;display:block;width:100%;height:auto}
 .designer-layout{grid-template-columns:minmax(0,1fr)}
 .preview-side>div{max-width:560px;margin:auto}
}

/* Keep the gift editor and header usable on narrow touch screens. */
.designer-layout>*,.bag-item>div{min-width:0}.bag-item h3{overflow-wrap:anywhere}
@media(max-width:720px){header{gap:12px}.header-end{gap:8px}.header-end>button{min-height:44px;min-width:36px}#menu{width:36px}#designer{width:calc(100vw - 20px);max-width:calc(100vw - 20px)}#gift-form input:not([type=checkbox]),#gift-form textarea{font-size:16px}.bag-item{grid-template-columns:80px minmax(0,1fr);gap:16px}.bag-item img{width:80px;height:auto}}
@media(max-width:380px){header{padding:0 4%;gap:8px}.brand{font-size:13px}.brand-symbol{font-size:30px}.header-end{gap:4px}.form-row{grid-template-columns:minmax(0,1fr)}.hero h1{font-size:48px}.hero-copy{padding-top:52px}.dialog-top{gap:10px}.dialog-top .eyebrow{letter-spacing:1px}.preview-side{padding:18px}#gift-form{padding:20px}.bag-item{grid-template-columns:65px minmax(0,1fr);gap:12px}.bag-item img{width:65px;height:auto}}
#country{display:block;width:100%;padding:12px;background:#fffaf1;border:1px solid var(--line);font:inherit;color:var(--ink);margin-top:8px}.order-card{max-width:680px;margin:90px auto;padding:50px 35px;text-align:center;background:#fffaf0;border:1px solid var(--line)}.order-card h1{font-size:40px;margin:20px 0}.order-card p{margin:15px 0 30px}.order-card .button{margin:8px}
@media(max-width:720px){.hero-shade{background:linear-gradient(90deg,#080a09b8,#080a0960),linear-gradient(180deg,transparent 55%,#080a0966)}.dialog-top{position:sticky;top:0;background:var(--paper);z-index:2}}
.footer-services{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:30px 0;margin:8px 0 25px}.footer-service{min-width:0}.footer-service+.footer-service{border-left:1px solid var(--line);padding-left:22px}.footer-service-icon{display:block;color:#9e8356;font:24px/1 var(--serif);margin-bottom:12px}.footer-service h3{font:18px/1.25 var(--serif);margin-bottom:7px}.footer-service p,.footer-service a{display:block;color:#79766d;font-size:11px;line-height:1.6;overflow-wrap:anywhere}.footer-service a{text-decoration:underline;text-underline-offset:3px}@media(max-width:720px){.footer-services{grid-template-columns:1fr 1fr;gap:24px 14px}.footer-service+.footer-service{border-left:0;padding-left:0}.footer-service:nth-child(odd){border-right:1px solid var(--line);padding-right:14px}.footer-service h3{font-size:16px}}
/* Live register feed: the newest published names, scrolling past. It is the
   register's public face — proof the thing is alive — without asking anyone
   to visit a second page. */
.register-ticker{background:#0b0d0b;color:#c6b184;border-top:1px solid #ffffff12;border-bottom:1px solid #ffffff12;padding:14px 0;overflow:hidden}
.ticker-viewport{display:flex;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.ticker-track{display:flex;gap:52px;width:max-content;padding-right:52px;animation:ticker-scroll 60s linear infinite}
.register-ticker:hover .ticker-track,.register-ticker:focus-within .ticker-track{animation-play-state:paused}
.ticker-item{display:inline-flex;align-items:baseline;gap:9px;white-space:nowrap;font-size:9px;letter-spacing:2.2px;text-transform:uppercase}
.ticker-item i{font-style:normal;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;letter-spacing:.4px;color:#8d887d}
.ticker-item b{font:400 17px/1 var(--serif);letter-spacing:0;text-transform:none;color:var(--paper)}
.ticker-item+.ticker-item::before{content:'✧';color:#474339;font-size:10px;margin-right:44px;align-self:center}
@keyframes ticker-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(max-width:720px){.register-ticker{padding:11px 0}.ticker-track{gap:34px;padding-right:34px;animation-duration:42s}.ticker-item b{font-size:15px}}
@media(prefers-reduced-motion:reduce){.ticker-viewport{mask-image:none}.ticker-track{animation:none;flex-wrap:wrap;gap:14px 30px;width:auto;padding:0 6%}}


.inline-brand-symbol{width:1.4em;height:1.4em;vertical-align:middle}.order-card .brand-symbol{margin:0 auto}

/* Allow translated copy and large text to grow on small screens. */
@media(max-width:720px){
 .hero{height:auto;min-height:660px}
 .hero-copy{padding-bottom:80px}
 #gift-form input:not([type=checkbox]),#gift-form textarea{font-size:16px}
}

.package-clarity{font:13px/1.7 var(--sans);color:#52574c;margin:0 0 22px;max-width:48ch}

.package-section{padding-top:20px}.package-intro{margin:20px 0 30px;max-width:65ch;color:#52574c}.package-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.package-card{padding:26px 22px;border:1px solid var(--line);background:#fffaf1}.package-card h3{font-size:24px;line-height:1.2}.package-price{font:28px/1.4 var(--serif);margin:18px 0;color:#705931}.package-card ul{margin:0;padding-left:18px;font-size:13px;line-height:1.9}.package-card li+li{margin-top:5px}@media(max-width:1000px){.package-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:540px){.package-grid{grid-template-columns:1fr}.package-card{padding:24px}}

.package-card{display:flex;flex-direction:column}.package-card ul{flex:1}.package-card>.button{width:100%;margin-top:24px;padding:12px 10px}.package-card>.button:disabled{opacity:.6}

.package-status{margin:0 0 22px;padding:16px 18px;border:1px solid var(--line);background:#fffaf1;font-size:13px}.package-status[hidden]{display:none}.package-status .button{margin-top:12px}.package-status p{line-height:1.7}

.checkout-confirmation{display:flex;align-items:flex-start;gap:10px;margin:16px 0;font-size:14px;line-height:1.5}.checkout-confirmation input{width:auto;flex:none;margin-top:4px}#engraving{width:100%;padding:12px;margin-top:8px}
