:root{--ink:#5d4945;--ink-light:#8d7771;--pink:#f6aebc;--rose:#f7c9d1;--cream:#fffaf5;--peach:#fff0e9;--milk:#ffffff;--stroke:#f1e0da;--yellow:#f6d991;--blue:#cfeafa;--shadow:0 15px 40px rgba(119,70,77,.07);font-synthesis:none}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:98px}
body{margin:0;color:var(--ink);background:var(--cream);font-family:'Nunito','Trebuchet MS',ui-rounded,'Arial Rounded MT Bold',system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased}
button,a{font:inherit}
a{color:inherit;text-decoration:none}
button{cursor:pointer}
img,svg{display:block;max-width:100%}
::selection{color:#513c3b;background:#ffdce3}
:focus-visible{outline:3px solid #ec90a6;outline-offset:4px}
.container{width:min(1160px,calc(100% - 64px));margin-inline:auto}
.skip-link{position:absolute;z-index:999;top:-100px;left:12px;background:#fff;padding:12px 18px;border-radius:12px}.skip-link:focus{top:12px}
.topnote{height:37px;display:flex;gap:14px;justify-content:center;align-items:center;text-align:center;background:#f8dbe1;color:#77565b;font-size:11px;letter-spacing:.105em;font-weight:800}.topnote-spark{font-size:15px;color:#d6889d}
.header{position:sticky;top:0;z-index:20;background:rgba(255,250,245,.94);backdrop-filter:blur(18px);border-bottom:1px solid rgba(238,217,213,.65)}
.header-inner{height:83px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:11px;flex-shrink:0}.brand-icon{width:44px;height:44px;display:grid;place-items:center;background:#ffedf0;border-radius:15px;transform:rotate(-8deg)}.brand-icon svg{width:39px;height:39px}.brand-words{display:flex;flex-direction:column;line-height:1}.brand-words strong{font-size:23px;letter-spacing:-1.3px;font-weight:900}.brand-dot,.footer-brand>span:first-child{color:#ed91a5}.brand-words small{font-size:10px;letter-spacing:.22em;color:#b09b93;font-weight:800;margin-top:5px}
.nav{display:flex;align-items:center;gap:36px}.nav-link{font-size:13px;font-weight:800;color:#826c66;transition:color .2s}.nav-link:hover{color:#df7792}
.header-cta{border:1.5px solid #e9c8c9;border-radius:999px;padding:12px 19px;color:#b66e80;font-size:12px;font-weight:900;transition:background .2s,transform .2s;white-space:nowrap}.header-cta:hover{background:#ffe9ee;transform:translateY(-2px)}.header-cta span{font-size:16px;margin-left:7px}
.menu-toggle{display:none;border:0;background:transparent;padding:10px}.menu-toggle span{display:block;height:2px;width:23px;background:var(--ink);margin:5px 0;border-radius:99px}
.hero{min-height:622px;position:relative;overflow:hidden;background:linear-gradient(130deg,#fffaf6 8%,#fff7f3 65%,#fef5ee)}
.hero-grid{display:grid;grid-template-columns:1fr 1.03fr;align-items:center;gap:12px;padding-block:69px 83px;position:relative;z-index:2}.hero-copy{padding-top:3px}.eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:11px;font-weight:900;letter-spacing:.17em;color:#cf8a9c;text-transform:uppercase}.eyebrow-star{font-size:19px}
h1,h2,h3,p{margin:0}h1{font-size:clamp(47px,5.3vw,76px);font-weight:900;letter-spacing:-.067em;line-height:1.19;margin:19px 0 22px}h1 em,.story-copy h2 em,.joy h2 em{font-style:normal;color:#eda0b3;position:relative}.title-flower{font-weight:400;color:#e7b874;font-size:.46em;vertical-align:top;margin-left:8px;display:inline-block;transform:rotate(12deg)}.hero-text{max-width:465px;font-size:15px;line-height:1.95;color:#907b76;font-weight:600}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin-top:31px}.btn{border:0;display:inline-flex;justify-content:center;align-items:center;gap:18px;min-height:50px;border-radius:999px;padding:13px 25px;font-size:13px;font-weight:900;transition:transform .2s,box-shadow .2s,background .2s}.btn:hover{transform:translateY(-3px)}.btn-primary{color:white;background:#e99aac;box-shadow:0 9px 20px #e99aac4a}.btn-primary:hover{background:#e38da2;box-shadow:0 12px 27px #e99aac62}.btn-primary span{font-size:19px}.btn-quiet{color:#7c6863}.btn-quiet span{font-size:19px}.btn-quiet:hover{background:#fff1f2}.hero-bottom{display:flex;align-items:center;gap:10px;margin-top:39px;color:#a7958e;font-size:11px;letter-spacing:.01em;font-weight:700}.tiny-heart{font-size:16px;color:#e8a4b4}
.hero-visual{position:relative;min-height:480px;display:flex;align-items:center;justify-content:center}.hero-blob{width:min(100%,550px);height:470px;background:#fbe5de;border-radius:51% 49% 47% 53%/52% 49% 51% 48%;position:relative;isolation:isolate;box-shadow:inset 0 -24px 0 #f8deda45}.hero-blob:before{content:'';position:absolute;inset:22px 15px 31px;background:#fff1ea80;border-radius:inherit;border:1px dashed #eabfc0aa}.hero-dot-grid{position:absolute;inset:32px;opacity:.26;background-image:radial-gradient(#ebaeaa 2px,transparent 2px);background-size:24px 24px;mask-image:linear-gradient(to bottom,#000,transparent 80%)}.hero-characters{position:absolute;z-index:3;width:109%;max-width:unset;left:-4.5%;bottom:25px;filter:drop-shadow(0 17px 8px #b27f6d18);animation:gentle-float 5s ease-in-out infinite}.hero-ground{position:absolute;height:78px;width:75%;left:12.5%;bottom:18px;background:#e6b9a590;filter:blur(27px);border-radius:50%;z-index:1}.floating-star{position:absolute;z-index:4;color:#e7b66c}.star-a{font-size:46px;top:33px;left:17%}.star-b{font-size:49px;right:8%;top:83px;color:#f4b4bd;transform:rotate(16deg)}.star-c{font-size:35px;right:16%;bottom:57px}.floating-note{position:absolute;background:#fff;z-index:4;border:1px solid #f7e3de;box-shadow:0 7px 20px #b7838830;border-radius:16px;padding:12px 15px;font-size:12px;font-weight:900;color:#ad7983;transform:rotate(-10deg)}.note-left{left:-24px;bottom:102px}.note-left span{color:#f4b0c0}.note-right{right:-24px;top:42px;transform:rotate(9deg)}.edge-decoration{position:absolute;color:#e9b7a8}.edge-deco-a{font-size:31px;left:0;top:12px}.edge-deco-b{font-size:36px;right:-12px;bottom:50px}.hero-cloud{position:absolute;background:#fff7f2;border-radius:60px;height:45px;width:120px;opacity:.7}.hero-cloud:before,.hero-cloud:after{content:'';position:absolute;background:inherit;border-radius:50%}.hero-cloud:before{height:65px;width:65px;top:-28px;left:18px}.hero-cloud:after{height:47px;width:47px;top:-16px;right:10px}.hero-cloud-a{left:8%;top:44px}.hero-cloud-b{right:5%;bottom:33px;transform:scale(.8)}.hero-bottom-wave{position:absolute;left:-4%;right:-4%;height:60px;bottom:-37px;background:#fffdf9;border-radius:50% 50% 0 0/70% 70% 0 0}
.intro-strip{background:#fffdf9;border-bottom:1px solid #f9ede9}.strip-inner{min-height:90px;display:flex;justify-content:center;align-items:center;gap:45px}.strip-inner span{font-size:13px;font-weight:800;color:#9c8580}.strip-inner b{color:#eb9cad;margin-right:8px;font-size:18px}.strip-inner i{font-style:normal;color:#e4beb9}
.section{padding-block:100px}.section-heading h2{font-size:clamp(32px,4vw,48px);line-height:1.25;letter-spacing:-.05em;margin:14px 0 17px;font-weight:900}.section-heading p{color:#968079;font-size:14px;line-height:1.8;font-weight:600}.kicker{color:#db8da0;font-size:11px;font-weight:900;letter-spacing:.19em}.center{text-align:center}.underline-squiggle{position:relative;color:#e99daf}.underline-squiggle:after{content:'';position:absolute;left:0;right:0;bottom:0;height:6px;border-bottom:3px solid #f5d5da;border-radius:50%;transform:rotate(-2deg)}
.friends{background:#fffdf9}.friends-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:47px}.friend-card{background:#fff;border:1px solid #f2e7e2;border-radius:27px;box-shadow:var(--shadow);overflow:hidden;transition:transform .25s,box-shadow .25s}.friend-card:hover{transform:translateY(-7px);box-shadow:0 18px 35px rgba(119,70,77,.11)}.friend-art{height:234px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.friend-art img{height:212px;width:auto;position:relative;z-index:2;transition:transform .3s}.friend-card:hover img{transform:scale(1.06) rotate(-2deg)}.friend-pink .friend-art{background:#fde7eb}.friend-blue .friend-art{background:#e5f4fc}.friend-yellow .friend-art{background:#fff1ce}.friend-art:before{content:'';position:absolute;border-radius:50%;height:220px;width:220px;background:#ffffff77;top:54px;left:calc(50% - 110px)}.friend-info{padding:25px 27px 29px}.friend-label{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#b5a09a;font-weight:800}.friend-info h3{font-size:25px;letter-spacing:-.04em;margin:8px 0 9px;font-weight:900}.friend-info h3 span{font-size:18px;color:#e8a3b0}.friend-info p{min-height:70px;font-size:13px;line-height:1.8;font-weight:600;color:#99847d}.friend-tag{display:inline-block;margin-top:17px;background:#fff4f3;border-radius:99px;padding:8px 13px;font-size:11px;font-weight:800;color:#c38c92}.friend-blue .friend-tag{background:#eff8fd;color:#7bacc1}.friend-yellow .friend-tag{background:#fff8e7;color:#b39b59}.mini-decoration{position:absolute;font-size:35px;z-index:2;right:14%;top:24px}.deco-pink{color:#f1a8ba}.deco-blue{color:#8ccde8}.deco-yellow{color:#eec878}
.moments{background:#fff8f5}.moments-heading{display:flex;align-items:end;justify-content:space-between;gap:35px}.moments-heading h2{margin-bottom:0}.moments-heading h2 span{color:#eba0b1}.moments-heading>p{max-width:360px;padding-bottom:5px}.moments-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:21px;margin-top:46px}.moment-card{min-height:290px;border-radius:28px;padding:30px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;border:1px solid #f3dfda}.moment-one{background:#ffeced}.moment-two{background:#fff1d6}.moment-three{background:#e7f4f5}.moment-icon{font-size:47px;position:relative;z-index:2;filter:drop-shadow(0 4px 5px #8d635a14)}.moment-number{font-size:10px;letter-spacing:.12em;font-weight:900;color:#a78a83}.moment-card h3{font-size:22px;letter-spacing:-.04em;font-weight:900;margin:9px 0}.moment-card p{font-size:12px;line-height:1.85;color:#987f79;font-weight:700;max-width:245px}.moment-spark{position:absolute;top:19px;right:22px;font-size:90px;color:#fff9;transform:rotate(15deg)}
.story{background:#fffdf9}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.story-art{height:430px;position:relative}.story-card{height:390px;max-width:480px;background:#ffe8dc;border:8px solid white;border-radius:35px;box-shadow:0 16px 38px #ad8d7a1b;transform:rotate(-4deg);position:relative;overflow:hidden;display:flex;justify-content:center;align-items:center}.story-card img{width:245px;position:relative;z-index:2;transform:rotate(4deg) translateY(8px)}.story-hill{height:120px;position:absolute;bottom:-62px;left:-20px;right:-20px;background:#e6dcc5;border-radius:50%}.handdrawn-sun{position:absolute;right:28px;top:25px;font-size:61px;color:#f4c268}.story-bubble{position:absolute;left:22px;top:25px;background:#fffaf5;border-radius:20px;padding:15px 18px;font-size:13px;line-height:1.4;color:#ba8c8b;font-weight:900;transform:rotate(-8deg)}.story-sticker{position:absolute;right:4%;bottom:8px;z-index:3;background:#f4bbca;border:5px solid white;border-radius:12px;padding:13px 20px;color:#925f73;font-size:14px;font-weight:900;transform:rotate(10deg);box-shadow:0 6px 15px #a2798121}.story-copy h2{font-size:clamp(32px,3.8vw,48px);letter-spacing:-.055em;line-height:1.25;margin:18px 0 25px;font-weight:900}.story-copy p{font-size:14px;line-height:1.95;color:#927b76;font-weight:600;margin-bottom:15px}.story-link{display:inline-flex;gap:19px;align-items:center;margin-top:20px;border-bottom:2px solid #e9b1bc;padding-bottom:8px;color:#c27e8c;font-size:13px;font-weight:900}.story-link span{font-size:18px}.story-link:hover{color:#da7c94}
.joy{padding:15px 0 100px;background:#fffdf9}.joy-card{min-height:335px;border-radius:33px;background:linear-gradient(110deg,#fae3e6,#fbe8e8 55%,#fff0e7);display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;position:relative;overflow:hidden;padding:44px 26px}.joy-spark{color:#da9aa4;font-size:17px;letter-spacing:9px}.joy h2{font-weight:900;font-size:clamp(28px,3.5vw,43px);letter-spacing:-.055em;margin-top:13px}.joy-message{font-size:14px;color:#a38783;font-weight:700;margin-top:18px;min-height:25px}.joy-button{margin-top:23px;background:#e692a7}.joy-flower{position:absolute;font-size:115px;color:#ffffff88}.joy-flower-one{left:6%;top:19px;transform:rotate(-20deg)}.joy-flower-two{right:8%;bottom:10px;transform:rotate(25deg)}
.footer{background:#fff4ef;border-top:1px solid #f6e2db;padding-top:41px}.footer-grid{display:flex;justify-content:space-between;gap:30px;align-items:start;padding-bottom:35px}.footer-brand{font-size:24px;font-weight:900;letter-spacing:-1px}.footer-heart{color:#eba2ae;font-size:20px}.footer-grid p{font-size:12px;color:#a68b82;margin-top:9px;font-weight:600}.footer-grid nav{display:flex;gap:28px;padding-top:10px}.footer-grid nav a{font-size:12px;font-weight:800;color:#927d77}.footer-grid nav a:hover{color:#dc8297}.footer-base{border-top:1px solid #eddcd5;min-height:65px;display:flex;align-items:center;justify-content:space-between;gap:25px}.footer-base small{font-size:10px;color:#b29b92;font-weight:600;line-height:1.5}.footer-base span{font-size:11px;color:#ce8999;font-weight:900;white-space:nowrap}
@keyframes gentle-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
@media(max-width:1000px){.nav{gap:20px}.hero-grid{grid-template-columns:1fr 1fr}.hero-blob{height:395px}.hero-visual{min-height:410px}.hero-characters{bottom:19px}.story-grid{gap:45px}.moment-card{padding:24px}}
@media(max-width:760px){.container{width:min(100% - 38px,520px)}.header-inner{height:70px}.header-cta{display:none}.menu-toggle{display:block;margin-left:auto}.nav{position:absolute;top:70px;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;background:#fffaf5;box-shadow:0 14px 18px #6e514b16;padding:8px 25px 20px}.nav.is-open{display:flex}.nav-link{padding:13px 10px;border-bottom:1px solid #f5e6e2}.topnote{font-size:9px;letter-spacing:.04em;gap:8px}.hero-grid{grid-template-columns:1fr;gap:8px;padding-block:58px 68px}.hero-copy{text-align:center}.hero-text{margin-inline:auto;font-size:14px}.hero-actions,.hero-bottom{justify-content:center}.hero-visual{min-height:365px;margin-top:14px}.hero-blob{width:min(92%,445px);height:350px}.hero-characters{bottom:12px}.note-left{left:-12px}.note-right{right:-9px}.strip-inner{gap:10px;flex-wrap:wrap;padding-block:21px}.strip-inner span{font-size:11px}.strip-inner i{display:none}.section{padding-block:70px}.friends-grid,.moments-grid{grid-template-columns:1fr;gap:16px;max-width:480px;margin-inline:auto}.friends-grid{margin-top:34px}.friend-art{height:220px}.friend-info p{min-height:0}.moments-heading{align-items:start;display:block}.moments-heading>p{margin-top:20px}.moments-grid{margin-top:28px}.moment-card{min-height:225px}.moment-card p{max-width:100%}.story-grid{grid-template-columns:1fr;gap:24px}.story-art{height:335px;max-width:420px;width:100%;margin:auto}.story-card{height:313px}.story-card img{width:190px}.story-copy{text-align:center}.story-copy p{text-align:left}.joy{padding-bottom:75px}.joy-card{min-height:310px}.joy-flower{font-size:75px}.footer-grid,.footer-base{flex-direction:column;align-items:start}.footer-grid nav{gap:23px}.footer-base{padding-block:18px;gap:12px}}
@media(max-width:400px){h1{font-size:45px}.hero-blob{height:306px}.hero-visual{min-height:322px}.floating-note{font-size:10px}.story-card{height:290px}.story-art{height:305px}.brand-words strong{font-size:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-characters{animation:none}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
