:root{--ink:#17322d;--cream:#f7f2e8;--paper:#fffdf7;--coral:#f2876f;--blue:#90bcd0;--yellow:#f1c75b;--green:#a9c5a5;--line:rgba(23,50,45,.18);--display:"Newsreader",serif;--sans:"DM Sans",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:16px}button,input,textarea,select{font:inherit}button,a{color:inherit}.shell{width:min(1180px,calc(100% - 40px));margin-inline:auto}.nav-wrap{position:sticky;top:0;z-index:10;background:rgba(247,242,232,.88);backdrop-filter:blur(14px);border-bottom:1px solid transparent}.nav{height:80px;width:min(1180px,calc(100% - 40px));margin:auto;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:10px;align-items:center;text-decoration:none;font-weight:700;font-size:22px;letter-spacing:-.04em}.brand-mark{display:grid;place-items:center;width:32px;height:32px;border-radius:50% 50% 46% 54%;background:var(--ink);color:var(--cream);font-family:var(--display);font-size:23px;font-style:italic}.nav-links{display:flex;align-items:center;gap:30px}.nav-links a,.footer a{text-decoration:none;font-size:14px;font-weight:600}.menu-button{display:none;border:0;background:none;font-size:25px}.button{border:1px solid var(--ink);border-radius:999px;padding:14px 22px;display:inline-flex;justify-content:center;align-items:center;gap:16px;text-decoration:none;font-weight:600;cursor:pointer;transition:.2s transform,.2s box-shadow}.button:hover{transform:translateY(-2px);box-shadow:0 6px 0 rgba(23,50,45,.14)}.button-dark{background:var(--ink);color:#fff}.button-light{background:transparent}.button-small{padding:11px 18px;font-size:14px}.button-full{width:100%;margin-top:8px}.hero{min-height:680px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:65px;padding-block:60px 80px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:700;margin:0 0 18px}.hero h1,.section-heading h2,.how h2,.modal h2{font-family:var(--display);font-weight:400;letter-spacing:-.045em;margin:0}.hero h1{font-size:clamp(55px,6.2vw,88px);line-height:.91;max-width:760px}.hero-lede{font-size:18px;line-height:1.7;max-width:650px;margin:28px 0}.hero-actions{display:flex;gap:12px}.trust-line{display:flex;align-items:center;gap:14px;margin-top:35px;font-size:13px;font-weight:600}.avatar-stack{display:flex}.avatar-stack i{width:31px;height:31px;margin-left:-7px;border:2px solid var(--cream);border-radius:50%;display:grid;place-items:center;background:var(--coral);font-style:normal;color:#fff;font-size:11px}.avatar-stack i:nth-child(2){background:var(--blue)}.avatar-stack i:nth-child(3){background:var(--yellow);color:var(--ink)}.hero-art{height:540px;position:relative;overflow:hidden;border-radius:48% 48% 20px 20px;background:#f2c967}.sun{position:absolute;width:340px;height:340px;border-radius:50%;background:#f7dfa0;top:-100px;right:-80px}.arch-card{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:250px;height:360px;border-radius:140px 140px 18px 18px;background:var(--ink);color:var(--cream);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:0 30px 60px rgba(23,50,45,.3)}.spark{font-size:25px}.gift-box{width:104px;height:80px;border:3px solid var(--cream);margin:28px 0 20px;position:relative}.gift-box:before{content:"";position:absolute;width:3px;height:100%;background:var(--cream);left:49%;top:0}.gift-box:after{content:"";position:absolute;width:118px;height:16px;border:3px solid var(--cream);left:-10px;top:-15px}.gift-box i:before,.gift-box i:after{content:"";position:absolute;width:38px;height:25px;border:3px solid var(--cream);border-radius:50%;top:-40px}.gift-box i:before{left:20px;transform:rotate(25deg)}.gift-box i:after{right:20px;transform:rotate(-25deg)}.arch-card p{font-size:11px;letter-spacing:.15em;line-height:1.8}.arch-card strong{font-family:var(--display);font-size:24px;font-weight:400}.wish-note{position:absolute;background:var(--paper);width:220px;padding:18px;border-radius:12px;box-shadow:0 12px 30px rgba(23,50,45,.15);font-family:var(--display);font-size:17px;line-height:1.25;transform:rotate(-5deg)}.wish-note span{display:block;font-family:var(--sans);font-size:10px;font-weight:700;margin-top:10px;text-transform:uppercase;letter-spacing:.12em}.note-one{left:18px;top:50px}.note-two{right:16px;bottom:42px;transform:rotate(4deg)}.daisy{position:absolute;bottom:35px;left:44px;font-size:55px;color:var(--ink)}.wishes-section{background:var(--paper);padding:100px 0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px}.section-heading h2,.how h2,.modal h2{font-size:clamp(42px,5vw,64px);line-height:1}.search{display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--ink);padding:9px 2px;min-width:240px}.search span{font-size:23px}.search input{border:0;outline:0;background:transparent;width:100%}.filters{display:flex;gap:8px;flex-wrap:wrap;margin:40px 0 28px}.filter{border:1px solid var(--line);background:transparent;border-radius:99px;padding:9px 14px;cursor:pointer;font-size:13px}.filter.active{background:var(--ink);color:#fff}.wish-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.wish-card{border-radius:18px;padding:20px;min-height:465px;display:flex;flex-direction:column;transition:.2s transform}.wish-card:hover{transform:translateY(-5px)}.wish-card.coral{background:#f6a28f}.wish-card.blue{background:#a9cede}.wish-card.yellow{background:#f4d579}.wish-card.green{background:#bcd2b8}.card-top{display:flex;align-items:center;justify-content:space-between;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.pill{background:rgba(255,255,255,.55);padding:6px 9px;border-radius:99px}.verified{opacity:.7}.card-icon{height:100px;display:grid;place-items:center;font-family:var(--display);font-size:58px}.wish-card blockquote{font-family:var(--display);font-size:23px;line-height:1.2;margin:5px 0 25px;flex:1}.wish-meta{display:flex;gap:10px;align-items:center;padding-top:16px;border-top:1px solid rgba(23,50,45,.22)}.person-avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:#fff}.wish-meta strong,.wish-meta span{display:block}.wish-meta strong{font-size:13px}.wish-meta span{font-size:10px;margin-top:3px}.fulfill{width:100%;margin-top:16px;padding:12px 0;border:0;border-top:1px solid rgba(23,50,45,.22);background:transparent;display:flex;justify-content:space-between;font-weight:700;font-size:12px;cursor:pointer}.empty-state{text-align:center;padding:40px;font-family:var(--display);font-size:24px}.how{padding:120px 0;display:grid;grid-template-columns:.8fr 1.2fr;gap:120px}.how-intro>p:last-child{line-height:1.7;max-width:440px}.steps{padding:0;margin:0;list-style:none}.steps li{display:grid;grid-template-columns:50px 1fr;gap:20px;padding:26px 0;border-top:1px solid var(--line)}.steps li:last-child{border-bottom:1px solid var(--line)}.steps>li>span{font-size:11px;font-weight:700}.steps h3{font-family:var(--display);font-size:28px;margin:0 0 7px}.steps p{margin:0;line-height:1.6;color:#4d625e}.manifesto{background:var(--ink);color:var(--cream)}.manifesto-inner{min-height:330px;display:flex;align-items:center;justify-content:space-between;gap:30px}.manifesto p{font-family:var(--display);font-size:clamp(40px,5vw,70px);letter-spacing:-.04em;max-width:700px;margin:0}.button-cream{border-color:var(--cream);background:var(--cream);color:var(--ink)}.footer{min-height:150px;display:flex;align-items:center;justify-content:space-between;gap:30px}.footer>p{font-family:var(--display);font-size:20px}.footer>div{display:flex;gap:20px}.modal{width:min(600px,calc(100% - 30px));border:0;border-radius:22px;padding:40px;background:var(--paper);color:var(--ink);box-shadow:0 24px 80px rgba(0,0,0,.32)}.modal::backdrop{background:rgba(13,31,28,.62);backdrop-filter:blur(5px)}.modal-close{position:absolute;top:16px;right:18px;border:0;background:none;font-size:30px;cursor:pointer}.modal h2{font-size:45px;margin-bottom:25px}.modal form{display:grid;gap:16px}.modal label{display:grid;gap:7px;font-size:12px;font-weight:700}.modal input,.modal textarea,.modal select{width:100%;border:1px solid var(--line);border-radius:10px;background:#fff;padding:13px;outline:0}.modal textarea{min-height:120px;resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-note{font-size:11px;line-height:1.5;color:#687773;text-align:center}.fulfill-summary{display:flex;align-items:center;justify-content:space-between;background:var(--cream);padding:20px;border-radius:12px;margin:20px 0}.fulfill-summary strong{font-family:var(--display);font-size:32px}.fulfill-modal>p:not(.eyebrow,.form-note){line-height:1.7}.toast{position:fixed;left:50%;bottom:25px;transform:translate(-50%,20px);padding:13px 20px;border-radius:99px;background:var(--ink);color:#fff;font-size:13px;opacity:0;pointer-events:none;transition:.25s;z-index:20}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:900px){.hero{grid-template-columns:1fr;gap:30px}.hero-art{height:500px}.wish-grid{grid-template-columns:1fr 1fr}.how{grid-template-columns:1fr;gap:50px}.manifesto-inner{padding-block:70px}.nav-links{display:none}.nav-links.open{display:flex;position:absolute;top:70px;left:20px;right:20px;background:var(--paper);padding:25px;border-radius:16px;flex-direction:column;box-shadow:0 20px 40px rgba(0,0,0,.1)}.menu-button{display:block}}@media(max-width:620px){.shell,.nav{width:min(100% - 28px,1180px)}.nav{height:68px}.hero{padding-top:35px}.hero h1{font-size:50px}.hero-lede{font-size:16px}.hero-actions{flex-direction:column}.hero-art{height:430px;border-radius:150px 150px 18px 18px}.arch-card{width:190px;height:290px}.wish-note{width:165px;font-size:14px}.note-one{left:8px}.note-two{right:8px}.section-heading{align-items:start;flex-direction:column}.search{width:100%}.wish-grid{grid-template-columns:1fr}.wish-card{min-height:420px}.how{padding:80px 0}.manifesto-inner{align-items:start;flex-direction:column}.footer{padding:45px 0;align-items:start;flex-direction:column}.footer>div{flex-direction:column}.form-row{grid-template-columns:1fr}.modal{padding:32px 20px}.modal h2{font-size:38px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
