:root{--paper:#f9f5ec;--ink:#403a32;--rose:#9b514d;--muted:#787568}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,sans-serif}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--rose);outline-offset:5px}header{max-width:1320px;margin:auto;padding:30px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dcd6c8}.wordmark{font:27px Georgia;letter-spacing:4px}.wordmark span{color:var(--rose)}nav{display:flex;gap:32px;font-size:12px}nav a:hover{color:var(--rose)}.hero{max-width:1320px;min-height:780px;padding:75px 6% 85px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.eyebrow{font-size:10px;letter-spacing:2.4px;font-weight:600;color:var(--rose);line-height:1.8}h1,h2{font-family:Georgia,serif;font-weight:400}h1{font-size:clamp(56px,6.7vw,94px);line-height:1.02;letter-spacing:-4px;margin:25px 0}em{font-weight:400;color:var(--rose)}.intro{font-size:15px;line-height:1.9;color:var(--muted)}.pill{display:inline-flex;gap:36px;align-items:center;background:var(--rose);color:white;padding:18px 24px;border-radius:50px;font-size:12px;margin-top:20px}.pill:hover{background:#7e403d}.signed{margin-top:35px;color:var(--muted);font-size:12px}.signed span{font:italic 25px Georgia;color:var(--rose);margin-left:8px}.hero-art{position:relative;padding:30px 20px 50px}.handwritten{font:italic 23px Georgia;color:var(--rose)}.top-note{position:absolute;top:-16px;left:35px;transform:rotate(-7deg)}.polaroid{background:#fffdf8;padding:16px 16px 0;box-shadow:0 10px 32px #403a321a;margin:0}.main-photo{transform:rotate(5deg);max-width:410px;margin:auto}.polaroid img{width:100%;height:425px;object-fit:cover;display:block}.polaroid figcaption{font:italic 24px Georgia;text-align:center;padding:23px 4px;color:#6c5d4c}.doodle{position:absolute;right:-18px;bottom:68px;font:90px Georgia;color:var(--rose);transform:rotate(15deg)}.photo-label{position:absolute;bottom:-12px;left:35px;font:italic 18px/1.5 Georgia;color:var(--muted);transform:rotate(-5deg)}section[id]{scroll-margin-top:40px}.memories{padding:85px 6%;background:#efebdf}.section-heading{max-width:1150px;margin:0 auto 50px;display:flex;justify-content:space-between;gap:30px;align-items:end}h2{font-size:clamp(36px,4vw,55px);line-height:1.14;letter-spacing:-1.8px;margin:16px 0}.section-heading>p,.section-intro,.letter-section>div>p:not(.eyebrow){font-size:14px;line-height:1.9;color:var(--muted)}.gallery{max-width:1150px;margin:auto;columns:3;column-gap:25px}.memory{display:inline-block;width:100%;padding:11px 11px 17px;background:#fffdf8;margin:0 0 25px;border:0;cursor:pointer;box-shadow:0 3px 12px #403a320a;color:var(--ink);transition:transform .2s}.memory:hover{transform:translateY(-5px) rotate(-1deg)}.memory img{width:100%;height:auto;max-height:420px;object-fit:cover;display:block;image-orientation:from-image}.memory span{display:block;text-align:left;font:italic 17px Georgia;margin:17px 4px 0}.gallery-note{text-align:center;font:italic 16px Georgia;color:var(--muted);margin:30px 0 0}.moments{padding:90px 6%;max-width:1320px;margin:auto;text-align:center}.videos{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:45px;text-align:left}.videos figure{margin:0}.videos video{width:100%;height:350px;object-fit:contain;background:#302c29;border-radius:4px}.videos figcaption{font:italic 15px/1.8 Georgia;padding-top:12px}.videos a{display:block;font:10px Arial;color:var(--rose);margin-top:8px}.letter-section{background:#ebdbd3;padding:100px 9%;display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.envelope{position:relative;border:0;background:#f7eddf;width:100%;max-width:450px;height:270px;box-shadow:0 13px 30px #623f351a;transform:rotate(-4deg);cursor:pointer;justify-self:center;overflow:hidden;color:var(--rose);transition:transform .25s}.envelope:hover{transform:rotate(0) translateY(-4px)}.envelope-fold{position:absolute;inset:0;background:linear-gradient(32deg,transparent 49.7%,#e6d8c5 50%,transparent 50.4%),linear-gradient(-32deg,transparent 49.7%,#e6d8c5 50%,transparent 50.4%)}.seal{position:absolute;top:88px;left:calc(50% - 29px);background:var(--rose);color:#f5dfcc;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;font:32px Georgia}.envelope-name{position:absolute;bottom:60px;left:0;right:0;font:italic 23px Georgia}.open-label{position:absolute;bottom:26px;left:0;right:0;font:9px Arial;letter-spacing:2px}footer{text-align:center;padding:60px 20px}footer p{font:italic 19px Georgia;color:var(--muted)}footer div{font:30px Georgia;margin:25px}footer span{color:var(--rose)}footer small{color:var(--muted);font-size:10px;letter-spacing:1px}dialog{border:0;padding:25px;background:var(--paper);color:var(--ink);max-width:90vw;max-height:90vh;box-shadow:0 20px 100px #0004}dialog::backdrop{background:#29221cbb;backdrop-filter:blur(5px)}.close{position:absolute;right:12px;top:8px;background:var(--paper);border:0;border-radius:50%;width:36px;height:36px;font-size:28px;cursor:pointer;color:var(--ink)}#photo-modal img{display:block;max-width:80vw;max-height:75vh;object-fit:contain}#photo-modal p{text-align:center;font:italic 19px Georgia}#letter-modal{width:650px;padding:55px}#letter-modal h2{font-size:42px}.letter-body{font:18px/1.9 Georgia;color:var(--muted);margin:30px 0}.letter-signature{font:italic 18px/1.7 Georgia}.letter-signature span{font-size:29px;color:var(--rose)}@media(max-width:760px){header{padding:22px 6%}nav{gap:15px;font-size:10px}.wordmark{font-size:21px}.hero{grid-template-columns:1fr;padding:45px 7% 70px;gap:55px;min-height:0}h1{font-size:66px;letter-spacing:-3px}.hero-art{max-width:420px;width:100%;margin:auto;padding:25px 15px 50px}.polaroid img{height:360px}.top-note{font-size:19px}.doodle{right:-4px;font-size:65px}.section-heading{display:block}.gallery{columns:2;column-gap:14px}.memory{margin-bottom:14px;padding:8px}.memory span{font-size:14px;margin:12px 0 5px}.memories,.moments{padding:60px 6%}.videos{grid-template-columns:1fr;gap:30px}.videos video{height:360px}.letter-section{grid-template-columns:1fr;padding:60px 7%;gap:35px}.envelope{height:250px}.section-heading>p{margin-top:25px}#letter-modal{padding:45px 25px}.letter-body{font-size:16px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.our-flags{display:flex;align-items:center;gap:14px;margin-top:28px}.our-flags img,.footer-names img{object-fit:contain;box-shadow:0 2px 7px #403a3212;border-radius:2px}.our-flags span{font:italic 15px Georgia;color:var(--rose)}footer .footer-names{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}

.surprise-heading{font-size:clamp(48px,5.4vw,76px);letter-spacing:-2.5px}.surprise-message{font:italic 24px/1.5 Georgia,serif;color:var(--rose);margin:20px 0 24px}@media(max-width:760px){.surprise-heading{font-size:52px}.surprise-message{font-size:22px}}
