*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;color:#481828;background:#fff5df;font-family:'DM Sans',sans-serif}a{color:inherit;text-decoration:none}header{height:94px;display:flex;align-items:center;justify-content:space-between;padding:0 6%;background:#fff5df}.wordmark{font-family:'Fredoka',sans-serif;font-size:42px;font-weight:700;letter-spacing:-2px}.wordmark span{color:#ec2548}.occasion,.eyebrow,.nav-link,.tiny-note,.hero-bottom,.photo-caption,.corner-label,footer>span{font-size:12px;font-weight:700;letter-spacing:1.8px}.nav-link{font-size:14px;letter-spacing:0;border-bottom:1px solid;padding-bottom:6px}.hero{background:#ec2548;color:#fff5df;padding:70px 6% 28px;display:grid;grid-template-columns:1fr 1.06fr;gap:30px;overflow:hidden;position:relative}.eyebrow{display:inline-flex;align-items:center;gap:10px}.eyebrow i{width:10px;height:10px;border-radius:50%;background:#ffce36}h1,h2{font-family:'Fredoka',sans-serif;font-weight:600;letter-spacing:-3px;line-height:1.02;margin:27px 0}h1{font-size:clamp(70px,7.8vw,116px)}h1 span{color:#ffdb47}p{font-size:19px;line-height:1.6}.hero-copy p{margin:24px 0;color:#ffe9dc}.button{display:inline-flex;gap:28px;align-items:center;background:#ffdb47;color:#481828;border-radius:100px;padding:19px 26px;font-weight:700;box-shadow:0 5px 0 #8f1435;transition:transform .2s,box-shadow .2s}.button:hover{transform:translateY(-3px);box-shadow:0 8px 0 #8f1435}.button span{font-size:24px;line-height:20px}.tiny-note{margin-top:23px;font-size:11px;letter-spacing:2px}.hero-art{position:relative;align-self:center;padding:6px 0 28px 20px}.photo-frame{transform:rotate(4deg);background:#fff5df;padding:13px 13px 0;box-shadow:12px 17px 0 #a6153b;border-radius:190px 190px 12px 12px;overflow:hidden}.photo-frame img{display:block;width:100%;height:510px;object-fit:cover;border-radius:180px 180px 0 0}.photo-caption{text-align:center;color:#481828;font-size:10px;letter-spacing:1.7px;padding:20px 2px}.sticker{position:absolute;left:-25px;bottom:62px;width:155px;height:155px;border-radius:50%;background:#ffdc48;color:#481828;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;transform:rotate(-12deg);border:2px dashed #c17920;outline:8px solid #ffdc48;font-size:13px;letter-spacing:1px}.sticker strong{font-family:'Fredoka',sans-serif;font-size:27px;letter-spacing:-1px;max-width:130px;line-height:1.1}.spark{position:absolute;color:#ffdc48;font-size:75px}.spark-one{top:-38px;right:-22px}.spark-two{bottom:13px;right:3px;font-size:47px}.hero-bottom{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid #ffffff42;margin-top:33px;padding-top:24px;font-size:10px}.ribbon{background:#ffdb47;color:#481828;overflow:hidden;padding:22px 0;transform:rotate(-1.2deg);width:101%;margin-left:-.5%;position:relative}.ribbon div{white-space:nowrap;font-family:'Fredoka',sans-serif;font-size:27px;font-weight:600;word-spacing:13px}.wish{display:grid;grid-template-columns:1fr 1fr;gap:9%;padding:110px 8%;align-items:center}.wish-art{position:relative;transform:rotate(-3deg)}.wish-art img{width:100%;height:430px;object-fit:cover;display:block;border:12px solid white;box-shadow:-13px 14px 0 #17b7bd;border-radius:15px}.corner-label{position:absolute;bottom:28px;left:28px;right:28px;text-align:center;background:#ffdb47;padding:16px;font-size:11px;transform:rotate(3deg)}.wish-copy .eyebrow{color:#bb2344}.wish h2{font-size:clamp(42px,4.4vw,65px);margin:24px 0}.wish h2 em{font-style:normal;color:#ed294c}.wish-copy p{font-size:17px;color:#694454}.signature{display:block;margin-top:28px;font-family:'Fredoka',sans-serif;font-size:24px;color:#b71c40}.closing{position:relative;overflow:hidden;padding:80px 20px 90px;text-align:center;background:#16b7bd;color:#173b43;border-top:2px solid #173b4320}.closing h2{font-size:clamp(55px,7vw,93px);margin:28px 0}.closing h2 span{color:#fff5df}.closing p{font-size:17px}.closing-star{position:absolute;right:9%;top:55px;color:#ffdb47;font-size:110px;transform:rotate(12deg)}footer{padding:36px 6%;display:flex;align-items:center;justify-content:space-between;gap:20px}footer .wordmark{font-size:32px}footer>span{font-size:10px;letter-spacing:1px}footer>a:last-child{font-size:14px}a:focus-visible{outline:3px solid #112e43;outline-offset:7px}@media(min-width:1600px){.hero{padding-left:max(6%,calc((100vw - 1400px)/2));padding-right:max(6%,calc((100vw - 1400px)/2))}}@media(max-width:800px){header{height:78px;padding:0 6%}.occasion{display:none}.hero{padding-top:40px;gap:40px;grid-template-columns:1fr}.hero h1{font-size:clamp(70px,15vw,105px)}.hero-art{padding:5px 15px 15px 30px;max-width:560px;width:100%;justify-self:center}.photo-frame img{height:440px}.sticker{left:5px;bottom:40px;width:130px;height:130px}.hero-bottom{margin-top:0;gap:20px;font-size:9px}.wish{grid-template-columns:1fr;padding:75px 8%;gap:65px}.wish-art{max-width:500px}.wish h2{font-size:53px}.closing-star{right:-25px;top:20px;font-size:80px;opacity:.6}footer{flex-wrap:wrap}footer>span{order:3;width:100%;font-size:9px}.nav-link{font-size:12px}.ribbon div{font-size:22px}.photo-caption{font-size:8px}.tiny-note{font-size:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
