@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=DM+Sans:wght@400;500;600&display=swap');
:root{color-scheme:light;--paper:#faf7ee;--ink:#354f57;--blue:#56788f;--green:#61765b;--line:#cbd2bd;--serif:'Cormorant Garamond',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;-webkit-font-smoothing:antialiased}body:before,body:after{content:'';display:block;height:17px;background-color:#eaf0ee;background-image:linear-gradient(90deg,#9bb3bf30 50%,transparent 50%),linear-gradient(#9bb3bf30 50%,transparent 50%);background-size:18px 18px}.site-header,main,footer{width:min(1180px,calc(100% - 96px));margin:auto}.site-header{display:flex;align-items:center;justify-content:space-between;min-height:98px;border-bottom:1px solid var(--line)}.wordmark{font:500 30px var(--serif);color:var(--ink);text-decoration:none;display:flex;gap:13px;align-items:center}.star{color:var(--green);font-size:25px}.header-note,.eyebrow{font-size:12px;letter-spacing:.17em;font-weight:500}.header-note{color:var(--green)}.welcome{display:grid;grid-template-columns:1fr 1.05fr;gap:32px;align-items:center;padding:60px 0 65px}.eyebrow{color:var(--green);margin:0 0 20px}h1{font:400 clamp(62px,5.9vw,84px)/.99 var(--serif);letter-spacing:-.035em;margin:0 0 24px}em{font-weight:400;color:var(--blue)}.intro{color:#5b6964;font-size:16px;line-height:1.8;max-width:415px;margin:0 0 26px}.intro strong{font-weight:600;color:var(--ink)}.registries{display:grid;gap:12px;max-width:410px}.registry{display:flex;align-items:center;gap:17px;min-height:78px;padding:15px 20px;border-radius:5px;text-decoration:none;transition:background .2s,transform .2s}.amazon,.target{background:#fffffa;border:1px solid #a6b69e;color:var(--ink)}.amazon:hover,.target:hover{background:#edf0e5;transform:translateY(-2px)}.registry-label{font-size:17px;font-weight:600;display:block;line-height:1.4}.registry-detail{font-size:13px;display:block;line-height:1.6;opacity:.85}.retailer-icon{width:34px;height:34px;display:grid;place-items:center;flex-shrink:0}.amazon-icon{font:700 36px Georgia,serif;padding-bottom:6px}.target-icon{color:#9e5546}.link-arrow{margin-left:auto;font-size:24px}.shopping-note{font-size:12px;color:#636d60;line-height:1.7;margin:17px 0 0}.visual-panel{align-self:center;min-width:0}.storybook-art{margin:0 -25px;aspect-ratio:1.1;display:flex;align-items:center}.storybook-art img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}.art-label{text-align:center;font:italic 25px var(--serif);color:var(--green);margin:2px 0 0}.family-note{display:grid;grid-template-columns:240px 1fr;gap:60px;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:46px 70px;background:#eef1e833}.family-photo{padding:9px;background:#fffef9;border:1px solid #d5d7c8;box-shadow:0 6px 20px #5369510a;transform:rotate(-3deg)}.family-photo img{display:block;width:100%;height:auto}.family-copy h2{font:400 44px/1.12 var(--serif);letter-spacing:-.025em;margin:0 0 16px}.family-copy>p:not(.eyebrow){font-size:15px;line-height:1.85;color:#617064;max-width:420px}.family-copy .eyebrow{font-size:11px;margin-bottom:14px}.family-copy .gratitude{margin-top:22px;color:var(--green)}footer{display:flex;justify-content:space-between;gap:20px;padding:29px 0;color:#636d60;font-size:12px}footer>span:last-child{font-size:10px;letter-spacing:.13em}a:focus-visible{outline:3px solid #a67843;outline-offset:5px}@media(max-width:1000px){.site-header,main,footer{width:calc(100% - 56px)}.welcome{gap:20px}h1{font-size:68px}.storybook-art{margin:0 -12px}.family-note{padding:40px;gap:40px;grid-template-columns:210px 1fr}.family-copy h2{font-size:38px}}@media(max-width:700px){.site-header,main,footer{width:calc(100% - 40px)}.site-header{min-height:80px}.wordmark{font-size:27px}.header-note{font-size:10px;letter-spacing:.1em}.welcome{grid-template-columns:1fr;gap:22px;padding:37px 0 32px}.eyebrow{font-size:10px;margin-bottom:19px}h1{font-size:clamp(58px,14vw,76px);line-height:1.02}.intro{max-width:440px;margin-bottom:23px}.registries{max-width:none}.registry{padding:15px 17px}.storybook-art{aspect-ratio:3/2;margin:0 -5px}.art-label{font-size:24px;margin:10px 0 0}.family-note{grid-template-columns:1fr;padding:36px 14px;gap:30px}.family-photo{max-width:245px;margin:auto}.family-copy{text-align:center}.family-copy h2{font-size:38px}.family-copy>p:not(.eyebrow){margin-left:auto;margin-right:auto}.family-copy .eyebrow{font-size:10px}footer{align-items:center;font-size:11px;line-height:1.6}footer>span:last-child{max-width:120px;text-align:right;font-size:9px}.desktop-break{display:none}}@media(prefers-reduced-motion:reduce){.registry{transition:none}.registry:hover{transform:none}}

/* Readable type and resilient layouts for small screens and enlarged text. */
.registry-label{font-size:1.0625rem}.shopping-note{font-size:.875rem}.family-copy>p:not(.eyebrow){font-size:1rem}.header-note{font-size:.75rem}.storybook-art{margin:0;aspect-ratio:3/2}footer{justify-content:center;text-align:center;font-size:.875rem}footer>span:last-child{font-size:inherit;letter-spacing:normal;max-width:none;text-align:center}.registry>span:nth-child(2){min-width:0}.link-arrow{flex-shrink:0}.welcome-copy,.family-copy{min-width:0}@media(max-width:1000px) and (min-width:701px){h1{font-size:clamp(2.75rem,6vw,4.25rem)}}@media(max-width:700px){h1{font-size:clamp(2.875rem,13vw,4.75rem)}.header-note{font-size:.75rem}.site-header{gap:16px;flex-wrap:wrap;padding-block:16px}.wordmark{font-size:1.6875rem}.family-copy h2{font-size:2.375rem}.family-photo{width:min(245px,100%)}.registry{min-height:72px}.welcome{padding-top:32px}}

/* Fixed vector icons prevent platform-specific emoji and font substitution. */
.brand-mark{display:block;flex:0 0 24px;color:var(--green)}.retailer-icon svg{display:block}.amazon-icon{font:inherit;padding:0}.link-arrow{display:block;flex:0 0 24px;width:24px;height:24px}.family-note{grid-template-areas:"photo copy"}.family-copy{grid-area:copy}.family-photo{grid-area:photo}@media(max-width:700px){.family-note{grid-template-areas:"copy" "photo";gap:32px;padding:38px 14px 42px}.family-copy h2{margin-bottom:18px}.family-copy>p:not(.eyebrow){margin-bottom:0;max-width:32ch}.family-photo{transform:none;width:min(280px,100%)}.welcome{padding-bottom:36px}.visual-panel{margin-top:8px}}
