:root{--ink:#67404a;--rose:#ba6878;--cream:#fffaf4;--gold:#b78b42;--brown:#8d685c}*{box-sizing:border-box}body{margin:0;min-height:100svh;padding:clamp(.7rem,3vw,2rem);overflow-x:hidden;color:var(--ink);font-family:"Pixelify Sans",sans-serif;background:linear-gradient(rgba(255,250,245,.88),rgba(237,215,208,.9)),url("peony-bg-tile.png") repeat;background-size:auto,340px 340px}.countdown-shell{position:relative;z-index:1;width:min(980px,100%);margin:auto;padding:clamp(1rem,4vw,2.4rem);border:1px solid rgba(103,64,74,.16);border-radius:34px 13px;background:rgba(255,252,247,.95);box-shadow:0 28px 90px rgba(80,47,56,.2)}nav a{color:var(--ink);font-weight:700;text-decoration:none}nav a:hover{text-decoration:underline}.hero{display:grid;justify-items:center;padding:clamp(2.5rem,7vw,5rem) clamp(.4rem,4vw,2rem);text-align:center}.eyebrow{font-weight:700;letter-spacing:.15em;text-transform:uppercase}.camera{position:relative;width:160px;height:112px;margin:2.2rem 0 1.8rem;border:5px solid var(--ink);border-radius:18px 18px 25px 25px;background:linear-gradient(135deg,#9d7568,#68434a);box-shadow:0 14px 0 rgba(103,64,74,.13);animation:cameraFloat 4s ease-in-out infinite}.camera::before{content:"";position:absolute;top:-25px;left:20px;width:50px;height:25px;border:5px solid var(--ink);border-bottom:0;border-radius:10px 10px 0 0;background:#9d7568}.lens{position:absolute;top:21px;left:47px;display:grid;place-items:center;width:65px;height:65px;border:6px solid var(--cream);border-radius:50%;background:#4d3c47;box-shadow:0 0 0 5px var(--ink)}.lens i{width:24px;height:24px;border-radius:50%;background:#b9d4d1;box-shadow:inset 7px 7px rgba(255,255,255,.4)}.flash{position:absolute;top:14px;right:15px;width:20px;height:13px;border-radius:3px;background:#f0d78f}.shutter{position:absolute;top:-16px;right:22px;width:27px;height:9px;border-radius:6px;background:var(--ink)}h1,h2{margin:0;font-family:"DM Serif Display",serif;font-weight:400;line-height:.96}h1{font-size:clamp(3.3rem,9vw,6.5rem)}.promise{max-width:43rem;margin:1.5rem auto 2rem;font-size:clamp(1.05rem,2vw,1.28rem);line-height:1.65}.date-card{display:grid;gap:.25rem;width:min(420px,100%);padding:1.2rem 1.5rem;border:1px solid rgba(183,139,66,.35);border-radius:18px;background:#fff9ed;box-shadow:0 10px 32px rgba(103,64,74,.09)}.date-card span,.date-card small{text-transform:uppercase;letter-spacing:.12em}.date-card strong{color:var(--rose);font-family:"DM Serif Display",serif;font-size:clamp(2rem,6vw,3.5rem);font-weight:400}.timer{width:100%;margin-top:2rem;padding:clamp(1.5rem,5vw,3rem);border-radius:28px 10px;background:linear-gradient(145deg,#f7e7e2,#fffaf4);box-shadow:inset 0 0 0 1px rgba(103,64,74,.12)}.timer h2{font-size:clamp(2rem,5vw,3.5rem)}.timer-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(.4rem,2vw,1rem);margin:1.8rem 0 1rem}.timer-grid div{display:grid;gap:.25rem;padding:clamp(.8rem,3vw,1.4rem) .4rem;border-radius:16px;background:rgba(255,255,255,.85);box-shadow:0 8px 25px rgba(103,64,74,.08)}.timer-grid strong{color:var(--deep,var(--rose));font-family:"DM Serif Display",serif;font-size:clamp(2rem,7vw,4.5rem);font-weight:400;font-variant-numeric:tabular-nums}.timer-grid span{font-size:clamp(.65rem,2vw,.95rem);letter-spacing:.08em;text-transform:uppercase}#timer-message{margin-bottom:0;color:#7f6268}blockquote{max-width:41rem;margin:2.5rem auto 1.6rem;font-family:"DM Serif Display",serif;font-size:clamp(1.6rem,4vw,2.5rem);font-style:italic;line-height:1.3}.signature{margin:0;font-size:1.15rem;line-height:1.5}.corner{position:fixed;z-index:0;color:rgba(186,104,120,.35);font-family:serif;font-size:clamp(3rem,8vw,6rem);animation:float 6s ease-in-out infinite}.corner-one{top:8%;left:3%}.corner-two{right:4%;bottom:6%;animation-delay:-3s}@keyframes cameraFloat{50%{transform:translateY(-9px) rotate(-1deg)}}@keyframes float{50%{transform:translateY(-12px) rotate(8deg)}}@media(max-width:620px){.countdown-shell{padding:1rem;border-radius:24px 10px}.hero{padding:2.6rem .15rem}.timer{padding:1.3rem .6rem}.timer-grid{gap:.35rem}.timer-grid div{padding:1rem .2rem;border-radius:10px}}@media(prefers-reduced-motion:reduce){.camera,.corner{animation:none}}
